#include "SIM_API.h"#include "SIM_Data.h"#include "SIM_DataFilter.h"#include "SIM_Time.h"#include "SIM_Names.h"#include <GEO/GEO_Primitive.h>#include <UT/UT_SysSpecific.h>#include <UT/UT_RefArray.h>Go to the source code of this file.
Classes | |
| class | sim_EdgeDataEntry |
| Information about a single edge. More... | |
Defines | |
| #define | SIM_DATA_CAST(Data, DataClass) |
| #define | SIM_DATA_CASTCONST(Data, DataClass) |
| #define | SIM_DATA_GET(Parent, DataName, DataClass) SIM_DATA_CAST((Parent).getNamedSubData(DataName), DataClass) |
| #define | SIM_DATA_GETCONST(Parent, DataName, DataClass) SIM_DATA_CASTCONST((Parent).getConstNamedSubData(DataName), DataClass) |
| #define | SIM_DATA_GETNTH(Parent, DataClass, N, StartFrom, RecurseFilter) |
| #define | SIM_DATA_GETNTHCONST(Parent, DataClass, N, StartFrom, RecurseFilter) |
| #define | SIM_DATA_CREATE(Parent, DataName, DataClass, Flags) |
| #define | SIM_DATA_GETORCREATE_ALT(Parent, DataName, DataClass) |
Typedefs | |
| typedef UT_RefArray < sim_EdgeDataEntry > | SIM_EdgeData |
Functions | |
| template<class DataClass > | |
| void | SIMconvertConstArray (const SIM_ConstDataArray &src, UT_PtrArray< const DataClass * > &dest, const char *DataClassName, bool includenulls=false) |
| template<class DataClass > | |
| void | SIMconvertArray (const SIM_DataArray &src, UT_PtrArray< DataClass * > &dest, const char *DataClassName, bool includenulls=false) |
| SIM_API void | SIMgetPositionTransform (UT_DMatrix4 &result, const SIM_Object &) |
| SIM_API void | SIMgetGeometryTransform (UT_DMatrix4 &result, const SIM_Object &) |
| SIM_API void | SIMgetObjectProperties (const SIM_Object &obj, const UT_Vector3 &pos, const int ptnum, fpreal &friction, fpreal &bounce, fpreal &dynamicfriction) |
| Returns object properties at the given point (if non-negative) or position. | |
| SIM_API bool | SIMisTri (const GEO_Primitive &prim) |
| SIM_API void | SIMcalcEdgeData (SIM_EdgeData &edgeData, const GU_Detail &gdp) |
| DLLEXPORT void | initializeSIM (void *data) |
| SIM_API void | initializeSIM () |
| SIM_API void | SIMbuildAnchorGuideObjectLink (GU_Detail *gdp, GEO_Point *pt, const SIM_Object &object, const SIM_Options &options, const SIM_Relationship &rel) |
| Constructs guide geometry to illustrate connection between an anchored. | |
| #define SIM_DATA_CAST | ( | Data, | |||
| DataClass | ) |
Value:
((DataClass *)(SIM_Data::castPointerToType( \ static_cast<SIM_Data *>(Data), #DataClass)))
Definition at line 33 of file SIM_Utils.h.
| #define SIM_DATA_CASTCONST | ( | Data, | |||
| DataClass | ) |
Value:
((const DataClass *)(SIM_Data::castConstPointerToType( \ static_cast<const SIM_Data *>(Data), #DataClass)))
Definition at line 39 of file SIM_Utils.h.
| #define SIM_DATA_CREATE | ( | Parent, | |||
| DataName, | |||||
| DataClass, | |||||
| Flags | ) |
Value:
((DataClass *)(static_cast<SIM_Data &>(Parent)). \
createNamedSubData(DataName, #DataClass, Flags))
Definition at line 68 of file SIM_Utils.h.
| #define SIM_DATA_GET | ( | Parent, | |||
| DataName, | |||||
| DataClass | ) | SIM_DATA_CAST((Parent).getNamedSubData(DataName), DataClass) |
This macro simplifies the calling and casting the return value from SIM_Data::getNamedSubData(). The returned value is a DataClass pointer.
Definition at line 45 of file SIM_Utils.h.
| #define SIM_DATA_GETCONST | ( | Parent, | |||
| DataName, | |||||
| DataClass | ) | SIM_DATA_CASTCONST((Parent).getConstNamedSubData(DataName), DataClass) |
This macro simplifies the calling and casting the return value from SIM_Data::getConstNamedSubData(). The returned value is a const DataClass pointer.
Definition at line 50 of file SIM_Utils.h.
| #define SIM_DATA_GETNTH | ( | Parent, | |||
| DataClass, | |||||
| N, | |||||
| StartFrom, | |||||
| RecurseFilter | ) |
Value:
SIM_DATA_CAST((Parent).getNthSubData( \ NULL, SIM_DataFilterByType(#DataClass), N, \ StartFrom, RecurseFilter), DataClass)
Definition at line 55 of file SIM_Utils.h.
| #define SIM_DATA_GETNTHCONST | ( | Parent, | |||
| DataClass, | |||||
| N, | |||||
| StartFrom, | |||||
| RecurseFilter | ) |
Value:
SIM_DATA_CASTCONST((Parent).getNthConstSubData( \ NULL, SIM_DataFilterByType(#DataClass), N, \ StartFrom, RecurseFilter), DataClass)
Definition at line 62 of file SIM_Utils.h.
| #define SIM_DATA_GETORCREATE_ALT | ( | Parent, | |||
| DataName, | |||||
| DataClass | ) |
Value:
SIM_DATA_CAST((Parent).getOrCreateAlternateRepresentation( \ DataName, #DataClass), DataClass)
Definition at line 74 of file SIM_Utils.h.
| typedef UT_RefArray<sim_EdgeDataEntry> SIM_EdgeData |
Definition at line 171 of file SIM_Utils.h.
| SIM_API void initializeSIM | ( | ) |
Call this initialization function to register all data types, solvers, and colliders in this library.
| DLLEXPORT void initializeSIM | ( | void * | ) |
Declaration of the function that must be implemented by custom SIM library extensions.
This is the hook that Houdini grabs from the dll to link in this. As such, it merely has to implement the data factory for this node.
Definition at line 37 of file SIM_ElectricalProperties.C.
| SIM_API void SIMbuildAnchorGuideObjectLink | ( | GU_Detail * | gdp, | |
| GEO_Point * | pt, | |||
| const SIM_Object & | object, | |||
| const SIM_Options & | options, | |||
| const SIM_Relationship & | rel | |||
| ) |
Constructs guide geometry to illustrate connection between an anchored.
| SIM_API void SIMcalcEdgeData | ( | SIM_EdgeData & | edgeData, | |
| const GU_Detail & | gdp | |||
| ) |
Calculate information about triangle edges in the given gdp. This is intended as a lightweight alternative to GQ_Detail, with only very basic edge information.
| void SIMconvertArray | ( | const SIM_DataArray & | src, | |
| UT_PtrArray< DataClass * > & | dest, | |||
| const char * | DataClassName, | |||
| bool | includenulls = false | |||
| ) | [inline] |
This function converts SIM_Data pointers in an array to pointers of any SIM_Data subclass. If one of the SIM_Data pointers cannot be cast to the requested new type, it is not added to the new array.
Definition at line 107 of file SIM_Utils.h.
| void SIMconvertConstArray | ( | const SIM_ConstDataArray & | src, | |
| UT_PtrArray< const DataClass * > & | dest, | |||
| const char * | DataClassName, | |||
| bool | includenulls = false | |||
| ) | [inline] |
This function converts const SIM_Data pointers in an array to pointers of any const SIM_Data subclass. If one of the SIM_Data pointers cannot be cast to the requested new type, it is not added to the new array.
Definition at line 83 of file SIM_Utils.h.
| SIM_API void SIMgetGeometryTransform | ( | UT_DMatrix4 & | result, | |
| const SIM_Object & | ||||
| ) |
A utility method for computing the transform from the local-space of an object's geometry to world-space co-ordinates.
| SIM_API void SIMgetObjectProperties | ( | const SIM_Object & | obj, | |
| const UT_Vector3 & | pos, | |||
| const int | ptnum, | |||
| fpreal & | friction, | |||
| fpreal & | bounce, | |||
| fpreal & | dynamicfriction | |||
| ) |
Returns object properties at the given point (if non-negative) or position.
| SIM_API void SIMgetPositionTransform | ( | UT_DMatrix4 & | result, | |
| const SIM_Object & | ||||
| ) |
A utility method for computing the transform from the local-space of an object to world-space co-ordinates.
| SIM_API bool SIMisTri | ( | const GEO_Primitive & | prim | ) |
Returns true if the given primitive is a polygon with three vertices.
1.5.9