HDK
|
#include "SIM_API.h"
#include "SIM_SweptCollisionData.h"
#include <UT/UT_VectorTypes.h>
#include <GA/GA_PageHandle.h>
#include <GU/GU_DetailHandle.h>
#include <vector>
Go to the source code of this file.
Classes | |
struct | SIM_MergedIdentityPoint |
class | SIM_MergeMap |
class | SIM_MergeMapObject |
class | SIM_UnpackedGeometry |
Functions | |
bool | SIMisValidIndex (const int i, const int n) |
void SIM_API | SIMmergePoints (SIM_MergeMap &merged_points, const UT_Array< const GU_Detail * > &gdps) |
void SIM_API | SIMextractTriangleConnectivityMerged (SIM_TriangleConnectivity &triangles, const SIM_MergeMapObject &merged_points, const SIM_UnpackedGeometry &unpacked_geometry, const char *geopath) |
Extract the triangle connectivity for a single object. More... | |
bool SIM_API | SIMgetGeometryAndTransform (const SIM_Geometry *&geometry, UT_DMatrix4 &geometry_to_sim, const SIM_Object &object) |
bool SIM_API | SIMgetGeometryAndTransformAtTime (const SIM_Geometry *&geometry, UT_DMatrix4 &geometry_to_sim, const SIM_Engine &engine, const SIM_Object &undated_object, const SIM_Time &t) |
void SIM_API | SIMreadThicknessPoints (std::vector< fpreal32 > &thickness_points, const SIM_MergeMap &merged_points, const UT_Array< const GU_Detail * > &gdps_end, const fpreal default_thickness) |
fpreal SIM_API | SIMreadBounceParameterObject (const SIM_Object &object, const fpreal default_bounce) |
fpreal SIM_API | SIMreadFrictionParameterObject (const SIM_Object &object, const fpreal default_friction) |
fpreal SIM_API | SIMreadBounceForwardParameterObject (const SIM_Object &object, const fpreal default_bounceforward) |
void SIM_API | SIMreadSweptState (SIM_MergeMap &merged_points, std::vector< SIM_UnpackedGeometry > &unpacked_geometries_end, std::vector< int > &id_objects, std::vector< fpreal32 > *thickness_points, std::vector< fpreal32 > *bounce_points, std::vector< fpreal32 > *friction_points, std::vector< fpreal32 > *bounceforward_points, SIM_PositionPoints &position_points_start, SIM_PositionPoints &position_points_end, SIM_VelocityPoints *velocity_points_end, const SIM_Engine &engine, const std::vector< const SIM_Object * > &objects, const fpreal default_thickness, const fpreal64 t_start, const fpreal64 t_end) |
void SIM_API | SIMreadSweptState (SIM_MergeMap &merged_points, SIM_UnpackedGeometry &unpacked_geo_end, std::vector< fpreal32 > *thickness_points, SIM_PositionPoints &position_points_start, SIM_PositionPoints &position_points_end, SIM_VelocityPoints *velocity_points_end, const GU_Detail *gdp_start, const UT_DMatrix4 &geoxform_start, const GU_Detail *gdp_end, const UT_DMatrix4 &geoxform_end, const fpreal default_thickness, const fpreal64 t_start, const fpreal64 t_end) |
template<typename FLOAT > | |
bool SIM_API | SIMreadSweptState (const SIM_Object *object, GU_Detail *gdp, GA_Range &arange, typename GA_PageHandleScalar< FLOAT >::ROType *thickness_points, typename GA_PageHandleScalar< FLOAT >::ROType *bounce_points, typename GA_PageHandleScalar< FLOAT >::ROType *friction_points, typename GA_PageHandleScalar< FLOAT >::ROType *dynamicfriction_points, typename GA_PageHandleScalar< FLOAT >::ROType *bounceforward_points, typename GA_PageHandleScalar< FLOAT >::ROType *mass_points, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &position_points_start, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &position_points_end, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType *velocity_points_end, fpreal default_thickness) |
void SIM_API | SIMextractTriangleConnectivityMerged (SIM_TriangleConnectivity &triangles, const SIM_MergeMap &merged_points, const std::vector< SIM_UnpackedGeometry > &unpacked_geometries, const std::vector< const SIM_Object * > &objects) |
Extract the triangle connectivity for a set of objects. More... | |
void SIM_API | SIMreadPositionPoints (SIM_PositionPoints &position_points, const SIM_MergeMap &merged_points, const std::vector< UT_DMatrix4 > &transforms, const UT_Array< const GU_Detail * > &gdps) |
void SIM_API | SIMreadVelocityPointsFromAttribute (SIM_VelocityPoints &velocity_points, const SIM_MergeMap &merged_points, const std::vector< UT_DMatrix4 > &transforms, const UT_Array< const GU_Detail * > &gdps) |
void SIM_API | SIMwritePositionAndVelocityPoints (const std::vector< SIM_GeometryCopy * > &geometries, const SIM_MergeMap &merged_points, const SIM_PositionPoints &position_points, const SIM_VelocityPoints &velocity_points, const std::vector< UT_DMatrix4 > &transforms) |
void SIM_API | SIMreadPreviousPositionAttribute (SIM_PositionPoints &position_points, const SIM_MergeMap &merge_map, const std::vector< const SIM_Geometry * > &geometries_end) |
void SIM_API | SIMwritePreviousPositionAttribute (std::vector< SIM_GeometryCopy * > &geometries_end, const SIM_MergeMap &merge_map, const SIM_PositionPoints &position_points) |
template<typename FLOAT > | |
void SIM_API | SIMcreatePreviousPositionAttribute (GU_Detail *gdp, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &prevppos_ph, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &pos_ph) |
template<typename FLOAT > | |
void SIM_API | SIMcopyAttribute (GU_Detail *gdp, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &prevppos_ph, typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType &pos_ph) |
bool SIM_API | SIMdetectCollisionsAndGenerateImpulses (SIM_Impacts *impacts_a, SIM_Impacts *impacts_b, const SIM_Engine &engine, SIM_Object *const undated_object_a, const SIM_Object *const undated_object_b, const SIM_Time &t_start, const SIM_Time &t_end, const int impact_flags, const bool pscaleisradius) |
void SIM_API SIMcopyAttribute | ( | GU_Detail * | gdp, |
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | prevppos_ph, | ||
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | pos_ph | ||
) |
void SIM_API SIMcreatePreviousPositionAttribute | ( | GU_Detail * | gdp, |
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | prevppos_ph, | ||
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | pos_ph | ||
) |
bool SIM_API SIMdetectCollisionsAndGenerateImpulses | ( | SIM_Impacts * | impacts_a, |
SIM_Impacts * | impacts_b, | ||
const SIM_Engine & | engine, | ||
SIM_Object *const | undated_object_a, | ||
const SIM_Object *const | undated_object_b, | ||
const SIM_Time & | t_start, | ||
const SIM_Time & | t_end, | ||
const int | impact_flags, | ||
const bool | pscaleisradius | ||
) |
void SIM_API SIMextractTriangleConnectivityMerged | ( | SIM_TriangleConnectivity & | triangles, |
const SIM_MergeMapObject & | merged_points, | ||
const SIM_UnpackedGeometry & | unpacked_geometry, | ||
const char * | geopath | ||
) |
Extract the triangle connectivity for a single object.
void SIM_API SIMextractTriangleConnectivityMerged | ( | SIM_TriangleConnectivity & | triangles, |
const SIM_MergeMap & | merged_points, | ||
const std::vector< SIM_UnpackedGeometry > & | unpacked_geometries, | ||
const std::vector< const SIM_Object * > & | objects | ||
) |
Extract the triangle connectivity for a set of objects.
bool SIM_API SIMgetGeometryAndTransform | ( | const SIM_Geometry *& | geometry, |
UT_DMatrix4 & | geometry_to_sim, | ||
const SIM_Object & | object | ||
) |
bool SIM_API SIMgetGeometryAndTransformAtTime | ( | const SIM_Geometry *& | geometry, |
UT_DMatrix4 & | geometry_to_sim, | ||
const SIM_Engine & | engine, | ||
const SIM_Object & | undated_object, | ||
const SIM_Time & | t | ||
) |
Definition at line 33 of file SIM_SweptCollisionUtility.h.
void SIM_API SIMmergePoints | ( | SIM_MergeMap & | merged_points, |
const UT_Array< const GU_Detail * > & | gdps | ||
) |
fpreal SIM_API SIMreadBounceForwardParameterObject | ( | const SIM_Object & | object, |
const fpreal | default_bounceforward | ||
) |
fpreal SIM_API SIMreadBounceParameterObject | ( | const SIM_Object & | object, |
const fpreal | default_bounce | ||
) |
fpreal SIM_API SIMreadFrictionParameterObject | ( | const SIM_Object & | object, |
const fpreal | default_friction | ||
) |
void SIM_API SIMreadPositionPoints | ( | SIM_PositionPoints & | position_points, |
const SIM_MergeMap & | merged_points, | ||
const std::vector< UT_DMatrix4 > & | transforms, | ||
const UT_Array< const GU_Detail * > & | gdps | ||
) |
void SIM_API SIMreadPreviousPositionAttribute | ( | SIM_PositionPoints & | position_points, |
const SIM_MergeMap & | merge_map, | ||
const std::vector< const SIM_Geometry * > & | geometries_end | ||
) |
void SIM_API SIMreadSweptState | ( | SIM_MergeMap & | merged_points, |
std::vector< SIM_UnpackedGeometry > & | unpacked_geometries_end, | ||
std::vector< int > & | id_objects, | ||
std::vector< fpreal32 > * | thickness_points, | ||
std::vector< fpreal32 > * | bounce_points, | ||
std::vector< fpreal32 > * | friction_points, | ||
std::vector< fpreal32 > * | bounceforward_points, | ||
SIM_PositionPoints & | position_points_start, | ||
SIM_PositionPoints & | position_points_end, | ||
SIM_VelocityPoints * | velocity_points_end, | ||
const SIM_Engine & | engine, | ||
const std::vector< const SIM_Object * > & | objects, | ||
const fpreal | default_thickness, | ||
const fpreal64 | t_start, | ||
const fpreal64 | t_end | ||
) |
void SIM_API SIMreadSweptState | ( | SIM_MergeMap & | merged_points, |
SIM_UnpackedGeometry & | unpacked_geo_end, | ||
std::vector< fpreal32 > * | thickness_points, | ||
SIM_PositionPoints & | position_points_start, | ||
SIM_PositionPoints & | position_points_end, | ||
SIM_VelocityPoints * | velocity_points_end, | ||
const GU_Detail * | gdp_start, | ||
const UT_DMatrix4 & | geoxform_start, | ||
const GU_Detail * | gdp_end, | ||
const UT_DMatrix4 & | geoxform_end, | ||
const fpreal | default_thickness, | ||
const fpreal64 | t_start, | ||
const fpreal64 | t_end | ||
) |
bool SIM_API SIMreadSweptState | ( | const SIM_Object * | object, |
GU_Detail * | gdp, | ||
GA_Range & | arange, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | thickness_points, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | bounce_points, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | friction_points, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | dynamicfriction_points, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | bounceforward_points, | ||
typename GA_PageHandleScalar< FLOAT >::ROType * | mass_points, | ||
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | position_points_start, | ||
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType & | position_points_end, | ||
typename GA_PageHandleV< UT_Vector3T< FLOAT >>::RWType * | velocity_points_end, | ||
fpreal | default_thickness | ||
) |
void SIM_API SIMreadThicknessPoints | ( | std::vector< fpreal32 > & | thickness_points, |
const SIM_MergeMap & | merged_points, | ||
const UT_Array< const GU_Detail * > & | gdps_end, | ||
const fpreal | default_thickness | ||
) |
void SIM_API SIMreadVelocityPointsFromAttribute | ( | SIM_VelocityPoints & | velocity_points, |
const SIM_MergeMap & | merged_points, | ||
const std::vector< UT_DMatrix4 > & | transforms, | ||
const UT_Array< const GU_Detail * > & | gdps | ||
) |
void SIM_API SIMwritePositionAndVelocityPoints | ( | const std::vector< SIM_GeometryCopy * > & | geometries, |
const SIM_MergeMap & | merged_points, | ||
const SIM_PositionPoints & | position_points, | ||
const SIM_VelocityPoints & | velocity_points, | ||
const std::vector< UT_DMatrix4 > & | transforms | ||
) |
void SIM_API SIMwritePreviousPositionAttribute | ( | std::vector< SIM_GeometryCopy * > & | geometries_end, |
const SIM_MergeMap & | merge_map, | ||
const SIM_PositionPoints & | position_points | ||
) |