#include <humanHand.h>
Public Member Functions | |
Link * | getAttachedLink () |
Use this function to get the link the insertion point is attached to. | |
vec3 | getAttachPoint () const |
SoSeparator * | getIVConnector () |
SoCylinder * | getIVConnectorGeom () |
SoMaterial * | getIVConnectorMaterial () |
SoTransform * | getIVConnectorTran () |
SoSeparator * | getIVInsertion () |
SoSphere * | getIVInsertionGeom () |
SoMaterial * | getIVInsertionMaterial () |
Tendon * | getTendon () |
SbVec3f | getWorldPosition () |
bool | isPermanent () const |
void | removeAllGeometry () |
void | setAttachPoint (vec3 attachPoint) |
void | setPermanent (bool p) |
TendonInsertionPoint (Tendon *myOwner, int chain, int link, vec3 point, bool isPerm=true) | |
Public Attributes | |
vec3 | mInsertionForce |
The force applied by the tendon at this insertion point, in world coordinates. | |
Static Public Attributes | |
static const double | CONNECTOR_RADIUS = 0.8 |
static const double | INSERTION_POINT_RADIUS = 1.5 |
Private Member Functions | |
void | createConnectorGeometry () |
void | createInsertionGeometry () |
Private Attributes | |
int | mAttachChainNr |
Robot chain nnumber that tendon is attached to. | |
int | mAttachLinkNr |
Link number for the link that the insertion point is on. | |
vec3 | mAttachPoint |
The location of the insertion point, in link coordinates. | |
SoSeparator * | mIVConnector |
SoCylinder * | mIVConnectorGeom |
SoMaterial * | mIVConnectorMaterial |
SoTransform * | mIVConnectorTran |
SoSeparator * | mIVInsertion |
SoSphere * | mIVInsertionGeom |
SoMaterial * | mIVInsertionMaterial |
SoTransform * | mIVInsertionTran |
Tendon * | mOwner |
bool | mPermanent |
This tells wether the insertion point is permanent, or dynamic. |
An insertion point is a point where a tendon inserts into, or changes direction on a link of a robot. Currently it is the only way to change the routing of a tendon, as intersection of tendons and general geometry are not calculated. Insertion points are also the only points where a tendon can apply force to the link. They are also called "pulleys" on occasion in the literature.
Definition at line 68 of file humanHand.h.
TendonInsertionPoint::TendonInsertionPoint | ( | Tendon * | myOwner, | |
int | chain, | |||
int | link, | |||
vec3 | point, | |||
bool | isPerm = true | |||
) |
Definition at line 134 of file humanHand.cpp.
void TendonInsertionPoint::createConnectorGeometry | ( | ) | [private] |
Definition at line 209 of file humanHand.cpp.
void TendonInsertionPoint::createInsertionGeometry | ( | ) | [private] |
Definition at line 175 of file humanHand.cpp.
Link * TendonInsertionPoint::getAttachedLink | ( | ) |
Use this function to get the link the insertion point is attached to.
Handles the case where tendon is attached to base correctly
Use this function to get the link the insertion point is attached to. If chain is -1 this means it is attached to the base of the robot this function will handle this correctly.
Definition at line 156 of file humanHand.cpp.
vec3 TendonInsertionPoint::getAttachPoint | ( | ) | const [inline] |
Definition at line 115 of file humanHand.h.
SoSeparator* TendonInsertionPoint::getIVConnector | ( | ) | [inline] |
Definition at line 127 of file humanHand.h.
SoCylinder* TendonInsertionPoint::getIVConnectorGeom | ( | ) | [inline] |
Definition at line 130 of file humanHand.h.
SoMaterial* TendonInsertionPoint::getIVConnectorMaterial | ( | ) | [inline] |
Definition at line 128 of file humanHand.h.
SoTransform* TendonInsertionPoint::getIVConnectorTran | ( | ) | [inline] |
Definition at line 129 of file humanHand.h.
SoSeparator* TendonInsertionPoint::getIVInsertion | ( | ) | [inline] |
Definition at line 123 of file humanHand.h.
SoSphere* TendonInsertionPoint::getIVInsertionGeom | ( | ) | [inline] |
Definition at line 124 of file humanHand.h.
SoMaterial* TendonInsertionPoint::getIVInsertionMaterial | ( | ) | [inline] |
Definition at line 125 of file humanHand.h.
Tendon* TendonInsertionPoint::getTendon | ( | ) | [inline] |
Definition at line 107 of file humanHand.h.
SbVec3f TendonInsertionPoint::getWorldPosition | ( | ) |
Definition at line 167 of file humanHand.cpp.
bool TendonInsertionPoint::isPermanent | ( | ) | const [inline] |
Definition at line 111 of file humanHand.h.
void TendonInsertionPoint::removeAllGeometry | ( | ) |
Definition at line 226 of file humanHand.cpp.
void TendonInsertionPoint::setAttachPoint | ( | vec3 | attachPoint | ) |
Definition at line 145 of file humanHand.cpp.
void TendonInsertionPoint::setPermanent | ( | bool | p | ) | [inline] |
Definition at line 109 of file humanHand.h.
const double TendonInsertionPoint::CONNECTOR_RADIUS = 0.8 [static] |
Definition at line 133 of file humanHand.h.
const double TendonInsertionPoint::INSERTION_POINT_RADIUS = 1.5 [static] |
Definition at line 132 of file humanHand.h.
int TendonInsertionPoint::mAttachChainNr [private] |
Robot chain nnumber that tendon is attached to.
-1 means insertion point is on the base of the robot
Definition at line 80 of file humanHand.h.
int TendonInsertionPoint::mAttachLinkNr [private] |
Link number for the link that the insertion point is on.
Definition at line 82 of file humanHand.h.
vec3 TendonInsertionPoint::mAttachPoint [private] |
The location of the insertion point, in link coordinates.
Definition at line 71 of file humanHand.h.
The force applied by the tendon at this insertion point, in world coordinates.
Definition at line 101 of file humanHand.h.
SoSeparator* TendonInsertionPoint::mIVConnector [private] |
Definition at line 89 of file humanHand.h.
SoCylinder* TendonInsertionPoint::mIVConnectorGeom [private] |
Definition at line 92 of file humanHand.h.
SoMaterial* TendonInsertionPoint::mIVConnectorMaterial [private] |
Definition at line 90 of file humanHand.h.
SoTransform* TendonInsertionPoint::mIVConnectorTran [private] |
Definition at line 91 of file humanHand.h.
SoSeparator* TendonInsertionPoint::mIVInsertion [private] |
Definition at line 84 of file humanHand.h.
SoSphere* TendonInsertionPoint::mIVInsertionGeom [private] |
Definition at line 87 of file humanHand.h.
SoMaterial* TendonInsertionPoint::mIVInsertionMaterial [private] |
Definition at line 85 of file humanHand.h.
SoTransform* TendonInsertionPoint::mIVInsertionTran [private] |
Definition at line 86 of file humanHand.h.
Tendon* TendonInsertionPoint::mOwner [private] |
Definition at line 94 of file humanHand.h.
bool TendonInsertionPoint::mPermanent [private] |
This tells wether the insertion point is permanent, or dynamic.
Dynamic insertion points are those created when a tendon wraps around a wrapper.
Definition at line 76 of file humanHand.h.