12 #include <libvecmat_float.h>
13 #include <bdiFarPosition.h>
14 #include <bdi_simple_templates.h>
22 class bdiCfgEntryLine;
47 virtual void setPosition(
double x,
double y,
double z);
50 virtual void setRadius(
float radius);
53 virtual void setRadius(
float radius_x,
float radius_y,
float radius_z);
55 virtual void setRotation(
float angle,
float x,
float y,
float z);
58 virtual void collide(
const bdiFarPosition& system_pos,
const bdiVec3f& planeNormal,
62 virtual void render_into_vbo(
const bdiFarPosition& eyePoint,
const bdiMat4f& geocentricMat,
63 bdiVec3fArray& verts, bdiVec4fArray& colors)
const;
79 virtual void read_cfg_line(bdiCfgEntryLine* cfg_entry_line);
82 virtual bdiCfgEntryLine* create_cfg_line();
84 virtual bdiCfgEntry* create_cfg_entry();
86 virtual void read_cfg_entry(bdiCfgEntry* entry);
89 const bdiFarPosition&
point()
const {
return m_point; }
92 float radius()
const {
return m_radius; }
95 const bdiVec3f&
normal()
const {
return m_normal; }
128 #ifdef LIBBDIOBJECT_ARRAY_TYPE
129 #undef LIBBDIOBJECT_ARRAY_TYPE
131 #ifdef LIBBDIOBJECT_ARRAY_CLASS_NAME
132 #undef LIBBDIOBJECT_ARRAY_CLASS_NAME
134 #ifdef LIBBDIOBJECT_ARRAY_DECLSPEC_bdiutil
135 #undef LIBBDIOBJECT_ARRAY_DECLSPEC_bdiutil
138 #define LIBBDIOBJECT_ARRAY_TYPE makVrv::DtFxCollisionObject
139 #define LIBBDIOBJECT_ARRAY_CLASS_NAME DtFxCollisionObjectArray
140 #define LIBBDIOBJECT_ARRAY_INLINE
141 #define LIBBDIOBJECT_ARRAY_DISABLE_BOUNDS_CHECKING
144 # ifdef vrvFx_EXPORTS
145 # define BDI_DECLSPEC_custom __declspec ( dllexport )
147 # define BDI_DECLSPEC_custom __declspec ( dllimport )
154 #undef LIBBDIOBJECT_ARRAY_DISABLE_BOUNDS_CHECKING
155 #undef LIBBDIOBJECT_ARRAY_INLINE
156 #undef LIBBDIOBJECT_ARRAY_TYPE
157 #undef LIBBDIOBJECT_ARRAY_CLASS_NAME
159 #ifdef LIBBDIOBJECT_ARRAY_TYPE
160 #undef LIBBDIOBJECT_ARRAY_TYPE
162 #ifdef LIBBDIOBJECT_ARRAY_CLASS_NAME
163 #undef LIBBDIOBJECT_ARRAY_CLASS_NAME
165 #ifdef LIBBDIOBJECT_ARRAY_DECLSPEC_bdiutil
166 #undef LIBBDIOBJECT_ARRAY_DECLSPEC_bdiutil
Definition: DtFxCollisionObject.h:35
bdiMat4f myQuatMatrix
Definition: DtFxCollisionObject.h:123
bool globalObject() const
is this a global collision object (usually true if not a collision plane)
Definition: DtFxCollisionObject.h:69
a cpu side particle representation
Definition: DtFxParticleSystem.h:329
class that allows clients to add collision objects (no export of virtual base class) ...
Definition: DtFxCollisionVolumeInterface.h:18
bdiVec3f m_normal
The plane's normal.
Definition: DtFxCollisionObject.h:104
bdiMat4f myQuatMatrixInv
Definition: DtFxCollisionObject.h:124
const bdiFarPosition & point() const
center of object or plane
Definition: DtFxCollisionObject.h:89
float m_bounce_factor
Coefficient of restitution (or how bouncy the plane is)
Definition: DtFxCollisionObject.h:117
#define DT_DLL_VRVFX
Definition: vrvFx.h:20
Contains DLL export macros.
const bdiVec3f & normal() const
plane normal
Definition: DtFxCollisionObject.h:95
bdiFarPosition m_point
A coplanar point within the plane, or center of object.
Definition: DtFxCollisionObject.h:106
bool m_global_object
Definition: DtFxCollisionObject.h:101
bdiMat4f myGeocentricMatrix
Definition: DtFxCollisionObject.h:122
int objectType() const
gets the object type
Definition: DtFxCollisionObject.h:76
bdiVec4f m_quat
results of set rotation
Definition: DtFxCollisionObject.h:114
Definition: bdiQPropTree_subclasses.h:245
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
Contains bdi array class.
void setGlobalObject(bool global)
sets this to be a global object
Definition: DtFxCollisionObject.h:71
float m_radius
sphere size
Definition: DtFxCollisionObject.h:108
float radius() const
sphere radius for bounds check
Definition: DtFxCollisionObject.h:92
bdiVec3f m_ellipsoid_radius
ellipsoid size
Definition: DtFxCollisionObject.h:111
const bdiMat4f & geocentricMatrix() const
current geocentric matrix
Definition: DtFxCollisionObject.h:66
Contains bdi array class.
replaces the PPlane object /ingroup vrvFx
Definition: DtFxCollisionObject.h:30
int m_collision_behavior
Definition: DtFxCollisionObject.h:120
virtual ~DtFxCollisionObject()
DTOR destroys a force.
Definition: DtFxCollisionObject.h:44
Definition: DtFxCollisionObject.h:36
int m_object_type
Definition: DtFxCollisionObject.h:102
ObjectType
Definition: DtFxCollisionObject.h:33
void setObjectType(int val)
sets the object type
Definition: DtFxCollisionObject.h:74