SBPLANEPROJECTOR(3iv)
π SbPlaneProjector(3IV) β plane projector π
okay so bestie, this is the SbPlaneProjector(3IV) page from the 3IV manual, and it's lowkey one of the cutest little projectors in the whole Inventor toolkit. sit down, grab a boba, we're projecting a mouse onto a plane and it's gonna be iconic π
π NAME π
SbPlaneProjector β plane projector. that's it, that's the whole vibe, she projects onto a plane and she does it beautifully β¨
πΈ INHERITS FROM πΈ
SbProjector > SbPlaneProjector
so yeah, she's a SbProjector at heart β she inherits all the projector energy from her parent class and then adds her own plane-flavored main character moments on top π«Ά
β¨ SYNOPSIS β¨
#include <Inventor/projectors/SbPlaneProjector.h>
Methods from class SbPlaneProjector:
SbPlaneProjector(SbBool orient = FALSE)
SbPlaneProjector(const SbPlane &plane, SbBool orient =
FALSE)
~SbPlaneProjector()
void setPlane(const SbPlane &plane)
const SbPlane & getPlane() const
void setOrientToEye(SbBool orientToEye)
SbBool isOrientToEye() const
virtual SbVec3f getVector(const SbVec2f &mousePosition1, const SbVec2f
&mousePosition2)
virtual SbVec3f getVector(const SbVec2f &mousePosition)
void setStartPosition(const SbVec2f &mousePosition)
void setStartPosition(const SbVec3f &point)
Methods from class SbProjector:
virtual SbVec3f project(const SbVec2f &point)
virtual void setViewVolume(const SbViewVolume &vol)
const SbViewVolume & getViewVolume() const
virtual void setWorkingSpace(const SbMatrix &space)
const SbMatrix & getWorkingSpace() const
virtual SbProjector * copy() const
π DESCRIPTION π
SbPlaneProjector projects the mouse onto a plane. that's the whole job bestie, and she's obsessed with it π
this is typically used to write interactive 3D manipulators and viewers. so like, when you drag something around in a 3D scene and it just knows where your mouse is pointing β yeah, that's this girl working behind the scenes β¨
π₯ METHODS π₯
π¦ SbPlaneProjector(SbBool orient = FALSE)
Constructor. the default plane passes through the origin and is oriented perpendicular to the Z axis. so if you just roll up with no arguments, you get the classic, the standard, the default serve π
π¦ SbPlaneProjector(const SbPlane &plane, SbBool orient = FALSE)
Constructor which is passed a plane. if orient to eye is TRUE, the plane will be reoriented to the eye ποΈβ¨
π¦ ~SbPlaneProjector()
Destructor. she said bye bestie, clean up after yourself π
π¦ void setPlane(const SbPlane &plane) / const SbPlane & getPlane() const
Set and get the plane to use. simple as that, no notes π
π¦ void setOrientToEye(SbBool orientToEye) / SbBool isOrientToEye() const
Set and get whether the projector should be oriented towards the eye. if orientToEye is set to TRUE, the given plane's direction is ignored, and the plane will be oriented to the eye. it will pass through the same point from the origin defined by the original dir * dist. set to FALSE if the plane's direction should remain in working space. so like, TRUE = eye-coded, FALSE = working-space-coded, pick your fighter π
π¦ virtual SbVec3f getVector(const SbVec2f &mousePosition1, const SbVec2f &mousePosition2)
Get a vector on this plane given two normalized mouse positions. two points, one vector, math is serving πΈ
π¦ virtual SbVec3f getVector(const SbVec2f &mousePosition)
Get a vector given the current mouse point. uses the last point on this projector from the previous call to getVector() or setStartPostion().
β οΈ do not use this if the working space transform is changing since the new point will be in a different space than the old one. fr fr, that's not a vibe, that's a bug waiting to happen π
π¦ void setStartPosition(const SbVec2f &mousePosition)
Set the initial mouse position. gotta have a starting point, it's giving origin story β¨
π¦ void setStartPosition(const SbVec3f &point)
Set the initial position from a point on the projector. now she's anchored in 3D and she's thriving π«Ά
π SEE ALSO π
SbCylinderProjectorSbCylinderPlaneProjectorSbCylinderSectionProjectorSbCylinderSheetProjectorSbLineProjectorSbSpherePlaneProjectorSbSphereProjectorSbSphereSectionProjectorSbSphereSheetProjector
the whole projector friend group honestly, they all hang out, they all slay π
and that's the page bestie!! the footer at the bottom just echoes SbPlaneProjector(3IV)() right back at you β same title, same manual, and the date slot is just sitting there empty like it's too cool to commit π but the source is the 3IV manual and the name is SbPlaneProjector(3IV), so you know exactly where this came from. periodt π
β¨π
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms