15#ifndef OSGMANIPULATOR_COMMAND
16#define OSGMANIPULATOR_COMMAND 1
70 _localToWorld = localToWorld;
71 _worldToLocal = worldToLocal;
220 double _referencePoint;
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
static Matrixd scale(const Vec3f &sv)
Definition Matrixd:458
static Matrixd rotate(const Vec3f &from, const Vec3f &to)
Definition Matrixd:523
static Matrixd translate(const Vec3f &dv)
Definition Matrixd:475
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
General purpose double pair, uses include representation of texture coordinates.
Definition Vec2d:29
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
Stage
Motion command are based on click-drag-release actions.
Definition Command:40
@ FINISH
Release or pick finish.
Definition Command:47
@ NONE
Definition Command:41
@ MOVE
Drag or pick move.
Definition Command:45
@ START
Click or pick start.
Definition Command:43
virtual void accept(const Constraint &constraint)
Definition Command:61
void setLocalToWorldAndWorldToLocal(const osg::Matrix &localToWorld, const osg::Matrix &worldToLocal)
Sets the matrix for transforming the command's local coordinate system to the world/object coordinate...
Definition Command:68
Stage getStage() const
Definition Command:87
void setStage(const Stage s)
Definition Command:86
virtual void accept(DraggerCallback &callback)
Definition Command:62
const osg::Matrix & getWorldToLocal() const
Gets the matrix for transforming the command's world/object coordinate system to the command's local ...
Definition Command:84
virtual osg::Matrix getMotionMatrix() const =0
Gets the matrix for transforming the object being dragged.
const osg::Matrix & getLocalToWorld() const
Gets the matrix for transforming the command's local coordinate system to the world/object coordinate...
Definition Command:78
virtual MotionCommand * createCommandInverse()=0
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
void setLine(const osg::LineSegment::vec_type &s, const osg::LineSegment::vec_type &e)
Definition Command:117
const osg::Vec3d & getTranslation() const
Definition Command:122
virtual void accept(const Constraint &constraint)
Definition Command:112
void setTranslation(const osg::Vec3d &t)
Definition Command:121
virtual ~TranslateInLineCommand()
const osg::LineSegment::vec_type & getLineEnd() const
Definition Command:119
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:124
TranslateInLineCommand(const osg::LineSegment::vec_type &s, const osg::LineSegment::vec_type &e)
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
const osg::LineSegment::vec_type & getLineStart() const
Definition Command:118
virtual void accept(DraggerCallback &callback)
Definition Command:113
virtual void accept(DraggerCallback &callback)
Definition Command:150
void setReferencePoint(const osg::Vec3d &rp)
ReferencePoint is used only for snapping.
Definition Command:161
virtual ~TranslateInPlaneCommand()
TranslateInPlaneCommand()
TranslateInPlaneCommand(const osg::Plane &plane)
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:164
const osg::Vec3d & getTranslation() const
Definition Command:158
void setTranslation(const osg::Vec3d &t)
Definition Command:157
const osg::Vec3d & getReferencePoint() const
Definition Command:162
const osg::Plane & getPlane() const
Definition Command:155
virtual void accept(const Constraint &constraint)
Definition Command:149
void setPlane(const osg::Plane &plane)
Definition Command:154
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
void setReferencePoint(double rp)
ReferencePoint is used only for snapping.
Definition Command:200
virtual void accept(DraggerCallback &callback)
Definition Command:189
void setMinScale(double min)
Definition Command:203
double getScaleCenter() const
Definition Command:197
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:206
virtual ~Scale1DCommand()
void setScaleCenter(double center)
Definition Command:196
virtual void accept(const Constraint &constraint)
Definition Command:188
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
double getReferencePoint() const
Definition Command:201
void setScale(double s)
Definition Command:193
double getMinScale() const
Definition Command:204
double getScale() const
Definition Command:194
const osg::Vec2d & getScale() const
Definition Command:239
virtual ~Scale2DCommand()
void setMinScale(const osg::Vec2d &min)
Definition Command:248
void setScaleCenter(const osg::Vec2d ¢er)
Definition Command:241
virtual void accept(const Constraint &constraint)
Definition Command:233
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
const osg::Vec2d & getReferencePoint() const
Definition Command:246
const osg::Vec2d & getScaleCenter() const
Definition Command:242
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:251
const osg::Vec2d & getMinScale() const
Definition Command:249
void setScale(const osg::Vec2d &s)
Definition Command:238
virtual void accept(DraggerCallback &callback)
Definition Command:234
void setReferencePoint(const osg::Vec2d &rp)
ReferencePoint is used only for snapping.
Definition Command:245
const osg::Vec3d & getScaleCenter() const
Definition Command:287
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:289
virtual void accept(const Constraint &constraint)
Definition Command:278
virtual void accept(DraggerCallback &callback)
Definition Command:279
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
void setScaleCenter(const osg::Vec3d ¢er)
Definition Command:286
void setScale(double s)
Definition Command:283
double getScale() const
Definition Command:284
virtual ~ScaleUniformCommand()
const osg::Quat & getRotation() const
Definition Command:320
void setRotation(const osg::Quat &rotation)
Definition Command:319
virtual ~Rotate3DCommand()
virtual MotionCommand * createCommandInverse()
create a MotionCommand that is the inverse of this command, and if applied will undo this commands ch...
virtual osg::Matrix getMotionMatrix() const
Gets the matrix for transforming the object being dragged.
Definition Command:322
virtual void accept(DraggerCallback &callback)
Definition Command:315
virtual void accept(const Constraint &constraint)
Definition Command:314
virtual bool receive(const MotionCommand &)
Receive motion commands.
Definition Constraint:49
virtual bool constrain(MotionCommand &) const
Definition Constraint:63
#define OSGMANIPULATOR_EXPORT
Definition Export:27