Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Canvas.DrawPoint (https://www.delphipraxis.net/31572-canvas-drawpoint.html)

2kstealth 11. Okt 2004 12:32


Canvas.DrawPoint
 
Hallo erstmal,

Ich muss für die Schule ein Programm schreiben mit dem ein Schräger wurf eingezeichnet wird.
Ich komme mit der Formel hierfür langsam auch sehr gut zurecht, nur es gibt ein Problem.

Wenn ich nun versuche die einzelnen Punkte der Parabel einzuzeichnen würde ich gerne die
Funktion von Canvas benutzen die DrawPoint heißt. Ich habe die Unit QGraphics schon eingebunden,
aber DrawPoint wird immernoch als nicht bekannt als Fehler ausgegeben. :wall:

Kann mir vielleicht einer verraten welche Unit ich einbinden muss? :wiejetzt:

Vielen Dank schonmal im Vorraus

Steve 11. Okt 2004 12:45

Re: Canvas.DrawPoint
 
QGraphics ist nicht VCL, sondern CLX.. in TCanvas der VCL gibt es kein DrawPoint, schau Dir stattdessen mal [oh]MoveTo(), LineTo()[/oh] an :)

Gruß
Stephan :dance:

Matze 11. Okt 2004 12:47

Re: Canvas.DrawPoint
 
Für einzelne Pixel geht auch

Delphi-Quellcode:
Canvas.Pixels[x, y] := clBlack;

Nachtrag: Herzlich willkommen in der DP! :party:

fkerber 11. Okt 2004 12:49

Re: Canvas.DrawPoint
 
Hi!

Warum QGraphics?

Ciao Frederic

Matze 11. Okt 2004 12:53

Re: Canvas.DrawPoint
 
Zitat:

Zitat von fkerber
Warum QGraphics?

Warum, weiß ich nicht, hier steht nur:

Zitat:

Zitat von www.elists.org
So, TBitmap is actually Graphics.TBitmap in VCL and QGraphics.TBitmap in CLX.


2kstealth 11. Okt 2004 13:22

Re: Canvas.DrawPoint
 
Danke für die Schnellen Tips!

Also mit MoveTo und LineTo habe ich schon mein Koordinatensystem gebaut.
Das Problem ist nur, wenn ich jetzt damit eine Parabel einzeichnen will,
macht diese keinen Sinn.
Ich will ja nicht immer 2 Pixel "anmalen", sondern Eigentlich nur einen.

Deswegen werde ich es mal mit der Idee von Matze probieren.

Vielen Danke nochmal an alle


MfG StEaLtH

P.S.: Die Funktion Canvas gehört nach Delphi Hilfe in die Unit, und ich habe deswegen gedacht das würde die Lösung bringen!

alcaeus 11. Okt 2004 13:31

Re: Canvas.DrawPoint
 
Hi 2kstealth,

Zitat:

Zitat von 2kstealth
Das Problem ist nur, wenn ich jetzt damit eine Parabel einzeichnen will,
macht diese keinen Sinn.
Ich will ja nicht immer 2 Pixel "anmalen", sondern Eigentlich nur einen.

Was meinst du damit? Du musst mit MoveTo an den Ursprung der Parabel springen, und anschließend mit LineTo immer zum nächsten Punkt springen. Dabei wird die Linie gezeichnet und die neue Position gesetzt.
Zur Verdeutlichung ein Beispiel:

Delphi-Quellcode:
Canvas.MoveTo(0,0);
for i := 1 to ... do
begin
  //Neue Koordinaten in x und y schreiben
  Canvas.LineTo(x, y);
end;
Und schon hast du eine schöne Parabel (wenn du auch die Koordinaten richtig berechnest ;))

Greetz
alcaeus

2kstealth 11. Okt 2004 14:45

Re: Canvas.DrawPoint
 
THX,

Danke nochmal an den letzten Poster!

der Thread kann von mir auch auch dicht gemacht werden...

Ihr habt mir wirklich geholfen und vielen dank!

CU StEaLtH :thumb:

Luckie 12. Nov 2004 16:24

Re: Canvas.DrawPoint
 
Tipp: Delphi-Referenz durchsuchencanvas.Polygon ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz