Choreonoid  1.5
SceneDragger.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_BASE_SCENE_DRAGGER_H
6 #define CNOID_BASE_SCENE_DRAGGER_H
7 
8 #include "SceneWidgetEditable.h"
9 #include "exportdecl.h"
10 
11 namespace cnoid {
12 
14 {
15  public:
16  SceneDragger();
17  SceneDragger(const SceneDragger& org);
18  SceneDragger(const SceneDragger& org, SgCloneMap& cloneMap);
19 
20  bool isContainerMode() const { return isContainerMode_; }
21  void setContainerMode(bool on);
22 
23  virtual bool isDragging() const = 0;
24  virtual Affine3 draggedPosition() const = 0;
25 
26  protected:
27  static bool detectAxisFromNodePath(const SgNodePath& path, SgNode* topNode, int& out_axis, int& out_indexOfTopNode);
28 
29  private:
30  bool isContainerMode_;
31 };
32 
34 
35 }
36 
37 #endif
Definition: SceneGraph.h:142
Definition: SceneDragger.h:13
Eigen::Affine3d Affine3
Definition: EigenTypes.h:64
bool isContainerMode() const
Definition: SceneDragger.h:20
Definition: SceneWidgetEditable.h:74
Definition: Referenced.h:128
Definition: SceneGraph.h:56
std::vector< SgNode * > SgNodePath
Definition: SceneGraph.h:140
Definition: SceneGraph.h:279
ref_ptr< SceneDragger > SceneDraggerPtr
Definition: SceneDragger.h:33
Defines the minimum processing for performing pasing file for STL.
Definition: AbstractSceneLoader.h:9
#define CNOID_EXPORT
Definition: Util/exportdecl.h:37