VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
bulletUtil.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <btBulletCollisionCommon.h>
15 #include <geometry/point.h>
17 #include <matrix/vlVector.h>
18 #include <list>
19 #include <geometry/surface.h>
21 #include "tbb/spin_rw_mutex.h"
22 
23 class DtChord;
24 class DtSphere;
25 class DtLocalVertexList;
27 class Coordinate_System;
28 
30 
31 btVector3 DtPoint2btVector3(const DtPoint& p);
32 btVector3 DtVector2btVector3(const DtVector& v);
33 DtPoint btVector32DtPoint(const btVector3& v);
34 DtVector btVector32DtVector(const btVector3& v);
35 bool btVectorIsZero(const btVector3& v);
37 
41 bool chordSphereVolumetricIntersect(const DtChord& chord,
42  const DtSphere& sphere);
43 
46 bool sphereSphereVolumetricIntersect(const DtSphere& sphere1,
47  const DtSphere& sphere2);
48 
55  const DtSphere& sphere);
56 
61  const DtSphere& sphere);
62 
65 struct DtAllHitsRayResultCallback : public btCollisionWorld::RayResultCallback
66 {
67  DtAllHitsRayResultCallback(const btVector3& rayFromWorld,const btVector3& rayToWorld,
68  DtChordIntersectRecordList& resultList);
69 
70  virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult& rayResult,bool normalInWorldSpace);
71  virtual bool needsCollision(btBroadphaseProxy* proxy0) const;
72 
73  btVector3 m_rayFromWorld;
74  btVector3 m_rayToWorld;
76 };
77 
78 struct DtClosestRayResultCallback : public btCollisionWorld::ClosestRayResultCallback
79 {
80  DtClosestRayResultCallback(const btVector3& rayFromWorld,const btVector3& rayToWorld);
81  //virtual btScalar addSingleResult(btCollisionWorld::LocalRayResult& rayResult,bool normalInWorldSpace);
82  virtual bool needsCollision(btBroadphaseProxy* proxy0) const;
83 
84  virtual btScalar addSingleResult(
85  btCollisionWorld::LocalRayResult& rayResult,bool normalInWorldSpace);
86 
87  unsigned myHitCounter;
89 };
90 
91 DtSurface getSurfaceType(btCollisionWorld::LocalRayResult& rayResult);
92 

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)