#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 () |
double | getMu () const |
Tendon * | getTendon () |
SbVec3f | getWorldPosition () |
bool | isPermanent () const |
void | removeAllGeometry () |
void | setAttachPoint (vec3 attachPoint) |
void | setMu (double mu) |
void | setPermanent (bool p) |
TendonInsertionPoint (Tendon *myOwner, int chain, int link, vec3 point, double mu, 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.24 |
static const double | INSERTION_POINT_RADIUS = 0.45 |
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 |
double | mMu |
The effective friction coefficient between the tendon and the insertion point. | |
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, | |||
double | mu, | |||
bool | isPerm = true | |||
) |
Definition at line 78 of file humanHand.cpp.
void TendonInsertionPoint::createConnectorGeometry | ( | ) | [private] |
Definition at line 154 of file humanHand.cpp.
void TendonInsertionPoint::createInsertionGeometry | ( | ) | [private] |
Definition at line 120 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 101 of file humanHand.cpp.
vec3 TendonInsertionPoint::getAttachPoint | ( | ) | const [inline] |
Definition at line 118 of file humanHand.h.
SoSeparator* TendonInsertionPoint::getIVConnector | ( | ) | [inline] |
Definition at line 134 of file humanHand.h.
SoCylinder* TendonInsertionPoint::getIVConnectorGeom | ( | ) | [inline] |
Definition at line 137 of file humanHand.h.
SoMaterial* TendonInsertionPoint::getIVConnectorMaterial | ( | ) | [inline] |
Definition at line 135 of file humanHand.h.
SoTransform* TendonInsertionPoint::getIVConnectorTran | ( | ) | [inline] |
Definition at line 136 of file humanHand.h.
SoSeparator* TendonInsertionPoint::getIVInsertion | ( | ) | [inline] |
Definition at line 130 of file humanHand.h.
SoSphere* TendonInsertionPoint::getIVInsertionGeom | ( | ) | [inline] |
Definition at line 131 of file humanHand.h.
SoMaterial* TendonInsertionPoint::getIVInsertionMaterial | ( | ) | [inline] |
Definition at line 132 of file humanHand.h.
double TendonInsertionPoint::getMu | ( | ) | const [inline] |
Definition at line 122 of file humanHand.h.
Tendon* TendonInsertionPoint::getTendon | ( | ) | [inline] |
Definition at line 110 of file humanHand.h.
SbVec3f TendonInsertionPoint::getWorldPosition | ( | ) |
Definition at line 112 of file humanHand.cpp.
bool TendonInsertionPoint::isPermanent | ( | ) | const [inline] |
Definition at line 114 of file humanHand.h.
void TendonInsertionPoint::removeAllGeometry | ( | ) |
Definition at line 171 of file humanHand.cpp.
void TendonInsertionPoint::setAttachPoint | ( | vec3 | attachPoint | ) |
Definition at line 90 of file humanHand.cpp.
void TendonInsertionPoint::setMu | ( | double | mu | ) | [inline] |
Definition at line 124 of file humanHand.h.
void TendonInsertionPoint::setPermanent | ( | bool | p | ) | [inline] |
Definition at line 112 of file humanHand.h.
const double TendonInsertionPoint::CONNECTOR_RADIUS = 0.24 [static] |
Definition at line 140 of file humanHand.h.
const double TendonInsertionPoint::INSERTION_POINT_RADIUS = 0.45 [static] |
Definition at line 139 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 104 of file humanHand.h.
SoSeparator* TendonInsertionPoint::mIVConnector [private] |
Definition at line 92 of file humanHand.h.
SoCylinder* TendonInsertionPoint::mIVConnectorGeom [private] |
Definition at line 95 of file humanHand.h.
SoMaterial* TendonInsertionPoint::mIVConnectorMaterial [private] |
Definition at line 93 of file humanHand.h.
SoTransform* TendonInsertionPoint::mIVConnectorTran [private] |
Definition at line 94 of file humanHand.h.
SoSeparator* TendonInsertionPoint::mIVInsertion [private] |
Definition at line 87 of file humanHand.h.
SoSphere* TendonInsertionPoint::mIVInsertionGeom [private] |
Definition at line 90 of file humanHand.h.
SoMaterial* TendonInsertionPoint::mIVInsertionMaterial [private] |
Definition at line 88 of file humanHand.h.
SoTransform* TendonInsertionPoint::mIVInsertionTran [private] |
Definition at line 89 of file humanHand.h.
double TendonInsertionPoint::mMu [private] |
The effective friction coefficient between the tendon and the insertion point.
Definition at line 85 of file humanHand.h.
Tendon* TendonInsertionPoint::mOwner [private] |
Definition at line 97 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.