#include <RibModel.h>
|
std::vector
< tgSpringCableActuator * > | m_allMuscles |
|
std::vector< tgModel * > | m_allSegments |
|
MuscleMap | m_muscleMap |
|
const std::size_t | m_segments |
|
The spine model is similar in shape to FlemonsSpineModelLearning, the ribs are rigidly attached ellipses.
Definition at line 39 of file RibModel.h.
void tgModel::addChild |
( |
tgModel * |
pChild | ) |
|
|
inherited |
Add a sub-model to this model. The model takes ownership of the child sub-model and is responsible for deallocating it.
- Parameters
-
[in,out] | pChild | a pointer to a sub-model |
- Exceptions
-
std::invalid_argument | is pChild is NULL, this object, or already a descendant |
- Todo:
- Make sure that every child appears no more than once in the tree.
Definition at line 124 of file tgModel.cpp.
Attach an observer to the subject of the observer.
- Parameters
-
[in,out] | pObserver | a pointer to an observer for the subject; do nothing if the pointer is NULL |
template<typename T >
std::vector<T*> tgModel::find |
( |
const tgTagSearch & |
tagSearch | ) |
|
|
inlineinherited |
Get a vector of descendants sorted by type and a tagsearch. Useful for pulling out muscle groups, or similar.
- Parameters
-
[in] | tagSearch,a | tagSearch that contains the desired tags |
- Returns
- a std::vector of pointers to members that match the tag search and typename T
Definition at line 125 of file tgModel.h.
template<typename T >
std::vector<T*> tgModel::find |
( |
const std::string & |
tagSearch | ) |
|
|
inlineinherited |
Get a vector of descendants sorted by type and a tagsearch. Useful for pulling out muscle groups, or similar.
- Parameters
-
[in] | tagSearch,a | std::string& that contains the desired tags |
- Returns
- a std::vector of pointers to members that match the tag search and typename T
Definition at line 138 of file tgModel.h.
std::vector< tgModel * > tgModel::getDescendants |
( |
| ) |
const |
|
inherited |
Return a std::vector of const pointers to all sub-models.
- Todo:
- examine whether this should be public, and perhaps create a read only version
- Returns
- a std::vector of const pointers all sub-models.
- Todo:
- Unnecessary copying can be avoided by pasing the result collection in the recursive step.
Definition at line 172 of file tgModel.cpp.
Call tgObserver<T>::onStep() on all observers in the order in which they were attached.
- Parameters
-
[in] | dt | the number of seconds since the previous call; do nothing if not positive |
Call tgModelVisitor::render() on self and all descendants.
- Parameters
-
Reimplemented in ConnectorTestModel, BuildTestModel, tgKinematicActuator, tgSphere, tgBox, tgRod, MuscleNPCons, tgBasicActuator, hillyMuscleNP, simpleMuscleNP, tgBaseRigid, and tgGhostModel.
Definition at line 107 of file tgModel.cpp.
void RibModel::setup |
( |
tgWorld & |
world | ) |
|
|
virtual |
Setup takes a tgWorld and passes it to any children for their own setup functions. All subclasses should call this at the appropriate time (usually end of setup) within their own setup function.
- Parameters
-
[in] | world | - the tgWorld the models will exist in. |
- Todo:
- acceleration constraint was removed on 12/10/14 Replace with tgKinematicActuator as appropreate
Reimplemented from BaseSpineModelLearning.
Definition at line 208 of file RibModel.cpp.
void RibModel::step |
( |
double |
dt | ) |
|
|
virtual |
Advance the simulation.
- Parameters
-
[in] | dt | the number of seconds since the previous call; std::invalid_argument is thrown if dt is not positive |
- Exceptions
-
std::invalid_argument | if dt is not positive |
- Note
- This is not necessarily const for every child.
Reimplemented from BaseSpineModelLearning.
Definition at line 305 of file RibModel.cpp.
void RibModel::teardown |
( |
| ) |
|
|
virtual |
std::string tgModel::toString |
( |
std::string |
prefix = "" | ) |
const |
|
virtualinherited |
Returns the tag names of this model and its children
- Parameters
-
[in] | prefix | a string to append to |
- Returns
- the original string with this model and its children's tags appended
Definition at line 154 of file tgModel.cpp.
The documentation for this class was generated from the following files: