public class Dbvt extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Dbvt.IClone |
static class |
Dbvt.ICollide |
static class |
Dbvt.IWriter |
static class |
Dbvt.Node |
static class |
Dbvt.sStkCLN |
static class |
Dbvt.sStkNN
Stack element
|
static class |
Dbvt.sStkNP |
static class |
Dbvt.sStkNPS |
| Modifier and Type | Field and Description |
|---|---|
static int |
DOUBLE_STACKSIZE |
Dbvt.Node |
free |
int |
leaves |
int |
lkhd |
int |
opath |
Dbvt.Node |
root |
static int |
SIMPLE_STACKSIZE |
| Constructor and Description |
|---|
Dbvt() |
| Modifier and Type | Method and Description |
|---|---|
static int |
allocate(IntArrayList ifree,
ObjectArrayList<Dbvt.sStkNPS> stock,
Dbvt.sStkNPS value) |
void |
clear() |
void |
clone(Dbvt dest) |
void |
clone(Dbvt dest,
Dbvt.IClone iclone) |
static void |
collideKDOP(Dbvt.Node root,
Vector3f[] normals,
float[] offsets,
int count,
Dbvt.ICollide policy) |
static void |
collideOCL(Dbvt.Node root,
Vector3f[] normals,
float[] offsets,
Vector3f sortaxis,
int count,
Dbvt.ICollide policy) |
static void |
collideOCL(Dbvt.Node root,
Vector3f[] normals,
float[] offsets,
Vector3f sortaxis,
int count,
Dbvt.ICollide policy,
boolean fullsort) |
static void |
collideRAY(Dbvt.Node root,
Vector3f origin,
Vector3f direction,
Dbvt.ICollide policy) |
static void |
collideTT(Dbvt.Node root0,
Dbvt.Node root1,
Dbvt.ICollide policy) |
static void |
collideTT(Dbvt.Node root0,
Dbvt.Node root1,
Transform xform,
Dbvt.ICollide policy) |
static void |
collideTT(Dbvt.Node root0,
Transform xform0,
Dbvt.Node root1,
Transform xform1,
Dbvt.ICollide policy) |
static void |
collideTU(Dbvt.Node root,
Dbvt.ICollide policy) |
static void |
collideTV(Dbvt.Node root,
DbvtAabbMm volume,
Dbvt.ICollide policy) |
static int |
countLeaves(Dbvt.Node node) |
boolean |
empty() |
static void |
enumLeaves(Dbvt.Node root,
Dbvt.ICollide policy) |
static void |
enumNodes(Dbvt.Node root,
Dbvt.ICollide policy) |
static void |
extractLeaves(Dbvt.Node node,
ObjectArrayList<Dbvt.Node> leaves) |
Dbvt.Node |
insert(DbvtAabbMm box,
Object data) |
static int |
nearest(IntArrayList i,
ObjectArrayList<Dbvt.sStkNPS> a,
float v,
int l,
int h) |
void |
optimizeBottomUp() |
void |
optimizeIncremental(int passes) |
void |
optimizeTopDown() |
void |
optimizeTopDown(int bu_treshold) |
void |
remove(Dbvt.Node leaf) |
void |
update(Dbvt.Node leaf) |
void |
update(Dbvt.Node leaf,
DbvtAabbMm volume) |
boolean |
update(Dbvt.Node leaf,
DbvtAabbMm volume,
float margin) |
boolean |
update(Dbvt.Node leaf,
DbvtAabbMm volume,
Vector3f velocity) |
boolean |
update(Dbvt.Node leaf,
DbvtAabbMm volume,
Vector3f velocity,
float margin) |
void |
update(Dbvt.Node leaf,
int lookahead) |
void |
write(Dbvt.IWriter iwriter) |
public static final int SIMPLE_STACKSIZE
public static final int DOUBLE_STACKSIZE
public Dbvt.Node root
public Dbvt.Node free
public int lkhd
public int leaves
public int opath
public void clear()
public boolean empty()
public void optimizeBottomUp()
public void optimizeTopDown()
public void optimizeTopDown(int bu_treshold)
public void optimizeIncremental(int passes)
public Dbvt.Node insert(DbvtAabbMm box, Object data)
public void update(Dbvt.Node leaf)
public void update(Dbvt.Node leaf, int lookahead)
public void update(Dbvt.Node leaf, DbvtAabbMm volume)
public boolean update(Dbvt.Node leaf, DbvtAabbMm volume, Vector3f velocity, float margin)
public boolean update(Dbvt.Node leaf, DbvtAabbMm volume, Vector3f velocity)
public boolean update(Dbvt.Node leaf, DbvtAabbMm volume, float margin)
public void remove(Dbvt.Node leaf)
public void write(Dbvt.IWriter iwriter)
public void clone(Dbvt dest)
public void clone(Dbvt dest, Dbvt.IClone iclone)
public static int countLeaves(Dbvt.Node node)
public static void extractLeaves(Dbvt.Node node, ObjectArrayList<Dbvt.Node> leaves)
public static void enumNodes(Dbvt.Node root, Dbvt.ICollide policy)
public static void enumLeaves(Dbvt.Node root, Dbvt.ICollide policy)
public static void collideTT(Dbvt.Node root0, Dbvt.Node root1, Dbvt.ICollide policy)
public static void collideTT(Dbvt.Node root0, Dbvt.Node root1, Transform xform, Dbvt.ICollide policy)
public static void collideTT(Dbvt.Node root0, Transform xform0, Dbvt.Node root1, Transform xform1, Dbvt.ICollide policy)
public static void collideTV(Dbvt.Node root, DbvtAabbMm volume, Dbvt.ICollide policy)
public static void collideRAY(Dbvt.Node root, Vector3f origin, Vector3f direction, Dbvt.ICollide policy)
public static void collideKDOP(Dbvt.Node root, Vector3f[] normals, float[] offsets, int count, Dbvt.ICollide policy)
public static void collideOCL(Dbvt.Node root, Vector3f[] normals, float[] offsets, Vector3f sortaxis, int count, Dbvt.ICollide policy)
public static void collideOCL(Dbvt.Node root, Vector3f[] normals, float[] offsets, Vector3f sortaxis, int count, Dbvt.ICollide policy, boolean fullsort)
public static void collideTU(Dbvt.Node root, Dbvt.ICollide policy)
public static int nearest(IntArrayList i, ObjectArrayList<Dbvt.sStkNPS> a, float v, int l, int h)
public static int allocate(IntArrayList ifree, ObjectArrayList<Dbvt.sStkNPS> stock, Dbvt.sStkNPS value)