De/VPlane: Difference between revisions
< De
Jump to navigation
Jump to search
m (- changed links to :lang suffix redirect pages to the redirected link) |
|
(No difference)
| |
Revision as of 14:48, 10 July 2024
VPlane ist eine C++-Klasse, die eine andlose 2-dimensionale Oberfläche repräsentiert.
Jede VPlane enthält einen normalisierten Vector, der die Richtung (m_Normal) bestimmt und einen vec_t, der die Distanz zum aktuellen Ursprung (m_Dist) bestimmt.
m_Dist kann auch negativ sein.Memberfunktionen
vec_t DistTo(Vector point)- Die distanz zwischen dem gegebenen Punkt und seinem nächsten Punkt auf der Ebene. Positiv, wenn auf der Vorderseite, Negativ auf der Rückseite.
SideType GetPointSide(Vector point, vec_t epsilon = 0.01f)- Führt ein
DistTo()aus und wertet das Ergebnis aus. der Optionale epsilon-Wert bestimmt eine unsigned-Schwelle, innerhalb derer der zurückgelieferte Wert alsSIDE_ONbetrachtet wird. SideTypeist eine redifinierter int, der definierte (#define) Werte vonSIDE_FRONT,SIDE_BACKundSIDE_ONhat.SideType GetPointSideExact(Vector point)- Wie oben, nur ohne epsilon und der Annahme, dass 0 hinter der Ebene liegt.
VPlane Flip()- Liefert eine neue VPlane, deren
m_Distundm_Normalinvertiert sind. Ändert nicht die Werte der gegebenen VPlane (aberthis = Flip()würde es). Vector GetPointOnPlane()- Liefert den Punkt, der am nahesten zum aktuellen Ursprung liegt.
Vector SnapPointToPlane(const Vector &point)- Liefert einen neuen Vektor, der den nahesten Punkt auf der Ebene zum gegebenen vektor darstellt.
