![]() |
GLscene Cube Fläche auslesen
Kann man wenn ein Würfel auswählt ist auch gleich mit auslesen welche Fläche man angeklickt hat ob nun die Linke oder die rechte Seite. Anzeigen ist ja recht einfach:
Code:
Jetzt fehlt nur noch das Auslesen de Würfel Seite:thumb: Vieleicht habt ihr ja eine Idee
pick := (GLSceneViewer1.Buffer.GetPickedObject(X, Y) as TGLCustomSceneObject);
Danke schonmal im Vorraus. |
AW: GLscene Cube Fläche auslesen
Hat keiner eine Idee?
|
AW: GLscene Cube Fläche auslesen
Soweit ich weiß, geht das nicht, da das GL_SELECT nur die Primitiven liefert, die im Bereich gerendert werden, aber nicht welcher Teil der Primitive.
|
AW: GLscene Cube Fläche auslesen
GLScene ist dafür nicht die richtige Bibliothek
![]()
Delphi-Quellcode:
pick := (GLSceneViewer1.Buffer.GetPickedObject(X, Y) as TGLCustomSceneObject);
Kann nicht gehen du hast nur 2 Koordinaten es fehlt die der Tiefe also Z.. Deine Abfrage ist also auf 2D nicht 3D ausgelegt. ![]() gruss |
AW: GLscene Cube Fläche auslesen
Zitat:
Zitat:
Allerdings wird nur auf ganze Primitiven (Plane, Sphere, Cube, Mesh...) aufgelöst und nicht auf einzelne Teilflächen davon. Würde man den Cube durch 6 Planes darstellen, könnte man auch die korrekte Fläche erkennen. Es ist also kein Manko der Bibliothek, sondern eine Sache des Aufbaus der Szene durch Primitive. Wenn ich die Flächen eines Cubes unterscheiden will, dann darf ich eben keinen Cube nehmen, sondern muss die Flächen einzeln rendern. Ach ja, GLScene bietet auch ein RayCastIntersect für seine Scene-Objects. Würde aber hier auch nichts helfen, da auch die objekt-basiert ist. Allerdings könnte man anhand der Koordinaten des Intersection-Points auf die getroffene Fläche schließen. Ist aber alles andere als trivial. |
AW: GLscene Cube Fläche auslesen
Zitat:
Denke ich auch ;) Habe das bei meinem Winamp Plugin gemerkt als ich NUR 2D Objekte die sich drehen über Picking zu identifizieren. Für Anfänger in Sachen OpenGL btw.. GLScene nicht gerade einfach zu realisieren. Zitat:
Er muss dafür also ausweichen. gruss |
AW: GLscene Cube Fläche auslesen
Hallo,
wenn es nicht umbedingt ein TGLCube sein muss, kann man sich vielleicht damit helfen indem man sich mit einen TGLDummyCube und entsprechend vielen TGLPlanes eine Würfel zusammenbaut. Gruß |
AW: GLscene Cube Fläche auslesen
Moin erstmal Vielen Dank an die ganzen Antworten.
Es muss nicht unbedingt ein Cube sein letzendlich sollen diese Cubes ausgetauscht werden zu STL FIles (weiß leider gerade nicht wie die Komponente heißt). Alles der Cube muss es nicht sein! Mit den einzelnen Planes hatte ich auch schon überlegt jedoch ist das schwierig wenn man meherere Blöcke während der Runtime erstellt. Viele können sich bestimmt schon denken was ich vor habe: Minecraft Clone mit GLscene. Vieleicht gibt es aber noch eine andere Möglichkeit die mir nur nicht bekannt ist. Mit den einzelnen Planes wird mir zu unübersichtlich vor allem wenn ich dann später die Planes alle wieder laden möchte. Danke aber trotzdem schonmal. |
AW: GLscene Cube Fläche auslesen
Vieleicht noch jemand Ideen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:24 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