Entwickler-Ecke
Multimedia / Grafik - Kreis zeichnen bei dem Radien eingezeichnet werden
Battery - Fr 19.05.06 17:43
Titel: Kreis zeichnen bei dem Radien eingezeichnet werden
Hallo
Wir sollen von der Schule aus einen Kreis zeichnen, bei dem die Radien in einer Schleife eingezeichnet werden. HAb hier mal nen Ansatz, komm aber net weiter:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| procedure TForm1.Button1Click(Sender: TObject); var
i,mitte_x,mitte_y, grad,bogen,x,y :integer; begin mitte_x:=clientwidth div 2; Mitte_y:= clientheight div 2; canvas.ellipse(clientwidth div 2 - 200,clientheight div 2-200, clientwidth div 2 +200, clientheight div 2 +200); grad:=1; for i:=1 to 60 do begin bogen:=round(grad/360*2*pi); y:=round (sin(bogen)*200); x:=round(Exp(Ln(200*200-y*y) / 2)); canvas.MoveTo(mitte_x, mitte_y); canvas.lineto(mitte_x+x,mitte_y-y); grad:=grad+6; end;
end;
end. |
hoffe ihr könnt helfen...
Battery
der Berliner - Fr 19.05.06 18:03
Hallo
Was soll da am Ende enstehen ne Tortengrafik ?
ich versteh nich was du mit radien einzeichnen meinst.
erklär das doch nochmal genauer. oder poste mal die Aufgabe.
gruß
Battery - Sa 20.05.06 17:58
ja genau im endeffekt eine torten grafik
der Berliner - Sa 20.05.06 18:02
Naja ..Wo kommst du denn jetzt nicht weiter?
Wenn mann das Prog startet hat man doch ne Tortengrafik. Also was Funktioniert denn nicht?
gruß
Battery - So 21.05.06 22:51
naja also bei mir is die torten grafik net so schön gleichmäßig.....
die sollte schon so sein das alle stücker dasselbe bogenmaß haben
aim65 - So 21.05.06 23:35
Du hast mit Integern an den falschen Stellen gerechnet. Da kriegst du nie die richtigen Werte.
Ändere mal das hier:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| .. i,mitte_x,mitte_y,x,y :integer; grad,bogen: Real; begin mitte_x:=clientwidth div 2; Mitte_y:= clientheight div 2; canvas.ellipse(clientwidth div 2 - 200,clientheight div 2-200, clientwidth div 2 +200, clientheight div 2 +200); grad:=0; for i:=1 to 60 do begin bogen:=2*pi*grad/360; y:=round(sin(bogen)*200); x:=round(cos(bogen)*200); canvas.MoveTo(mitte_x, mitte_y); canvas.lineto(mitte_x+x,mitte_y-y); grad:=grad+6; end; |
Battery - Di 23.05.06 17:40
genau so funktioniert es :roll:
danke für die hilfe
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!