This class is the base class of rigid-body interaction models.
Constructors and destructors | |
virtual | ~SBMInteractionModelRigidBodySystem () |
Identity | |
virtual SBDDataGraphNode::Type | getType () const |
Returns the type of the data graph node. | |
virtual SBDDataGraphNode::Type | getModelType () const |
Returns the model type. | |
virtual SBDDataGraphNode::Type | getInteractionModelType () const |
Interactions | |
virtual void | initializeInteractions () |
virtual void | updateInteractions () |
Updates the interactions. | |
Force buffer | |
virtual SBVector6 & | getForce (unsigned int i) const |
virtual unsigned int | getNumberOfChangedForces () const |
virtual unsigned int | getChangedForceIndex (unsigned int i) const |
virtual void | flushForceBuffer () |
Debugging | |
virtual void | print (unsigned int offset=0) const |
Prints debugging information. | |
Model attributes | |
SBPointer< SBRigidBodySystem > | rigidBodySystem |
The RigidBody system the interaction model is attached to. | |
Force attributes | |
SBBuffer< SBVector6 > * | forceBuffer |
The force buffer containing the forces applied on the RigidBodys. | |
Additional Inherited Members | |
Public Types inherited from SBDDataGraphNode | |
enum | Type { Undefined, StructuralModel, StructuralModelNode, StructuralModelConformation, Conformation, StructuralModelPath, Path, StructuralModelNodeGroup, StructuralGroup, StructuralModelNodeRoot, Root, StructuralModelNodeParticle, StructuralParticle, StructuralModelNodeAtom, Atom, StructuralModelNodePseudoAtom, PseudoAtom, StructuralModelNodeBond, Bond, StructuralModelNodeResidue, Residue, StructuralModelNodeSegment, Segment, StructuralModelNodeProtein, Protein, StructuralModelNodeChain, Chain, StructuralModelNodeMolecule, Molecule, StructuralModelNodeBackbone, Backbone, StructuralModelNodeSideChain, SideChain, VisualModel, DynamicalModel, DynamicalModelParticleSystem, ParticleSystem, DynamicalModelRigidBodySystem, RigidBodySystem, DynamicalModelArticulatedBodySystem, ArticulatedBodySystem, DynamicalModelNode, DynamicalNode, DynamicalModelNodeGroup, DynamicalGroup, DynamicalModelNodeRoot, DynamicalRoot, DynamicalModelNodeParticle, DynamicalParticle, DynamicalModelNodeRigidBody, RigidBody, DynamicalModelNodeArticulatedBody, ArticulatedBody, InteractionModel, InteractionModelParticleSystem, InteractionModelRigidBodySystem, InteractionModelArticulatedBodySystem, PropertyModel, PropertyModelFunction, Simulator, SimulatorParticleSystem, SimulatorRigidBodySystem, SimulatorArticulatedBodySystem, StateUpdater, StateUpdaterParticleSystem, StateUpdaterRigidBodySystem, StateUpdaterArticulatedBodySystem, DocumentManager, Document, Folder, Camera, Label, DataGraphNodeGroup, NodeGroup, Controller, ControllerNode } |
The type of the data graph node. More... | |
Public Member Functions inherited from SBMInteractionModel | |
SBMInteractionModel () | |
Builds a base model. | |
virtual | ~SBMInteractionModel () |
Deletes the model. | |
bool | isSerializable () const |
Returns true when the class is serializable. | |
virtual void | serialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) const |
Serializes the node. | |
virtual void | unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) |
Unserializes the node. | |
virtual const SBQuantity::energy & | getEnergy () const |
virtual bool | getForceChanged (unsigned int i) const |
Returns whether force i has been changed since the last flush. | |
void | connectInteractionSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBInteractionEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBInteractionEvent *)=0) |
bool | interactionSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBInteractionEvent *)) const |
void | disconnectInteractionSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBInteractionEvent *)) |
virtual void | changed () |
Emits the InteractionModelChanged event. | |
virtual void | display () |
Displays the interaction model. | |
virtual void | displayForShadow () |
Displays the interaction model for shadow purposes. | |
virtual void | displayForSelection () |
Displays the interaction model for selection purposes. | |
virtual void | expandBounds (SBIAPosition3 &bounds) const |
Expands the bounds to make sure the interaction model fits inside them. | |
virtual void | collectAmbientOcclusion (const SBPosition3 &boxOrigin, const SBPosition3 &boxSize, unsigned int nCellsX, unsigned int nCellsY, unsigned int nCellsZ, float *ambientOcclusionData) |
To collect ambient occlusion data. | |
const SBPointerList< SBNode > * | getSimulatorList () const |
Public Member Functions inherited from SBMModel | |
virtual | ~SBMModel () |
Delete the model. | |
bool | isSerializable () const |
Returns true. | |
SBMModel * | getNextModel () const |
Returns the next model in the parent. | |
SBMModel * | getPreviousModel () const |
Returns the previous model in the parent. | |
virtual SBMModel * | clone () |
Returns a copy of the node and its descendants. | |
std::string const & | getName () const |
Returns the name of the model. | |
void | setName (const std::string &name) |
Sets the name of the model. | |
Public Member Functions inherited from SBDDataGraphNode | |
SBDDataGraphNode * | getParent () const |
Returns the parent of the node. More... | |
SBDDataGraphNode * | getThisNode () const |
Returns the pointer to this node. More... | |
SBDDataGraphNode * | getNextNode () const |
Returns the pointer to the next node in the children of the node's parent. More... | |
SBDDataGraphNode * | getPreviousNode () const |
Returns the pointer to the previous node in the children of the node's parent. More... | |
SBDDataGraphNode * | getNextNode (SBDDataGraphNode::Type nodeType) const |
Returns the pointer to the next node with type nodeType in the children of the node's parent. More... | |
SBDDataGraphNode * | getPreviousNode (SBDDataGraphNode::Type nodeType) const |
Returns the pointer to the previous node with type nodeType in the children of the node's parent. More... | |
SBDDocument * | getDocument () const |
Returns the document the node belongs to. More... | |
virtual bool | canAddChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0) const |
Returns whether this node can add node as a child. More... | |
virtual bool | canAddChildType (SBDDataGraphNode::Type nodeType) const |
Returns whether this node can add a node with type nodeType as a child. More... | |
virtual bool | addChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0) |
Adds a child to the node. More... | |
virtual bool | removeChild (SBDDataGraphNode *node) |
Removes a child from the node. More... | |
bool | hasOneOf (const SBNodeIndexer &nodeIndexer) const |
Returns true if and only if this node is one of the nodes of the nodeIndexer , or is the ancestor of one of them. More... | |
bool | isIn (SBDDataGraphNode *node) const |
Returns true if and only if this node is node , or descends from it. More... | |
bool | isIn (const SBNodeIndexer &nodeIndexer) const |
Returns true if and only if this node is one of the nodes of the nodeIndexer , or descends from one of them. More... | |
bool | isIn (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const |
Returns true if and only if this node is one of the nodes of the nodePointerIndexer , or descends from one of them. More... | |
bool | isOneOf (const SBNodeIndexer &nodeIndexer) const |
Returns true if and only if this node is one of the nodes of the nodeIndexer . More... | |
bool | isOneOf (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const |
Returns true if and only if this node is one of the nodes of the nodePointerIndexer . More... | |
SBDDataGraphNode * | getRoot () const |
Returns the root of the hierarchy the node belongs to. More... | |
unsigned int | getNodeIndex () const |
Returns the node index (unique in the whole data graph, but non-persistent) More... | |
bool | isType (Type type) const |
Returns true when the type of the node corresponds to type . | |
bool | isModel () const |
Returns true when the node is a model. | |
bool | isStructuralModel () const |
Returns true when the node is a structural model. | |
bool | isVisualModel () const |
Returns true when the node is a visual model. | |
bool | isDynamicalModel () const |
Returns true when the node is a dynamical model. | |
bool | isInteractionModel () const |
Returns true when the node is a interaction model. | |
bool | isPropertyModel () const |
Returns true when the node is a property model. | |
bool | isSimulator () const |
Returns true when the node is a simulator. | |
bool | isStructuralParticle () const |
Returns true when the node is a structural particle (an atom or a pseudo-atom) | |
bool | isCreated () const |
Returns true if and only if the node is created. More... | |
void | create () |
Creates the node. More... | |
bool | isErased () const |
Returns true if and only if the node is erased. More... | |
void | erase () |
Erases the node. More... | |
unsigned int | getFlags () const |
Returns the flags. More... | |
unsigned int | getInheritedFlags () const |
Returns the inherited flags. More... | |
bool | isSelected () const |
Returns whether the node is selected. More... | |
bool | getSelected () const |
Returns whether the node is visible. | |
bool | getSelectionFlag () const |
Returns the selection flag. More... | |
void | setSelectionFlag (bool flag) |
Sets the selection flag. More... | |
bool | isVisible () const |
Returns whether the node is visible. More... | |
bool | getVisible () const |
Returns whether the node is visible. | |
bool | getVisibilityFlag () const |
Returns the visibility flag. More... | |
void | setVisibilityFlag (bool flag) |
Sets the visibility flag. More... | |
bool | isHighlighted () const |
Returns whether the node is highlighted. More... | |
bool | getHighlightingFlag () const |
Returns the highlighting flag. More... | |
void | setHighlightingFlag (bool flag) |
Sets the highlighting flag. More... | |
void | connectBaseSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBBaseEvent *)=0) |
Connects the base signal to a slot. More... | |
bool | baseSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *)) const |
Returns true when the base signal is connected to a slot. | |
void | disconnectBaseSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *)) |
Disconnects the base signal from a slot. | |
virtual void | getNodes (SBNodeIndexer &nodeIndexer, const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) |
Collects nodes into nodeIndexer , based on a selectionPredicate and a visitPredicate , with our without dependencies. More... | |
unsigned int | countNodes (const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) |
Collects nodes into nodeIndexer , based on a selectionPredicate and a visitPredicate , with our without dependencies. More... | |
virtual void | forEachNodeDepthFirst (void(*action)(SBDDataGraphNode *node)) |
Performs an action on each node. | |
virtual void | forEachNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node)) |
Performs an action on each node. | |
bool | addMaterial (SBDDataGraphNodeMaterial *material) |
Adds a material. More... | |
bool | removeMaterial () |
Removes the material. More... | |
SBDDataGraphNodeMaterial * | getMaterial () const |
Returns the material. More... | |
SBDDataGraphNode * | getMaterialOwner () const |
Returns the node whose material is inherited. More... | |
Public Member Functions inherited from SBCReferenceTarget | |
SBCReferenceTarget () | |
virtual | ~SBCReferenceTarget () |
unsigned int | getMemoryFootprint () const |
void | printReferencesToOwners () const |
Static Public Member Functions inherited from SBDDataGraphNode | |
static SBDDataGraphNode * | getNode (unsigned int nodeIndex) |
Returns the unique node corresponding to the node index nodeIndex . More... | |
static std::string | getTypeString (Type type) |
Returns a string describing the type of the data graph node. More... | |
static void | forEachNodeInSelection (SBNodeIndexer &nodeIndexer, void(*action)(SBDDataGraphNode *node)) |
Performs an action for each node in a selection. | |
static void | forEachNodeInSelection (SBNodeIndexer &nodeIndexer, SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node)) |
Performs an action for each node in a selection. | |
Protected Member Functions inherited from SBMInteractionModel | |
void | setEnergy (const SBQuantity::energy &newEnergy) |
Sets the energy of the interaction model. | |
virtual void | emitInteractionSignal (SBInteractionEvent *event) |
Protected Member Functions inherited from SBMModel | |
SBMModel () | |
Builds a model. | |
SBMModel (SBMModelData *dataPointer) | |
Builds a model. | |
Protected Member Functions inherited from SBDDataGraphNode | |
SBDDataGraphNode () | |
Builds a data graph node. More... | |
SBDDataGraphNode (SBDDataGraphNodeData *dataPointer) | |
Builds a data graph node. | |
virtual | ~SBDDataGraphNode () |
Destroys the node. More... | |
Protected Attributes inherited from SBMInteractionModel | |
SBQuantity::energy * | energy |
SBSignal1< SBInteractionEvent * > * | interactionSignal |