PickedVertex
Übersicht

![]() |
The_NiciBetreff: PickedVertex |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo,
ich habe von www.blitzbasic.com folgende Funktion: Code: [AUSKLAPPEN] Function PickedVertex() mesh = PickedEntity() surf = PickedSurface() tri = PickedTriangle() px# = PickedX() py# = PickedY() pz# = PickedZ() v0 = TriangleVertex(surf,tri,0) v1 = TriangleVertex(surf,tri,1) v2 = TriangleVertex(surf,tri,2) TFormPoint VertexX(surf,v0),VertexY(surf,v0),VertexZ(surf,v0),mesh,0 dx# = TFormedX - px dy# = TFormedY - py dz# = TFormedZ - pz v0d# = dx*dx + dy*dy + dz*dz TFormPoint VertexX(surf,v1),VertexY(surf,v1),VertexZ(surf,v1),mesh,0 dx# = TFormedX - px dy# = TFormedY - py dz# = TFormedZ - pz v1d# = dx*dx + dy*dy + dz*dz TFormPoint VertexX(surf,v2),VertexY(surf,v2),VertexZ(surf,v2),mesh,0 dx# = TFormedX - px dy# = TFormedY - py dz# = TFormedZ - pz v2d# = dx*dx + dy*dy + dz*dz If (v0d < v1d) And (v0d < v2d) Then Return v0 If (v1d < v0d) And (v1d < v2d) Then Return v1 Return v2 End Function Nun, da ich sie brauche habe ich sie bei mir eingebaut. Jedoch gibts ein MAV weil mesh und surf 0 sind. Das Mesh hat Entitypickmode 2 und camerapick wurde vorher ausgeführt. Warum funktionierts nicht, wenn ich auf das Mesh klicke? |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
so grob würde ich mal vermuten, dass "mesh" und "surf" nicht global sind, den du übergibst diese auch nicht an die Funktion, deshalb sind sie in der Funktion nicht verfügbar | ||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum sollten sie auch Global sein? Sie werden ja in der Funktion festgelegt. | ||
![]() |
Noobody |
![]() Antworten mit Zitat ![]() |
---|---|---|
The_Nici hat Folgendes geschrieben: Warum funktionierts nicht, wenn ich auf das Mesh klicke?
The_Nici hat Folgendes geschrieben: ...weil mesh und surf 0 sind.
Nun müsstest du dich fragen, warum das so ist. Lass dir einfach mal Debugweise PickedEntity() ausgeben (ohne PickedVertex auszuführen) und prüfe, ob irgendwas mit deiner Pickroutine falsch ist, denn mit diesem Code können wir nun nicht viel anfangen (da er ja aus einem Codearchiv übernommen ist und funktionieren muss). |
||
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
ich hab mal Camerapick global gemacht und am ende noch Text 0,0,pick eingefügt, jetzt funktionierts irgendwie. Oo Nächstes problem: ich platziere zum gepickten Vertex einen Cube, mit VertexX(), jedoch kommt da was völlig falsches raus. Warum? Beim Verschieben gehts dann wieder richtig. |
||
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
VertexX ist relativ zu den MeshKoordinaten von dem Mesh, dessen Surface der Vertex angehört, oder?
mfG, Christoph. |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: Die Funktion VertexX liefert die X-Koordinate eines Vertexpunktes zurück. Diese Koordinate beschreibt die Position des Vertexpunktes von Objektmitte
Jop Lösung: VertexX(...)+EntityX(...) VertexY(...)+EntityY(...) VertexZ(...)+EntityZ(...) |
||
Warbseite |
![]() |
The_Nici |
![]() Antworten mit Zitat ![]() |
---|---|---|
Erfolgslos.
Cubes sind immernoch gleich verschoben. |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nutze
TFormPoint VertexX(surf,v2),VertexY(surf,v2),VertexZ(surf,v2),mesh,0 Aus deinem Code. |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group