Choreonoid  1.8
KinematicsBar.h
Go to the documentation of this file.
1 
5 #ifndef CNOID_BODY_PLUGIN_KINEMATICS_BAR_H
6 #define CNOID_BODY_PLUGIN_KINEMATICS_BAR_H
7 
8 #include <cnoid/ToolBar>
9 #include "exportdecl.h"
10 
11 namespace cnoid {
12 
13 class KinematicsBarImpl;
14 
15 class CNOID_EXPORT KinematicsBar : public ToolBar
16 {
17 public:
18  static KinematicsBar* instance();
19 
20  virtual ~KinematicsBar();
21 
22  enum Mode {
23  NoKinematics = 0,
24  PresetKinematics = 1,
25  ForwardKinematics = 2,
27  // deprecated
28  AUTO_MODE = PresetKinematics,
29  FK_MODE = ForwardKinematics,
31  };
32 
33  int mode() const;
34  bool isForwardKinematicsEnabled() const;
35  bool isInverseKinematicsEnabled() const;
36  SignalProxy<void()> sigKinematicsModeChanged();
37 
38  bool isPositionDraggerEnabled() const;
39  bool isFootSnapMode() const;
40  void getSnapThresholds(double& distance, double& angle) const;
41  bool isJointPositionLimitMode() const;
42  bool isPenetrationBlockMode() const;
43  double penetrationBlockDepth() const;
44 
45  bool isCollisionLinkHighlihtMode() const;
46  int collisionDetectionPriority() const;
47  SignalProxy<void()> sigCollisionVisualizationChanged();
48 
49 protected:
50  virtual bool storeState(Archive& archive);
51  virtual bool restoreState(const Archive& archive);
52 
53 private:
54  KinematicsBar();
55 
56  KinematicsBarImpl* impl;
57 };
58 
59 }
60 
61 #endif
cnoid::ToolBar
Definition: ToolBar.h:22
cnoid::Archive
Definition: Archive.h:22
cnoid::KinematicsBar::Mode
Mode
Definition: KinematicsBar.h:22
cnoid
Definition: AbstractSceneLoader.h:11
cnoid::InverseKinematics
Definition: InverseKinematics.h:13
cnoid::KinematicsBar
Definition: KinematicsBar.h:15
cnoid::SignalProxy
Definition: Signal.h:470