In file /home/blah/darwin2k/src/d2k/d2kcore/configuration.h:

class toolModule

abstract class for modules representing tools or end-effectors.

Inheritance:


Public Fields

[more]quaternion q
orientation of TCP in tcpPart's ref frame
[more]triple x
position of TCP in tcpPart's ref frame
[more]quaternion qlink
TCP orientation in link's ref frame.
[more]triple xlink
TCP position in link's ref frame.
[more]part* tcpPart
part that TCP is attached to
[more]double kp
Stiffness coefficient for compliant tools.
[more]double kv
Damping coefficient for compliant contacts.
[more]ptrList* contactParts
a list of parts that should be added to the dynoContactor.

Public Methods

[more]virtual int addContactInfo(dynoContactor* dc, int flags)
calls dynoContactor::addLink with tcpPart->l and contactParts.
[more]virtual int isCompliant(void)
indicates whether rigid or compliant contacts should be used
[more] toolModule(void)
constructor
[more] toolModule(const toolModule &other)
copy constructor
[more]int computeLinkCoords(void)
computes the link coordinates of the TCP
[more]inline void getWorldCoords(triple &xworld, quaternion &qworld) const
returns the position and orientation of the TCP in world coordinates
[more]inline triple getWorldPt(void) const
returs the position of the TCP in world coordinates


Inherited from module:

Public Fields

ostatic int currentID
ostatic const tmatrix connectionRotation
oconfiguration* cfg
oint ref
ochar* name
obool isPrototype
ohandedness whichSide
omodule* parent
oassembly* as
optrList* params
optrList* attachments
ocptrList* components
oconst componentContext* context

Public Methods

Virtual methods.

convenience functions

oinline const ptrList* getDependencies(int whichParam)

Public Members

oenum subType
oenum handedness

Protected Methods

ovoid assignConnectorIDs(void)


Inherited from synObject:

Public Fields

ostatic int staticClassID
oint objectID
oint verboseLevel

Public Methods

ovirtual const char* className(void) const
ovirtual synObject* copy(void) const
ovirtual int isOfType(int typeNum, int derivedOk)
ostatic int setStaticClassID(void)
ovirtual int classID(void) const


Documentation

abstract class for modules representing tools or end-effectors.

This class defines a new virtual method 'addContactInfo', which adds a tool's contact geometry to a dynoContactor so that intersection and contact calculations can be performed. If 'contactParts' is non-NULL, then only those parts in it will be added; otherwise, all tool parts are added.

oquaternion q
orientation of TCP in tcpPart's ref frame

otriple x
position of TCP in tcpPart's ref frame

oquaternion qlink
TCP orientation in link's ref frame. computed by computeLinkCoords.

otriple xlink
TCP position in link's ref frame. computed by computeLinkCoords.

opart* tcpPart
part that TCP is attached to

odouble kp
Stiffness coefficient for compliant tools. This is used for setting the properties of compliant contacts between the tool and other objects.

odouble kv
Damping coefficient for compliant contacts. This is used for setting the properties of compliant contacts between the tool and other objects.

optrList* contactParts
a list of parts that should be added to the dynoContactor. If NULL, then all parts will be added.

ovirtual int addContactInfo(dynoContactor* dc, int flags)
calls dynoContactor::addLink with tcpPart->l and contactParts. The contact type is set to POINT or COMPLIANT based on the return value of isCompliant(), and friction coefficients are 1.0. (note that the module's coefficients get multiplied by the terrain coefficients to compute the actual friction coefficients for the contact). This will probably change in the future to allow materials to be specified for the module and other objects. The actual friction coefficients can then be looked up in a table of material pairs. 'flags' indicates what collision/contact operations should be performed, and is a bitwise-OR of dynoCollisionOperation values.
See Also:
dynoCollisionOperation
dynoContactor
locomotion.h

ovirtual int isCompliant(void)
indicates whether rigid or compliant contacts should be used

o toolModule(void)
constructor

o toolModule(const toolModule &other)
copy constructor

oint computeLinkCoords(void)
computes the link coordinates of the TCP

oinline void getWorldCoords(triple &xworld, quaternion &qworld) const
returns the position and orientation of the TCP in world coordinates

oinline triple getWorldPt(void) const
returs the position of the TCP in world coordinates


Direct child classes:
simpleTool
palletFork
locomotorModule

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.