In file /home/blah/darwin2k/src/dyno/mechanism/dyno.h: Parts are the basic building blocks from which links are made.
Public Fields
-
part* root
- root of part tree for parts belonging to the same link
-
part* parent
- the parent part.
-
ptrList* children
- list of child parts
-
connector* parentConnector
- connector to the parent part; NULL if this part is the parent
-
ptrList* connectors
- a list of the part's connectors
-
ptrList* mpolyList
- list of polyhedra used for computing inertial properties
-
ptrList* bpolyList
- list of polyhedra that bound the part; used for checking collisions
-
ptrList* dpolyList
- list of polyhedra used for display purposes
-
assembly* as
- assembly to which the part belongs
-
link* l
- the link to which the part belongs
-
tmatrix toLink
- a matrix transforming part to link coordinates
-
triple com
- center of mass of the part, in link coords
-
double mass
- mass of the part
-
matrix Ibody
- inertia matrix in link coords
-
linkForceRecord* frecs
- linked list of force records associated with the part; managed by link
-
const char* name
- the name of the part; can be NULL, and will *not* be deleted by part::~part
-
synObject* owner
- the owner of the part
-
int ownerIdx
- an index that can be used by the owner
Public Methods
-
part(void)
- constructor
-
~part(void)
- destructor
-
normal mpoly methods
-
display mpoly methods
-
bounding mpoly methods
-
convenience methods
-
coordinate transformation
Documentation
Parts are the basic building blocks from which links are made.
each part has a number of connectors through which it can be connected
to other parts. All of the parts in a link are connected in a tree,
with connections between parts formed by objects of the connection
class. All parts within a link are rigidly attached to each other.
Parts also contain descriptions of their geometry:
a list of mpoly objects (mpolyList) is used for computing inertial
properties, an optional list of mpolys for bounding geometry (bpolyList),
and an optional list of mpolys for display geometry (dpolyList).
part* root
- root of part tree for parts belonging to the same link
part* parent
-
the parent part. if this part is the parent for the tree,
then parent should be NULL.
ptrList* children
- list of child parts
connector* parentConnector
- connector to the parent part; NULL if this part is the parent
ptrList* connectors
- a list of the part's connectors
ptrList* mpolyList
- list of polyhedra used for computing inertial properties
ptrList* bpolyList
- list of polyhedra that bound the part; used for checking collisions
ptrList* dpolyList
- list of polyhedra used for display purposes
assembly* as
- assembly to which the part belongs
link* l
- the link to which the part belongs
tmatrix toLink
- a matrix transforming part to link coordinates
triple com
- center of mass of the part, in link coords
double mass
- mass of the part
matrix Ibody
- inertia matrix in link coords
linkForceRecord* frecs
- linked list of force records associated with the part; managed by link
const char* name
- the name of the part; can be NULL, and will *not* be deleted by
part::~part
synObject* owner
- the owner of the part
int ownerIdx
- an index that can be used by the owner
part(void)
- constructor
~part(void)
- destructor
normal mpoly methods
inline void addMPoly(mpoly* mp)
- adds an mpoly
void addMPolyList(ptrList* p)
- adds a ptrlist of mpolys
display mpoly methods
inline void addDPoly(mpoly* mp)
- adds a single display mpoly
inline void useDPolyList(void)
- explicitly allocates bpolyList
void addDPolyList(ptrList* p)
- adds display mpolys from a ptrlist
bounding mpoly methods
inline void useBPolyList(void)
- explicitly allocates bpolyList
inline void addBPoly(mpoly* mp)
- adds a single bounding poly
void addBPolyList(ptrList* p)
- adds bounding mpolys from a ptrlist
convenience methods
inline int numConnectors(void) const
- returns the number of connectors the part has
inline connector* getConnector(int n)
- returns the indicated connector
inline connector* getConnectorById(int id)
- returns the connector with the given id, or NULL if not found
inline int numChildren(void) const
- returns the number of child parts
inline part* getChild(int i)
- returns the ith child part
inline mpoly* getMPoly(int i)
- gets the ith mpoly
inline mpoly* getBPoly(int i)
- gets the ith bpoly. note: bpolyList may be NULL; check first
inline mpoly* getDPoly(int i)
- gets the ith dpoly. note: dpolys may be NULL; check first
coordinate transformation
inline triple convertToLinkCoords(const triple &partCoord)
- converts the given point from part to link coordinates
inline triple convertToWorldCoords(const triple &partCoord)
- converts the given point from part to world coordinates
inline triple convertDirectionToWorldCoords(const triple &partDir)
- converts the given direction vector from part to link coordinates
inline triple convertDirectionToLinkCoords(const triple &partDir)
- converts the given direction vector from part to world coordinates
quaternion convertToLinkCoords(quaternion &partQ)
- converts the given quaternion from part to link coordinates
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.