Choreonoid  1.5
Public Types | Public Member Functions | Public Attributes | List of all members
cnoid::PositionDragger Class Reference

#include <PositionDragger.h>

Inheritance diagram for cnoid::PositionDragger:
cnoid::SceneDragger cnoid::SgPosTransform cnoid::SceneWidgetEditable cnoid::SgTransform cnoid::SgGroup cnoid::SgNode cnoid::SgObject cnoid::Referenced

Public Types

enum  Axis {
  TX = 1 << 0, TY = 1 << 1, TZ = 1 << 2, TRANSLATION_AXES = (TX | TY | TZ),
  RX = 1 << 3, RY = 1 << 4, RZ = 1 << 5, ROTATION_AXES = (RX | RY | RZ),
  ALL_AXES = (TX | TY | TZ | RX | RY | RZ)
}
 
- Public Types inherited from cnoid::SgGroup
typedef Container::iterator iterator
 
typedef Container::reverse_iterator reverse_iterator
 
typedef Container::const_iterator const_iterator
 
typedef Container::const_reverse_iterator const_reverse_iterator
 
- Public Types inherited from cnoid::SgObject
typedef std::set< SgObject * > ParentContainer
 
typedef ParentContainer::iterator parentIter
 
typedef ParentContainer::const_iterator const_parentIter
 

Public Member Functions

 PositionDragger ()
 
 PositionDragger (const PositionDragger &org)
 
 PositionDragger (const PositionDragger &org, SgCloneMap &cloneMap)
 
virtual SgObjectclone (SgCloneMap &cloneMap) const
 
void setDraggableAxes (int axisSet)
 
int draggableAxes () const
 
SignalProxy< void(int axisSet)> sigDraggableAxesChanged ()
 
void setRadius (double r, double translationAxisRatio=2.0f)
 
void adjustSize ()
 
void adjustSize (const BoundingBox &bb)
 
void setContentsDragEnabled (bool on)
 
bool isContentsDragEnabled () const
 
void setDraggerAlwaysShown (bool on)
 
bool isDraggerAlwaysShown () const
 
void setDraggerAlwaysHidden (bool on)
 
bool isDraggerAlwaysHidden () const
 
void setUndoEnabled (bool on)
 
bool isUndoEnabled () const
 
void storeCurrentPositionToHistory ()
 
TranslationDraggertranslationDragger ()
 
RotationDraggerrotationDragger ()
 
SignalProxy< void()> sigDragStarted ()
 
SignalProxy< void()> sigPositionDragged ()
 
SignalProxy< void()> sigDragFinished ()
 
virtual bool isDragging () const
 
virtual Affine3 draggedPosition () const
 
virtual bool onButtonPressEvent (const SceneWidgetEvent &event)
 
virtual bool onButtonReleaseEvent (const SceneWidgetEvent &event)
 
virtual bool onPointerMoveEvent (const SceneWidgetEvent &event)
 
virtual void onPointerLeaveEvent (const SceneWidgetEvent &event)
 
virtual void onFocusChanged (const SceneWidgetEvent &event, bool on)
 
virtual void onSceneModeChanged (const SceneWidgetEvent &event)
 
virtual bool onUndoRequest ()
 
virtual bool onRedoRequest ()
 
- Public Member Functions inherited from cnoid::SceneDragger
 SceneDragger ()
 
 SceneDragger (const SceneDragger &org)
 
 SceneDragger (const SceneDragger &org, SgCloneMap &cloneMap)
 
bool isContainerMode () const
 
void setContainerMode (bool on)
 
- Public Member Functions inherited from cnoid::SgPosTransform
 SgPosTransform ()
 
 SgPosTransform (const Affine3 &T)
 
 SgPosTransform (const SgPosTransform &org)
 
 SgPosTransform (const SgPosTransform &org, SgCloneMap &cloneMap)
 
virtual void accept (SceneVisitor &visitor)
 
virtual const BoundingBoxboundingBox () const
 
virtual void getTransform (Affine3 &out_T) const
 
Affine3T ()
 
const Affine3T () const
 
Affine3position ()
 
const Affine3position () const
 
Affine3::TranslationPart translation ()
 
Affine3::ConstTranslationPart translation () const
 
Affine3::LinearPart rotation ()
 
Affine3::ConstLinearPart rotation () const
 
template<class Scalar , int Mode, int Options>
void setPosition (const Eigen::Transform< Scalar, 3, Mode, Options > &T)
 
template<class Scalar , int Mode, int Options>
void setTransform (const Eigen::Transform< Scalar, 3, Mode, Options > &T)
 
template<typename Derived >
void setRotation (const Eigen::MatrixBase< Derived > &R)
 
template<typename T >
void setRotation (const Eigen::AngleAxis< T > &a)
 
template<typename Derived >
void setTranslation (const Eigen::MatrixBase< Derived > &p)
 
- Public Member Functions inherited from cnoid::SgTransform
 SgTransform ()
 
 SgTransform (const SgTransform &org)
 
 SgTransform (const SgTransform &org, SgCloneMap &cloneMap)
 
const BoundingBoxuntransformedBoundingBox () const
 
- Public Member Functions inherited from cnoid::SgGroup
 SgGroup ()
 
 SgGroup (const SgGroup &org)
 shallow copy More...
 
 SgGroup (const SgGroup &org, SgCloneMap &cloneMap)
 deep copy More...
 
 ~SgGroup ()
 
virtual int numChildObjects () const
 
virtual SgObjectchildObject (int index)
 
virtual void onUpdated (SgUpdate &update)
 
virtual bool isGroup () const
 
void invalidateBoundingBox ()
 
iterator begin ()
 
iterator end ()
 
reverse_iterator rbegin ()
 
reverse_iterator rend ()
 
const_iterator begin () const
 
const_iterator end () const
 
const_reverse_iterator rbegin () const
 
const_reverse_iterator rend () const
 
iterator erase (iterator pos)
 
bool contains (SgNode *node) const
 
bool empty () const
 
int numChildren () const
 
SgNodechild (int index)
 
template<class NodeType >
NodeType * getChild (int index)
 This throws an exeption when the index is invalid or the type is not matched. More...
 
void clearChildren (bool doNotify=false)
 
void addChild (SgNode *node, bool doNotify=false)
 
bool addChildOnce (SgNode *node, bool doNotify=false)
 
void insertChild (SgNode *node, int index=0, bool doNotify=false)
 
bool removeChild (SgNode *node, bool doNotify=false)
 
void removeChildAt (int index, bool doNotify=false)
 
void copyChildrenTo (SgGroup *group, bool doNotify=false)
 
void moveChildrenTo (SgGroup *group, bool doNotify=false)
 
template<class NodeType >
NodeType * findNodeOfType ()
 
- Public Member Functions inherited from cnoid::SgNode
 SgNode ()
 
 SgNode (const SgNode &org)
 
 ~SgNode ()
 
SgNodecloneNode (SgCloneMap &cloneMap) const
 
- Public Member Functions inherited from cnoid::SgObject
const std::string & name () const
 
void setName (const std::string &name)
 
SignalProxy< void(const SgUpdate &update)> sigUpdated ()
 
void notifyUpdate (SgUpdate &update)
 
void notifyUpdate (int action=SgUpdate::MODIFIED)
 
void addParent (SgObject *parent, bool doNotify=false)
 
void removeParent (SgObject *parent)
 
int numParents () const
 
bool hasParents () const
 
const_parentIter parentBegin () const
 
const_parentIter parentEnd () const
 
SignalProxy< void(bool on)> sigGraphConnection ()
 
- Public Member Functions inherited from cnoid::Referenced
virtual ~Referenced ()
 
void addRef ()
 
void releaseRef ()
 
- Public Member Functions inherited from cnoid::SceneWidgetEditable
virtual bool onKeyPressEvent (const SceneWidgetEvent &event)
 
virtual bool onKeyReleaseEvent (const SceneWidgetEvent &event)
 
virtual bool onDoubleClickEvent (const SceneWidgetEvent &event)
 
virtual bool onScrollEvent (const SceneWidgetEvent &event)
 
virtual void onContextMenuRequest (const SceneWidgetEvent &event, MenuManager &menuManager)
 

Public Attributes

 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
 
- Public Attributes inherited from cnoid::SgPosTransform
 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
 

Additional Inherited Members

- Protected Member Functions inherited from cnoid::SgObject
 SgObject ()
 
 SgObject (const SgObject &org)
 
- Protected Member Functions inherited from cnoid::Referenced
 Referenced ()
 
 Referenced (const Referenced &org)
 
int refCount () const
 
- Static Protected Member Functions inherited from cnoid::SceneDragger
static bool detectAxisFromNodePath (const SgNodePath &path, SgNode *topNode, int &out_axis, int &out_indexOfTopNode)
 
- Protected Attributes inherited from cnoid::SgTransform
BoundingBox untransformedBboxCache
 
- Protected Attributes inherited from cnoid::SgGroup
BoundingBox bboxCache
 
