![]() |
Canvas-Polygon
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Zurzeit ist in der Schule unsere Aufgabe, etwas mit Canvas und Polygon selst zu entwickeln. eine Art Logo oder so etwas... Ich habe mithilfe Anderer jetzt ein Programm geschrieben, das per ImageClick das Logo darstellt. Hierbei habe ich mit CreateTriangle und CreateRectangle gearbeitet. Jetzt ist meine Frage, ob ich das ganze "Logo" skalierbar machen kann, bzw. die Größe während das Programm läuft veränderbar machen kann... evtl durch angegebene Spinedits. Das Project ist angehängt! |
Re: Canvas-Polygon
Ja das kannst du !
Dazu müsstest du wie folgt vorgehen: -> Definiere dir einen Mittelpunkt(des Logos) als TPoint -> Alle anderen Werte ala Eckpunkte der Triangles usw. Sind nun abhängig von diesem Punkt -> Eine Längenvariable definieren ! zb Lange = 100; Konkret würde das so aussehen: Triangle links: Eckpunkt rechts oben = Mittelpunkt X - Lange ^ Mittelpunk Y - Lange Eckpunkt rechts unten = Mittelpunkt X - Lange ^ Mittelpunkt Y + Lange Eckpunkt links mitte = Mittelpunkt X - Lange*2 ^ Mittelpunkt Y ... so in etwa .. denn somit wären die Punkte abhängig von der Lange ! MfG |
Re: Canvas-Polygon
Wie setze ich einen Mittelpunkt fest?
Ist die variable "lange" eine feste zahl oder die zahl in einem Spinedit? |
Re: Canvas-Polygon
du deklarierst dir zwei Variablen:
Mittelpunkt: TPoint und Lange: Integer; Nun setzt du im FormCreate den Mittelpunkt auf die Mitte des Formes ! (schau dir dazu die ClientWidth & ClientHeight Eigenschaften der Form an) Anschließend Lange setzen ! Ich würd im FormCreate die Länge auf ~80 setzen Nachher kannst du ja beim ändern des Spinedits sein Value der Länge zuweisen. MfG |
Re: Canvas-Polygon
Kann ich den Mittelpunkt im mittelpunkt des images festlegen, damit es sich an der Form des Images orientiert=?
|
Re: Canvas-Polygon
Kannst du ! Du kannst eig. alles mit Delphi !
Also frag nächstes mal nicht, ob du es kannst, sondern, wie du es schaffst ! ;) Also Mitte von Image = (X) Image-Left + Image-Width div 2 und (Y) Image-Top + Image-Height div 2 Falls du das natürlich auf dem Image haben willst, dann vergiss nicht, auf dem Canvas der Image zu zeichnen ! (Image.canvas...) |
Re: Canvas-Polygon
Sry, aber ich habe es jetzt längere Zeit versucht, aber iwie funktioniert es net. :wall:
Könntest du mir evtl. den Quellcode zum definieren des Mittelpunktes und der Länge und zum Einbringen der beiden Variablen in den übrigen Quelltext zeigen? mfG |
Re: Canvas-Polygon
Delphi-Quellcode:
PS: Zeig mal her, was du schon soweit selbst geschafft hast !
TForm1...
public .... MittelPunkt: TPoint; Lange: Integer; .... end .. ... // formcreate: MittelPunkt := Point( 200, 200 ); Lange := 100; |
Re: Canvas-Polygon
Mein großes Problem ist, dass ich nicht weiß, wie ich diese beiden Variablen in das
Delphi-Quellcode:
einbringe.... :wiejetzt:
CreateTriangle( Dreieck, Point( 100, 100), Point( 150, 50 ), Point( 200 , 100 ));
|
Re: Canvas-Polygon
Zitat:
Delphi-Quellcode:
(das ist jetzt einfach nur iwie .. du müsstest hast die Werte absolut auf den Mittelpunkt definieren :)
CreateTriangle( Dreieck, Point( Mittelpunkt.X-100, Mittelpunk.Y*100), Point( Mittelpunkt.X+150, MittelPunkt.Y-50 ), Point( Mittelpunk.X + 2*200 , -Mittelpunk.Y + 100 ));
Also wären die XY Koordinaten des linken Dreiecks = X & Y = links von Mittelpunkt Rechter Eckpunkt 1 = oben, 2 = unten linker Eckpunkt = selbe höhe, links .. MfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz