Delphi-PRAXiS :: Das Forum für Fragen zu Delphi
Das Experten Forum für Delphi Programmierer
Hilfe für Borland Delphi gibts es hier im Forum
Delphi Quelltexte und Source Codes
 
Winter 2008 - lieben Dank an Julius für ds Bild
Delphi-PRAXiS :: Foren-ÜbersichtForen-Übersicht Delphi-PRAXiS Modul-ÜbersichtSite-Map Delphi-PRAXiS durchsuchenSuchen Delphi-PRAXiS Code-LibraryCode-Library Jetzt registrieren!Registrieren Login  
   
 
0
 
Delphi für Win32
Mathematische Frage: Punkt auf Kreislinie finden…
Ein Delphi (Win32)-Thema von erich.wanker.

Vorheriges Thema anzeigen  |  Nächstes Thema anzeigen
Neuen Beitrag schreiben Auf Beitrag antworten
als PDF-Datei herunterladenThema ausdrucken
 
Delphi-PRAXiS Forum - Übersicht -> Sonstige Fragen zu Delphi
Seite 1 von 1   [ 3 Beiträge ]  
 
 Autor 
 Nachricht 
 
erich.wanker #1|Beitrag #933273Verfasst am: 29.08.2008, 13:48      Titel: Mathematische Frage: Punkt auf Kreislinie finden… Antworten mit Zitat
Mitglied
Status: offline
Beiträge: 20
angemeldet: 31.01.2008
Delphi 7 Professional

Sprache: Delphi (Win32)

Hallo Leute,

Ich will Labels untereinander darstellen. Die sollen aber nicht linksbündig untereinander stehen, sondern einen Kreisausschnitt bilden.

Ich geh mal davon aus, das der oberste punkt auf einem Kreis den Winkel 0 hat..

Mittelpunkt des Kreises: 100 / 300
Radius: 200 Pixel
Winkelschritte: 10 Grad
Start bei 10 Grad ( ca. 2 Minuten nach zwölf Uhr Wink )
Anzahl Labels 10 Stk.


Irgendwie schaff ich´s nicht

Im rechtwinkligen Dreieck:
Ich hab den Winkel Alpha, Die Hypotenuse ist der Radius und gesucht sind die 2 Katheten

Hoffe, es kann mir jemand helfen..

Vielen Dank
Erich

----------------------------------------------------

// kleiner Blindtext…//

uses math...

procedure TForm1.SpeedButton1Click(Sender: TObject);
Var
My_label: array [0..9] of tlabel;

Winkelschritte,
Startwinkel,
Kreis_x,
Kreis_y,
Kreisradius,
Aktueller_Winkel: Integer;

i:Integer;

x,y:Integer;

begin

// init..
Label1:=my_label[0];
Label2:=my_label[1];
Label3:=my_label[2];
Label4:=my_label[3];
Label5:=my_label[4];
Label6:=my_label[5];
Label7:=my_label[6];
Label8:=my_label[7];
Label9:=my_label[8];
Label10:=my_label[9];

Winkelschritte:=10;
Startwinkel:=10;
Kreis_x:=300;
Kreis_y:=300;
Kreisradius:=200;
Aktueller_Winkel:=0;


For i:= 0 to 9 do
Begin

Aktueller_Winkel:=Startwinkel+(Winkelschritte*i);

// HIER GEHT´S LOS !! //
X:=Kreis_x+ Trunc((sin (Aktueller_Winkel)) * Kreisradius);
Y:=Kreis_y+ Trunc((cos (Aktueller_Winkel)) * Kreisradius);


// HIER ENDET´S !! //
my_label[i].left:= x;
my_label[i].top:= y;

End; // for i
End; //procedure

end.
nach oben nach unten
Benutzer-Profile anzeigen Private Nachricht senden
Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen im Forum zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Google zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Wikipedia zu suchen.
 
 
inherited #2|Beitrag #933307Verfasst am: 29.08.2008, 15:28      Titel: Re: Mathematische Frage: Punkt auf Kreislinie finden… Antworten mit Zitat
"Rüsselmops" ;-)
Alter: 17
Beiträge: 1.846
angemeldet: 19.12.2005
Wohnort: Rosdorf
Turbo Delphi für Win32

Vermutlich ist das problem, dass sin und cos Bogemaß als Parameter erwartet und nicht Winkel. Du musst den Winkel zuerst mit DegToRad() in Bogenmaß umrechnen

Corky
SWIM SWIM HUNGRY!
Neuer Blog: hier!
nach oben nach unten
Benutzer-Profile anzeigen Private Nachricht senden
Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen im Forum zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Google zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Wikipedia zu suchen.
 
 
erich.wanker #3|Beitrag #933332Verfasst am: 29.08.2008, 16:35      Titel: Re: Mathematische Frage: Punkt auf Kreislinie finden… Antworten mit Zitat
Mitglied
Status: offline
Beiträge: 20
angemeldet: 31.01.2008
Delphi 7 Professional

Yeppp .. das war´s , danke !

X:=Kreis_x+Trunc((sin (DegToRad(Aktueller_Winkel) )) * Kreisradius);
Y:=Kreis_y+Trunc((cos (DegToRad(Aktueller_Winkel) )) * Kreisradius);

....

vielen Dank

Erich
nach oben nach unten
Benutzer-Profile anzeigen Private Nachricht senden
Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen im Forum zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Google zu suchen. Markiere Begriffe im Text und klicke auf diesen Button, um nach zusätzlichen Informationen bei Wikipedia zu suchen.
 
Anzeige-Optionen:    
 
Delphi-PRAXiS Forum - Übersicht -> Sonstige Fragen zu Delphi Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1   [ 3 Beiträge ]  
 
  Neuen Beitrag schreiben Auf Beitrag antworten
als PDF-Datei herunterladenThema ausdrucken
 
   
Gehe zu:  
Du darfst keine Beiträge in dieses Forum schreiben.
Du darfst auf Beiträge in diesem Forum nicht antworten.
Du darfst Deine Beiträge in diesem Forum nicht bearbeiten.
Du darfst Deine Beiträge in diesem Forum nicht löschen.
Du darfst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten.
Du kannst Dateien in diesem Forum nicht herunterladen.


Impressum / Kontakt
Allgemeine Geschäftsbedingungen
Verhaltenskodex & FAQ

Delphi-PRAXiS :: Das Forum für Delphi-Programmierer
Das Experten Forum für Delphi ProgrammiererHilfe für Borland Delphi gibts es hier im ForumDelphi Quelltexte und Source CodesDelphi-PRAXiS :: Das Forum für DelphiWindows APIInternet und NetzwerkeVCL und Datenbanken
 

Delphi-PRAXiS V.2005 III
© 2002-2008 by Daniel R. Wolf
powered by phpBB © phpBB Group

Impressum / Kontakt Allgemeine Geschäftsbedingungen