hrplib
hrpCollision
SSVTreeCollider.h
Go to the documentation of this file.
1
#ifndef __SSV_TREE_COLLIDER_H__
2
#define __SSV_TREE_COLLIDER_H__
3
4
#include "
config.h
"
5
#include "
Opcode/Opcode.h
"
6
7
using namespace
Opcode
;
8
12
class
HRP_COLLISION_EXPORT
SSVTreeCollider
:
public
AABBTreeCollider
{
13
public
:
17
SSVTreeCollider
();
18
22
~SSVTreeCollider
(){};
23
34
bool
Distance(
BVTCache
& cache,
float
& minD,
Point
&point0,
Point
&point1,
35
const
Matrix4x4
* world0=
null
,
const
Matrix4x4
* world1=
null
);
36
45
bool
Collide(
BVTCache
& cache,
double
tolerance,
46
const
Matrix4x4
* world0=
null
,
const
Matrix4x4
* world1=
null
);
47
48
protected
:
55
float
SsvSsvDist(
const
AABBCollisionNode
* b0,
const
AABBCollisionNode
*b1);
56
65
float
PrimDist(
udword
id0,
udword
id1,
Point
& point0,
Point
& point1);
66
67
private
:
68
void
Distance(
const
AABBCollisionTree
* tree0,
69
const
AABBCollisionTree
* tree1,
70
const
Matrix4x4
* world0,
const
Matrix4x4
* world1,
71
Pair
* cache,
float
& minD,
Point
&point0,
Point
&point1);
72
73
void
_Distance(
const
AABBCollisionNode
* b0,
const
AABBCollisionNode
* b1,
74
float
& minD,
Point
& point0,
Point
& point1);
75
bool
Collide(
const
AABBCollisionTree
* tree0,
76
const
AABBCollisionTree
* tree1,
77
const
Matrix4x4
* world0,
const
Matrix4x4
* world1,
78
Pair
* cache,
double
tolerance);
79
80
bool
_Collide(
const
AABBCollisionNode
* b0,
const
AABBCollisionNode
* b1,
81
double
tolerance);
90
float
PssPssDist(
float
r0,
const
Point
& center0,
float
r1,
const
Point
& center1);
91
101
float
PssLssDist(
float
r0,
const
Point
& center0,
102
float
r1,
const
Point
& point0,
const
Point
& point1);
103
113
float
LssPssDist(
float
r0,
const
Point
& point0,
const
Point
& point1,
114
float
r1,
const
Point
& center0);
115
126
float
LssLssDist(
float
r0,
const
Point
& point0,
const
Point
& point1,
127
float
r1,
const
Point
& point2,
const
Point
& point3);
128
};
129
130
#endif
null
#define null
our own NULL pointer
Definition:
IceTypes.h:57
Opcode::BVTCache
Definition:
Opcode.h:30
Opcode
Definition:
CollisionPairInserterBase.h:18
IceCore::Pair
A generic couple structure.
Definition:
OPC_IceHook.h:17
Opcode::AABBCollisionTree
Definition:
Opcode.h:193
SSVTreeCollider::~SSVTreeCollider
~SSVTreeCollider()
destructor
Definition:
SSVTreeCollider.h:22
IceMaths::Point
Definition:
OPC_IceHook.h:26
udword
unsigned int udword
sizeof(udword) must be 4
Definition:
IceTypes.h:65
HRP_COLLISION_EXPORT
#define HRP_COLLISION_EXPORT
Definition:
Opcode.h:27
Opcode.h
config.h
SSVTreeCollider
collision detector based on SSV(Sphere Swept Volume)
Definition:
SSVTreeCollider.h:12
Opcode::AABBCollisionNode
Definition:
Opcode.h:77
Opcode::AABBTreeCollider
Definition:
Opcode.h:70
IceMaths::Matrix4x4
Definition:
OPC_IceHook.h:22
openhrp3
Author(s): AIST, General Robotix Inc., Nakamura Lab of Dept. of Mechano Informatics at University of Tokyo
autogenerated on Thu Sep 8 2022 02:24:05