|
HDK
|
#include <SIM_ForceOrbit.h>
Inheritance diagram for HDK_Sample::SIM_ForceOrbit:Public Member Functions | |
| GETSET_DATA_FUNCS_V3 (SIM_NAME_POINTPOSITION, PointPosition) | |
| Controls the position of the point we are orbiting. More... | |
| GETSET_DATA_FUNCS_F (SIM_NAME_POINTMASS, PointMass) | |
| Controls the mass of the point we are orbiting. More... | |
Public Member Functions inherited from SIM_Force | |
| void | getForce (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const |
| bool | getForceSet (const SIM_Object &object, const UT_Vector3Array &positions, const UT_Vector3Array &velocities, const UT_Vector3Array &angvelocities, const UT_FloatArray &masses, UT_Vector3Array &forces, UT_Vector3Array &torques) const |
| SIM_ForceResolver * | getForceResolver (const SIM_Object &object) const |
| void | getForceOnCircle (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &normal, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const |
| void | getForceOnSphere (const SIM_Object &object, const UT_Vector3 &position, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const |
| void | getForceJacobian (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Matrix &dFdX, UT_Matrix &dFdV) const |
| SIM_ForceSample | getOptimalForceSampling () const |
| void | getPointForces (SIM_PointForceCallback &cb, const SIM_Object &object, const GU_ConstDetailHandle &gdh, const UT_DMatrix4 &geoxform, const SIM_Position *position, const SIM_Motion *motion, bool forcesinworldspace) const |
Public Member Functions inherited from SIM_Data | |
| const UT_StringHolder & | getDataType () const |
| void | initialize (const SIM_SubdataBehavior &subdatabehavior) |
| void | makeEqual (const SIM_Data *source, const SIM_SubdataBehavior &subdatabehavior) |
| void | setParameters (const SIM_Options &parms) |
| void | interpolate (const SIM_Data *source1, const SIM_Data *source2, fpreal interp) |
| int64 | getMemorySize () const |
| bool | getIsAlternateRepresentation () const |
| bool | saveToFile (const char *filename, UT_CompressionType compressionType) const |
| bool | saveToStream (std::ostream &os, UT_CompressionType compressionType) const |
| void | appendFullDataPath (const SIM_Data *subdata, bool useobjectid, UT_String &datapath) const |
| bool | loadFromFile (const char *filename) |
| bool | loadFromStream (UT_IStream &is, bool skiptype=false) |
| bool | getIsOfType (const UT_StringRef &datatype) const |
| const void * | getConstPointerToType (const UT_StringRef &datatype) const |
| void * | getPointerToType (const UT_StringRef &datatype) |
| int | getNumSubData () const |
| Get the number of sub-data items attached to this data. More... | |
| const UT_StringHolder & | getSubDataName (int index) const |
| Get the name of the sub-data at a particular index location. More... | |
| int | getSubDataIndex (const SIM_Data *subdata) const |
| bool | buildSubDataPath (const SIM_Data *subdata, UT_String &pathto) const |
| const SIM_Query & | getQueryObject () const |
| SIM_Options * | getUserOptions () |
| const SIM_Options * | getConstUserOptions () const |
| long | getGuideParmVersion () const |
| void | addGuideDep (DEP_MicroNode &src) const |
| virtual bool | getGuideGeometryList (const SIM_RootData &root, const char *datapath, const SIM_Time &t, UT_Array< GU_ConstDetailHandle > &detailArray, UT_Array< UT_DMatrix4 > &xformArray) const |
| GU_ConstDetailHandle | getGuideGeometry (const SIM_RootData &root, const char *datapath, UT_DMatrix4 &xform, const SIM_Time &t) const |
| void | buildGuideOptions (SIM_Options &options, const SIM_Time &time) const |
| SIM_Data * | getSubData (int index) |
| const SIM_Data * | getConstSubData (int index) const |
| SIM_Data * | getNamedSubData (const char *dataname) |
| const SIM_Data * | getConstNamedSubData (const char *dataname) const |
| void | filterSubData (SIM_DataArray &ncdp, UT_StringArray *names, const SIM_DataFilter &ncfilter, const char *startfrom, const SIM_DataFilter &recursefilter) |
| void | filterConstSubData (SIM_ConstDataArray &dp, UT_StringArray *names, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) const |
| SIM_Data * | getNthSubData (UT_String *name, const SIM_DataFilter &filter, int n, const char *startfrom, const SIM_DataFilter &recurseFilter) |
| const SIM_Data * | getNthConstSubData (UT_String *name, const SIM_DataFilter &filter, int n, const char *startfrom, const SIM_DataFilter &recurseFilter) const |
| void | forEachSubData (SIM_EachDataCallback &cb, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) |
| void | forEachConstSubData (SIM_EachDataCallback &cb, const SIM_DataFilter &filter, const char *startfrom, const SIM_DataFilter &recurseFilter) const |
| SIM_Data * | createNamedSubData (const char *dataname, const char *datatype, int creationflags, UT_String *newdatanameptr=NULL) |
| SIM_Data * | getOrCreateAlternateRepresentation (const char *dataname, const char *datatype) const |
| void | interpolateSubData (const SIM_Data &source1, const SIM_Data &source2, fpreal interp, const SIM_DataFilter &interpdata, const SIM_DataFilter &recurse) |
| void | setNamedSubData (const char *dataname, const SIM_Data *data, int setflags) |
| void | createUniqueSubDataName (const SIM_Data *subdata, UT_String &dataname) const |
| void | removeNamedSubData (const char *dataname) |
| Remove some existing sub-data by name. More... | |
| void | removeSubData (int index) |
| Remove some existing sub-data by index. More... | |
| void | moveNamedSubData (const char *oldname, const char *newname) |
| const UT_Guid & | getUniqueId () const |
| long | getReferenceCount () const |
| int | getCreatorId () const |
| Get the ID of the node that created this data. More... | |
| OP_Node * | getCreatorNode () const |
| Use the creator ID to look up the OP_Node that created this data. More... | |
| OP_Node * | getOwnerNetwork () const |
| Look up the owner node of our engine to get the DOP Network pointer. More... | |
| const SIM_Engine & | getEngine () const |
| Get the engine that created us (from our data factory). More... | |
| int | getCreatorIndex () const |
| Get the output index of the creator node that generated this data. More... | |
| const SIM_Time & | getCreationTime () const |
| Get the creation time for this data. More... | |
| bool | getIsSelected () const |
| Get the selected flag for this data. More... | |
| void | setIsSelected (bool selected) const |
| bool | getSelectionRepresentsObject () const |
| void | copyCreationInfoFrom (const SIM_Data *source) |
| OP_Node & | getNodePathsRelativeTo () const |
| OP_Node * | getOPNode (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return an OBJ_Node. More... | |
| OBJ_Node * | getOBJNode (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return an OBJ_Node. More... | |
| SOP_Node * | getSOPNode (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return a SOP_Node. More... | |
| DOP_Node * | getDOPNode (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return a DOP_Node. More... | |
| COP2_Node * | getCOP2Node (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return a COP2_Node. More... | |
| CHOP_Node * | getCHOPNode (const char *path, bool addinterest) const |
| Given a path relative to our creator node, return a CHOP_Node. More... | |
| void | addOPInterest (OP_Node *node) const |
| Adds an interest in the specified node to our engine's owner node. More... | |
| void | addError (const SIM_RootData *root, int errorcode, const char *errorparm, UT_ErrorSeverity severity) const |
| Adds an error to our SIM_Engine. More... | |
| void | makeMemberDataUnique () |
| virtual void | makeMemberDataUniqueSubclass () |
Public Member Functions inherited from SIM_OptionsUser | |
| SIM_OptionsUser (SIM_Data *owner) | |
| virtual | ~SIM_OptionsUser () |
| void | optionChanged (const char *name) |
| const SIM_Options & | getOptions () const |
Protected Member Functions | |
| SIM_ForceOrbit (const SIM_DataFactory *factory) | |
| ~SIM_ForceOrbit () override | |
| SIM_Guide * | createGuideObjectSubclass () const override |
| void | buildGuideGeometrySubclass (const SIM_RootData &root, const SIM_Options &options, const GU_DetailHandle &gdh, UT_DMatrix4 *xform, const SIM_Time &t) const override |
| We override this method to create the attractor geometry. More... | |
| void | getForceSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const override |
| void | getForceOnCircleSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &normal, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const override |
| void | getForceOnSphereSubclass (const SIM_Object &object, const UT_Vector3 &position, const fpreal radius, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Vector3 &force, UT_Vector3 &torque) const override |
Protected Member Functions inherited from SIM_Force | |
| SIM_Force (const SIM_DataFactory *factory) | |
| ~SIM_Force () override | |
| void | applyNoise (const UT_Vector3 &pos, UT_Vector3 &forceortorque) const |
| void | applyNoise (const UT_Vector3 &pos, UT_Vector3 &force, UT_Vector3 &torque) const |
| void | applyNoiseJacobian (const UT_Vector3 &pos, UT_Matrix &dFdX, UT_Matrix &dFdV) const |
| virtual SIM_ForceResolver * | getForceResolverSubclass (const SIM_Object &object) const |
| virtual bool | getForceSetSubclass (const SIM_Object &object, const UT_Vector3Array &positions, const UT_Vector3Array &velocities, const UT_Vector3Array &angvelocities, const UT_FloatArray &masses, UT_Vector3Array &forces, UT_Vector3Array &torque) const |
| virtual void | getForceJacobianSubclass (const SIM_Object &object, const UT_Vector3 &position, const UT_Vector3 &velocity, const UT_Vector3 &angvel, const fpreal mass, UT_Matrix &dFdX, UT_Matrix &dFdV) const |
| virtual SIM_ForceSample | getOptimalForceSamplingSubclass () const |
Protected Member Functions inherited from SIM_Data | |
| SIM_Data (const SIM_DataFactory *factory) | |
| virtual | ~SIM_Data () |
| void | handleModification (int code=-1) |
| void | setNeedsToRecalculateMemorySize () const |
| void | deleteQueryObjectIfNotBuilding () const |
| Deletes the query object for this data, if there is one. More... | |
| void | deleteGuideObjectIfNotBuilding () const |
| Delete the guide geometry for this data, if it exists. More... | |
| void | initAlternateRepresentation () const |
| void | setNeedsInitialization (bool needsinit) const |
| Flags an alternate representation subdata as requiring initialization. More... | |
| bool | getNeedsInitialization () const |
| Tests whether an alternate representation requires initialization. More... | |
| bool | saveOptionPacket (std::ostream &os, const char *name, const SIM_Options *opts) const |
| bool | loadOptionPacket (UT_IStream &is, const char *name, SIM_Options *opts) const |
| bool | getIsDoingSimplifiedSaveLoad () const |
| void | initializeFromParmDefaults () |
| void | setSelectionRepresentsObject (bool representsobject) |
| virtual void | setNeedsInitializationSubclass (bool needsinit) const |
| virtual void | initializeSubclass () |
| virtual void | makeEqualSubclass (const SIM_Data *source) |
| virtual void | saveSubclass (std::ostream &os) const |
| virtual void | saveIOSubclass (std::ostream &os, SIM_DataThreadedIO *io) const |
| virtual bool | loadSubclass (UT_IStream &is) |
| virtual bool | loadIOSubclass (UT_IStream &is, SIM_DataThreadedIO *io) |
| virtual SIM_Query * | createQueryObjectSubclass () const |
| virtual long | getGuideParmVersionSubclass () const |
| virtual void | setParametersSubclass (const SIM_Options &parms) |
| virtual void | setNamedSubDataSubclass (const char *dataname, const SIM_Data *data) |
| virtual void | removeNamedSubDataSubclass (const char *dataname) |
| virtual void | interpolateSubclass (const SIM_Data *source1, const SIM_Data *source2, fpreal interp) |
| virtual int64 | getMemorySizeSubclass () const |
| virtual void | handleModificationSubclass (int code) |
| virtual bool | getIsAlternateRepresentationSubclass () const |
| virtual void | initAlternateRepresentationSubclass (const SIM_Data &) |
| virtual void * | getCastToType (const UT_StringRef &datatype) const |
| virtual const UT_StringHolder & | getDataTypeSubclass () const |
| const SIM_Data * | getAlternateRepresentationOf () const |
Protected Member Functions inherited from SIM_OptionsUser | |
| SIM_Options & | getOptions () |
| virtual void | optionChangedSubclass (const char *name) |
Additional Inherited Members | |
Public Types inherited from SIM_Force | |
| enum | SIM_ForceSample { SIM_FORCE_SAMPLEPOINT, SIM_FORCE_SAMPLECIRCLE, SIM_FORCE_SAMPLESPHERE } |
Static Public Member Functions inherited from SIM_Data | |
| static bool | getDataTypeFromFile (const char *filename, UT_String &datatype) |
| static bool | getDataTypeFromStream (UT_IStream &is, UT_String &datatype) |
| static const void * | castConstPointerToType (const SIM_Data *data, const UT_StringRef &datatype) |
| static void * | castPointerToType (SIM_Data *data, const UT_StringRef &datatype) |
Static Protected Member Functions inherited from SIM_Data | |
| static const PRM_Template * | getEmptyTemplateList () |
| static const SIM_DopDescription * | getEmptyDopDescription () |
| A DOP description that says not to create an automatic DOP. More... | |
| static void | getDataTypeSuperclasses (UT_StringArray &) |
This is an implementation of the SIM_Force interface. This implementation returns a force value that is proportional to the square of the distance from a point in space (as if there were an infinitely small massive body at that location).
Definition at line 53 of file SIM_ForceOrbit.h.
|
explicitprotected |
Declare a protected constructor to ensure the data factory is used to create new instances of SIM_ForceOrbit.
Definition at line 44 of file SIM_ForceOrbit.C.
|
overrideprotected |
Definition at line 50 of file SIM_ForceOrbit.C.
|
overrideprotectedvirtual |
We override this method to create the attractor geometry.
Reimplemented from SIM_Data.
Definition at line 100 of file SIM_ForceOrbit.C.
|
overrideprotectedvirtual |
Override this to return a SIM_GuideShared as the guide geometry looks the same for all objects.
Reimplemented from SIM_Data.
Definition at line 94 of file SIM_ForceOrbit.C.
|
overrideprotectedvirtual |
Calculates the force on a surface. The force depends only on the mass, so this function simply calls getForceSubclass(), ignoring the circle parameters.
Reimplemented from SIM_Force.
Definition at line 197 of file SIM_ForceOrbit.C.
|
overrideprotectedvirtual |
Calculates the force on a volume. The force depends only on the mass, so this function simply calls getForceSubclass(), ignoring the sphere parameters.
Reimplemented from SIM_Force.
Definition at line 211 of file SIM_ForceOrbit.C.
|
overrideprotectedvirtual |
Calculates the force on a point. The force depends only on the mass of the point.
Reimplemented from SIM_Force.
Definition at line 169 of file SIM_ForceOrbit.C.
| HDK_Sample::SIM_ForceOrbit::GETSET_DATA_FUNCS_F | ( | SIM_NAME_POINTMASS | , |
| PointMass | |||
| ) |
Controls the mass of the point we are orbiting.
| HDK_Sample::SIM_ForceOrbit::GETSET_DATA_FUNCS_V3 | ( | SIM_NAME_POINTPOSITION | , |
| PointPosition | |||
| ) |
Controls the position of the point we are orbiting.