9 #include "imstkTrackingDeviceControl.h" 13 class CollidingObject;
38 std::shared_ptr<CollidingObject> shaft,
39 std::shared_ptr<CollidingObject> upperJaw,
40 std::shared_ptr<CollidingObject> lowerJaw,
41 std::shared_ptr<Geometry> pickGeom);
43 void setDevice(std::shared_ptr<DeviceClient> device)
override;
61 void update(
const double& dt)
override;
98 std::shared_ptr<Geometry> m_pickGeom;
103 JawState m_jawState = JawState::Opened;
107 Mat4d m_controllerWorldTransform = Mat4d::Identity();
108 Mat4d m_pickGeomTransform = Mat4d::Identity();
110 Mat4d m_shaftVisualTransform = Mat4d::Identity();
111 Mat4d m_upperJawVisualTransform = Mat4d::Identity();
112 Mat4d m_lowerJawVisualTransform = Mat4d::Identity();
114 Mat4d m_shaftCollidingTransform = Mat4d::Identity();
115 Mat4d m_upperJawCollidingTransform = Mat4d::Identity();
116 Mat4d m_lowerJawCollidingTransform = Mat4d::Identity();
118 Mat4d m_upperJawLocalTransform = Mat4d::Identity();
119 Mat4d m_lowerJawLocalTransform = Mat4d::Identity();
JawState getJawState() const
Get the state of the jaw whether it is open or closed.
std::shared_ptr< CollidingObject > m_upperJaw
Tool upper jaw.
void setJawAngleChange(const double dAngle)
Set the increment.
Two-jawed laparoscopic tool controlled by external device The tool is composed of three scene objects...
double getJawAngle() const
Get the current jaw angle.
void setJawRotationAxis(const Vec3d &axis)
Set the jaw rotation axis.
SIGNAL(LaparoscopicToolController, JawClosed)
Fired once when the jaw transitions to closed state.
double m_change
Amount of change in jaw angle per frame.
std::shared_ptr< CollidingObject > m_shaft
Tool shaft.
double m_maxJawAngle
Maximum angle of the jaws.
std::shared_ptr< CollidingObject > m_lowerJaw
Tool lower jaw.
double m_jawAngle
Angle of the jaws.
void setMaxJawAngle(const double maxAngle)
Set the maximum jaw angle.
Base class for all DeviceControls that track something in space (position and orientation) ...
Vec3d m_jawRotationAxis
Angle of the jaws.
void update(const double &dt) override
Update controlled laparoscopic tool using latest tracking information.
double getMaxJawAngle() const
Get the max jaw angle.