15#ifndef OSGMANIPULATOR_PROJECTOR
16#define OSGMANIPULATOR_PROJECTOR 1
211 float radialFactor = 0.0f)
const;
Matrixd Matrix
Definition Matrix:27
The osgManipulator library is a NodeKit that extends the core scene graph to support 3D interactive m...
Definition AntiSquish:23
Vec3d vec_type
Definition LineSegment:28
A plane class.
Definition Plane:34
A quaternion class.
Definition Quat:30
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
Base class for providing reference counted objects.
Definition Referenced:44
const Quat & getRotation() const
Definition Shape:345
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
const osg::Matrix & getWorldToLocal() const
Gets the matrix for transforming the world/object coordinate system to the command's local coordinate...
Definition Projector:65
const osg::Matrix & getLocalToWorld() const
Gets the matrix for transforming the projector's local coordinate system to the world/object coordina...
Definition Projector:59
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const =0
Calculates the object/world coordinates (projectedPoint) of a window coordinate (pointToProject) when...
bool _worldToLocalDirty
Definition Projector:82
void setLocalToWorld(const osg::Matrix &localToWorld)
Sets the matrix for transforming the projector's local coordinate system to the world/object coordina...
Definition Projector:49
osg::Matrix _worldToLocal
Definition Projector:80
osg::Matrix _localToWorld
Definition Projector:79
osg::ref_ptr< osg::LineSegment > _line
Definition Projector:116
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
const osg::LineSegment::vec_type & getLineEnd() const
Definition Projector:102
osg::LineSegment::vec_type & getLineStart()
Definition Projector:100
const osg::LineSegment::vec_type & getLineStart() const
Definition Projector:99
void setLine(const osg::LineSegment::vec_type &s, const osg::LineSegment::vec_type &e)
Definition Projector:97
osg::LineSegment::vec_type & getLineEnd()
Definition Projector:103
LineProjector(const osg::LineSegment::vec_type &s, const osg::LineSegment::vec_type &e)
void setPlane(const osg::Plane &plane)
Definition Projector:130
virtual ~PlaneProjector()
const osg::Plane & getPlane() const
Definition Projector:131
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
osg::Plane _plane
Definition Projector:144
PlaneProjector(const osg::Plane &plane)
void setFront(bool front)
Definition Projector:174
const osg::Sphere * getSphere() const
Definition Projector:159
SphereProjector(osg::Sphere *sphere)
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
void setSphere(osg::Sphere *sphere)
Definition Projector:158
virtual ~SphereProjector()
osg::ref_ptr< osg::Sphere > _sphere
Definition Projector:180
bool isPointInFront(const PointerInfo &pi, const osg::Matrix &localToWorld) const
Returns true is the point is in front of the cylinder given the eye direction.
bool _front
Definition Projector:181
osg::Plane _plane
Definition Projector:217
bool isProjectionOnSphere() const
Returns true if the previous projection was on the sphere and false if the projection was on the plan...
Definition Projector:207
virtual ~SpherePlaneProjector()
osg::Quat getRotation(const osg::Vec3d &p1, bool p1OnSphere, const osg::Vec3d &p2, bool p2OnSphere, float radialFactor=0.0f) const
bool _onSphere
Definition Projector:218
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
SpherePlaneProjector(osg::Sphere *sphere)
osg::ref_ptr< osg::Cylinder > _cylinder
Definition Projector:260
bool _front
Definition Projector:262
const osg::Cylinder * getCylinder() const
Definition Projector:238
bool isPointInFront(const PointerInfo &pi, const osg::Matrix &localToWorld) const
Returns true is the point is in front of the cylinder given the eye direction.
CylinderProjector(osg::Cylinder *cylinder)
void setCylinder(osg::Cylinder *cylinder)
Definition Projector:232
osg::Vec3d _cylinderAxis
Definition Projector:261
void setFront(bool front)
Definition Projector:254
virtual ~CylinderProjector()
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
osg::Plane _plane
Definition Projector:303
osg::Vec3d _planeLineStart
Definition Projector:304
osg::Quat getRotation(const osg::Vec3d &p1, const osg::Vec3d &p2) const
Generates a rotation about the cylinder axis based upon the incoming projected points on the plane co...
bool _parallelPlane
Definition Projector:305
osg::Vec3d _planeLineEnd
Definition Projector:304
virtual ~CylinderPlaneProjector()
CylinderPlaneProjector(osg::Cylinder *cylinder)
virtual bool project(const PointerInfo &pi, osg::Vec3d &projectedPoint) const
Calculates the object coordinates (projectedPoint) of a window coordinate (pointToProject) when proje...
#define OSGMANIPULATOR_EXPORT
Definition Export:27