VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vantageTerrainImplementation
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
13
#include <
vantageTerrainImplementation/vantageTerrainImplementationDefines.h
>
14
#include <btBulletCollisionCommon.h>
15
#include <
geometry/point.h
>
16
#include <
geometry/chordIntersectionRecord.h
>
17
#include <matrix/vlVector.h>
18
#include <list>
19
#include <
geometry/surface.h
>
20
#include <
terrainInterface/terrainPagingGeometry.h
>
21
#include "tbb/spin_rw_mutex.h"
22
23
class
DtChord
;
24
class
DtSphere
;
25
class
DtLocalVertexList
;
26
class
DtChordIntersectRecordList
;
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
54
bool
shapeSphereVolumetricIntersect
(
const
Coordinate_System
*,
const
DtLocalVertexList
& shape,
55
const
DtSphere
& sphere);
56
60
bool
geometrySphereVolumetricIntersect
(
const
Coordinate_System
*,
DtTerrainPagingGeometryPtr
geometry,
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
;
75
DtChordIntersectRecordList
&
myResultList
;
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
;
88
DtSurface
mySurface
;
89
};
90
91
DtSurface
getSurfaceType
(btCollisionWorld::LocalRayResult& rayResult);
92
Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)