Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Firemonkey: Wie erstellt man ein 3D Polygon? (https://www.delphipraxis.net/185134-firemonkey-wie-erstellt-man-ein-3d-polygon.html)

Harry Stahl 20. Mai 2015 20:33

AW: Firemonkey: Wie erstellt man ein 3D Polygon?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also mit dem ARC-Kommando würde ich zwei Halbkreise zeichnen können. Folgende Pathdaten ergeben z.B. ein Rechteck, darin ein Kreis:

Delphi-Quellcode:
M230,227 a1,1,0,0,1,140,140 M230,227 a1,1,0,0,0,140,140 // Der Kreis
M198,198 L399,198 L399,399 L198,399 L198,198 // Das Quadrat
Sie auch anliegenden Screenshot.

I.d.R. wäre es ja am einfachsten, man geht von den Daten des Quadrats aus und transformiert diese in die Daten, die man mit der ARC-Function verwenden muss.

Diese Transformation macht mir gerade Schwierigkeiten, ich finde einfach nicht raus, wie das zu machen wäre (die Beispiel-Daten habe ich nur per "trial and error" rausgefunden).

Maiky 23. Mai 2015 16:51

AW: Firemonkey: Wie erstellt man ein 3D Polygon?
 
Zitat:

Zitat von Harry Stahl (Beitrag 1302360)
Zitat:

Zitat von Maiky (Beitrag 1302152)
Eine Frage hätte ich dann noch zur Farbe. Kann man eigentlich irgendwo umschalten zwischen ausgefüllt und als Wireframe-Darstellung? So, dass man nur die Linien sieht?

Ich hatte im Demo ja verschiedene ColorMaterialSources für die die entsprechenden Eigenschaften (Back, Shaft, Front) verwendet. Wenn Du die wieder auf NIL setzt, könntest Du alternativ testen, ob Du mit TextureMaterialsource so eine Art Gitternetz als Texture laden kannst und das Deinen Vorstellungen entspricht.

Ich meinte es mehr so wie ein normales Polygon, welches eben nicht ausgefüllt ist. Also man sieht nur die Linien zwischen den Punkten. :)

Harry Stahl 25. Mai 2015 12:02

AW: Firemonkey: Wie erstellt man ein 3D Polygon?
 
Wenn man nur das Gitter anzeigen will, dann denke ich, dass man hier das TMesh nutzen muss, was dann aber schon deutlich komplizierter zu handeln ist. Bei einer TPath3D Komponente ist mir jedenfalls keine Möglichkeit bekannt, das so wie von Dir gewünscht hin zu bekommen.

Maiky 25. Mai 2015 13:19

AW: Firemonkey: Wie erstellt man ein 3D Polygon?
 
Ich hatte eigentlich nur gehofft dass es TPath3D auch ohne "ausfüllen" möglich ist. Ich benötige es ausgefüllt, aber auch als Linienversion. Dann muss ich wohl einfach es als Linien zeichnen. ;)

Ich möchte Scheiben/Schnitte hintereiannder packen und immer eines davon soll ausgefüllt sein und der Rest nur als "Rahmen" angezeigt.

Harry Stahl 4. Jun 2015 17:45

AW: Firemonkey: Wie erstellt man ein 3D Polygon?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Maiky (Beitrag 1302152)
Es handelt sich vermutlich um dies: http://www.w3schools.com/svg/svg_path.asp
The following commands are available for path data:

M = moveto
L = lineto
H = horizontal lineto
V = vertical lineto
C = curveto
S = smooth curveto
Q = quadratic Bézier curve
T = smooth quadratic Bézier curveto
A = elliptical Arc
Z = closepath


Also, wenn man das alles manuell eingeben / berechnen muss, erscheint das ein wenig kompliziert. Habe daher mein PixPower Programm jetzt erweitert (Beta), so dass man Formen wie Linie, Dreieck, Rechteck, Kreis, Elipse einfach im Programm zeichnen kann und das Programm liefert dann die Path-Data-Werte zurück.

So könnte man z.B. sich selber auch Path-Icons zeichnen und die in Buttons oder anderen Grafik-Elementen verwenden. Also als Alternative zum Multires-Bitmap, wo man die verschiedenen Auflösungen bereit halten muss.

Habe dazu auch mal ein kleines Video auf YouTube hinterlegt:

http://youtu.be/bIYV8atNhqA


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:16 Uhr.
Seite 2 von 2     12   

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