SbPlane(3IV)
SbPlane (SbPln) - oriented plane in 3D
As shipped in IRIX 6.5.30. Added in IRIX 6.5.22.
NAME SbPlane (SbPln) - oriented plane in 3D INHERITS FROM SbPlane SYNOPSIS #include <Inventor_c/SbLinear.h> typedef SbPlane SbPln Functions from class SbPlane: void SbPlnOffset(SbPln *this, float d) SbBool SbPlnIntersect(const SbPln *this, const SbLine *l, SbVec3f *intersection) void SbPlnTransform(SbPln *this, const SbMatrix *matrix) SbBool SbPlnIsInHalfSpace(const SbPln *this, const SbVec3f *point) int SbPlnIsEq(SbPln *this, const SbPlane *p1, const SbPlane *p2) int SbPlnIsNEq(SbPln *this, const SbPlane *p1, const SbPlane *p2) DESCRIPTION Represents an oriented plane in 3D. This is a lightweight class/datatype that is used for arguments to some Inventor objects. Note that there are no Create or Delete functions available for this class. SbPlane's should be declared and/or malloc'd as standard C structs: /* This is defined in Inventor_c/SbLinear.h: */ struct SbPlane { struct SbVec3f normalVec; float distance; }; typedef SbPlane SbPln; /* This is what your code should look like: */ SbPlane p; SbV3fSetX_Y_Z( p.normalVec, 1.0, 0.0, 0.0 ); p.distance = 3.0; FUNCTIONS void SbPlnOffset(SbPln *this, float d) Offset a plane by a given distance. SbBool SbPlnIntersect(const SbPln *this, const SbLine *l, SbVec3f *intersection) Intersect line and plane, returning TRUE if there is an intersection, FALSE if line is parallel to plane. void SbPlnTransform(SbPln *this, const SbMatrix *matrix) Transforms the plane by the given matrix. SbBool SbPlnIsInHalfSpace(const SbPln *this, const SbVec3f *point) Returns TRUE if the given point is within the half-space defined by the plane. int SbPlnIsEq(SbPln *this, const SbPlane *p1, const SbPlane *p2) int SbPlnIsNEq(SbPln *this, const SbPlane *p1, const SbPlane *p2) Equality/inequality comparison operators. FILE FORMAT/DEFAULTS Plane { } SEE ALSO SbVec3f, SbLine