bool isBboxCacheValid
 

Detailed Description

Todo:
Since the draggable axis set can be specified for PositoinDragger now, the TranslationDragger class and the RotationDragger class should be removed and their implementations should be integrated into the PositionDragger class.

Member Enumeration Documentation

◆ Axis

Enumerator
TX 
TY 
TZ 
TRANSLATION_AXES 
RX 
RY 
RZ 
ROTATION_AXES 
ALL_AXES 

Constructor & Destructor Documentation

◆ PositionDragger() [1/3]

PositionDragger::PositionDragger ( )

◆ PositionDragger() [2/3]

PositionDragger::PositionDragger ( const PositionDragger org)

◆ PositionDragger() [3/3]

PositionDragger::PositionDragger ( const PositionDragger org,
SgCloneMap cloneMap 
)

Member Function Documentation

◆ adjustSize() [1/2]

void PositionDragger::adjustSize ( )

◆ adjustSize() [2/2]

void PositionDragger::adjustSize ( const BoundingBox bb)

◆ clone()

SgObject * PositionDragger::clone ( SgCloneMap cloneMap) const
virtual

Reimplemented from cnoid::SgPosTransform.

◆ draggableAxes()

int PositionDragger::draggableAxes ( ) const

◆ draggedPosition()

Affine3 PositionDragger::draggedPosition ( ) const
virtual

Implements cnoid::SceneDragger.

◆ isContentsDragEnabled()

bool PositionDragger::isContentsDragEnabled ( ) const

◆ isDraggerAlwaysHidden()

bool PositionDragger::isDraggerAlwaysHidden ( ) const

◆ isDraggerAlwaysShown()

bool PositionDragger::isDraggerAlwaysShown ( ) const

◆ isDragging()

bool PositionDragger::isDragging ( ) const
virtual

Implements cnoid::SceneDragger.

◆ isUndoEnabled()

bool PositionDragger::isUndoEnabled ( ) const

◆ onButtonPressEvent()

bool PositionDragger::onButtonPressEvent ( const SceneWidgetEvent event)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onButtonReleaseEvent()

bool PositionDragger::onButtonReleaseEvent ( const SceneWidgetEvent event)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onFocusChanged()

void PositionDragger::onFocusChanged ( const SceneWidgetEvent event,
bool  on 
)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onPointerLeaveEvent()

void PositionDragger::onPointerLeaveEvent ( const SceneWidgetEvent event)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onPointerMoveEvent()

bool PositionDragger::onPointerMoveEvent ( const SceneWidgetEvent event)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onRedoRequest()

bool PositionDragger::onRedoRequest ( )
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onSceneModeChanged()

void PositionDragger::onSceneModeChanged ( const SceneWidgetEvent event)
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ onUndoRequest()

bool PositionDragger::onUndoRequest ( )
virtual

Reimplemented from cnoid::SceneWidgetEditable.

◆ rotationDragger()

RotationDragger * PositionDragger::rotationDragger ( )

◆ setContentsDragEnabled()

void PositionDragger::setContentsDragEnabled ( bool  on)

◆ setDraggableAxes()

void PositionDragger::setDraggableAxes ( int  axisSet)

◆ setDraggerAlwaysHidden()

void PositionDragger::setDraggerAlwaysHidden ( bool  on)

◆ setDraggerAlwaysShown()

void PositionDragger::setDraggerAlwaysShown ( bool  on)

◆ setRadius()

void PositionDragger::setRadius ( double  r,
double  translationAxisRatio = 2.0f 
)

◆ setUndoEnabled()

void PositionDragger::setUndoEnabled ( bool  on)

◆ sigDragFinished()

SignalProxy< void()> PositionDragger::sigDragFinished ( )

◆ sigDraggableAxesChanged()

SignalProxy< void(int axisSet)> PositionDragger::sigDraggableAxesChanged ( )

◆ sigDragStarted()

SignalProxy< void()> PositionDragger::sigDragStarted ( )

◆ sigPositionDragged()

SignalProxy< void()> PositionDragger::sigPositionDragged ( )

◆ storeCurrentPositionToHistory()

void PositionDragger::storeCurrentPositionToHistory ( )

◆ translationDragger()

TranslationDragger * PositionDragger::translationDragger ( )

Member Data Documentation

◆ EIGEN_MAKE_ALIGNED_OPERATOR_NEW

cnoid::PositionDragger::EIGEN_MAKE_ALIGNED_OPERATOR_NEW

The documentation for this class was generated from the following files: