PF_API 0.52
Classes | Enumerations | Variables

OpenSkyNet::CD Namespace Reference

Collision volume data and collision detection methods. More...

Classes

class  Grid
struct  HitInfo
struct  Shape
struct  Sphere
struct  Box
struct  Plane
class  Collidable
class  Volume

Enumerations

enum  DIRECTION {
  NONE, NEG_X, POS_X, NEG_Y,
  POS_Y, NEG_Z, POS_Z, NEG_X_NEG_Y,
  NEG_X_POS_Y, NEG_X_NEG_Z, NEG_X_POS_Z, POS_X_NEG_Y,
  POS_X_POS_Y, POS_X_NEG_Z, POS_X_POS_Z, NEG_Y_NEG_Z,
  NEG_Y_POS_Z, POS_Y_NEG_Z, POS_Y_POS_Z, NEG_X_NEG_Y_NEG_Z,
  NEG_X_NEG_Y_POS_Z, NEG_X_POS_Y_NEG_Z, NEG_X_POS_Y_POS_Z, POS_X_NEG_Y_NEG_Z,
  POS_X_NEG_Y_POS_Z, POS_X_POS_Y_NEG_Z, POS_X_POS_Y_POS_Z, NONE,
  NEG_X, POS_X, NEG_Y, POS_Y,
  NEG_Z, POS_Z, NEG_X_NEG_Y, NEG_X_POS_Y,
  NEG_X_NEG_Z, NEG_X_POS_Z, POS_X_NEG_Y, POS_X_POS_Y,
  POS_X_NEG_Z, POS_X_POS_Z, NEG_Y_NEG_Z, NEG_Y_POS_Z,
  POS_Y_NEG_Z, POS_Y_POS_Z, NEG_X_NEG_Y_NEG_Z, NEG_X_NEG_Y_POS_Z,
  NEG_X_POS_Y_NEG_Z, NEG_X_POS_Y_POS_Z, POS_X_NEG_Y_NEG_Z, POS_X_NEG_Y_POS_Z,
  POS_X_POS_Y_NEG_Z, POS_X_POS_Y_POS_Z
}
enum  SHAPE_TYPE {
  SPHERE, BOX, PLANE, SPHERE,
  BOX, PLANE
}
enum  DIRECTION {
  NONE, NEG_X, POS_X, NEG_Y,
  POS_Y, NEG_Z, POS_Z, NEG_X_NEG_Y,
  NEG_X_POS_Y, NEG_X_NEG_Z, NEG_X_POS_Z, POS_X_NEG_Y,
  POS_X_POS_Y, POS_X_NEG_Z, POS_X_POS_Z, NEG_Y_NEG_Z,
  NEG_Y_POS_Z, POS_Y_NEG_Z, POS_Y_POS_Z, NEG_X_NEG_Y_NEG_Z,
  NEG_X_NEG_Y_POS_Z, NEG_X_POS_Y_NEG_Z, NEG_X_POS_Y_POS_Z, POS_X_NEG_Y_NEG_Z,
  POS_X_NEG_Y_POS_Z, POS_X_POS_Y_NEG_Z, POS_X_POS_Y_POS_Z, NONE,
  NEG_X, POS_X, NEG_Y, POS_Y,
  NEG_Z, POS_Z, NEG_X_NEG_Y, NEG_X_POS_Y,
  NEG_X_NEG_Z, NEG_X_POS_Z, POS_X_NEG_Y, POS_X_POS_Y,
  POS_X_NEG_Z, POS_X_POS_Z, NEG_Y_NEG_Z, NEG_Y_POS_Z,
  POS_Y_NEG_Z, POS_Y_POS_Z, NEG_X_NEG_Y_NEG_Z, NEG_X_NEG_Y_POS_Z,
  NEG_X_POS_Y_NEG_Z, NEG_X_POS_Y_POS_Z, POS_X_NEG_Y_NEG_Z, POS_X_NEG_Y_POS_Z,
  POS_X_POS_Y_NEG_Z, POS_X_POS_Y_POS_Z
}
enum  SHAPE_TYPE {
  SPHERE, BOX, PLANE, SPHERE,
  BOX, PLANE
}

Variables

Point< int > g_binLookupTable [MAX_X_DIVISIONS_FOR_ALL_GRIDS][MAX_Y_DIVISIONS_FOR_ALL_GRIDS][MAX_Z_DIVISIONS_FOR_ALL_GRIDS]
Gridg_initialGrid = 0
Gridg_subdividedGrids [MAX_GLOBAL_GRID_SUBDIVISIONS]
const Utils::uint MAX_X_DIVISIONS_FOR_ALL_GRIDS = 64
const Utils::uint MAX_Y_DIVISIONS_FOR_ALL_GRIDS = 64
const Utils::uint MAX_Z_DIVISIONS_FOR_ALL_GRIDS = 64

Detailed Description

Collision volume data and collision detection methods.


Enumeration Type Documentation

Directions relative to the Grid axes.

Enumerator:
NONE 
NEG_X 
POS_X 
NEG_Y 
POS_Y 
NEG_Z 
POS_Z 
NEG_X_NEG_Y 
NEG_X_POS_Y 
NEG_X_NEG_Z 
NEG_X_POS_Z 
POS_X_NEG_Y 
POS_X_POS_Y 
POS_X_NEG_Z 
POS_X_POS_Z 
NEG_Y_NEG_Z 
NEG_Y_POS_Z 
POS_Y_NEG_Z 
POS_Y_POS_Z 
NEG_X_NEG_Y_NEG_Z 
NEG_X_NEG_Y_POS_Z 
NEG_X_POS_Y_NEG_Z 
NEG_X_POS_Y_POS_Z 
POS_X_NEG_Y_NEG_Z 
POS_X_NEG_Y_POS_Z 
POS_X_POS_Y_NEG_Z 
POS_X_POS_Y_POS_Z 
NONE 
NEG_X 
POS_X 
NEG_Y 
POS_Y 
NEG_Z 
POS_Z 
NEG_X_NEG_Y 
NEG_X_POS_Y 
NEG_X_NEG_Z 
NEG_X_POS_Z 
POS_X_NEG_Y 
POS_X_POS_Y 
POS_X_NEG_Z 
POS_X_POS_Z 
NEG_Y_NEG_Z 
NEG_Y_POS_Z 
POS_Y_NEG_Z 
POS_Y_POS_Z 
NEG_X_NEG_Y_NEG_Z 
NEG_X_NEG_Y_POS_Z 
NEG_X_POS_Y_NEG_Z 
NEG_X_POS_Y_POS_Z 
POS_X_NEG_Y_NEG_Z 
POS_X_NEG_Y_POS_Z 
POS_X_POS_Y_NEG_Z 
POS_X_POS_Y_POS_Z 

Directions relative to the Grid axes.

Enumerator:
NONE 
NEG_X 
POS_X 
NEG_Y 
POS_Y 
NEG_Z 
POS_Z 
NEG_X_NEG_Y 
NEG_X_POS_Y 
NEG_X_NEG_Z 
NEG_X_POS_Z 
POS_X_NEG_Y 
POS_X_POS_Y 
POS_X_NEG_Z 
POS_X_POS_Z 
NEG_Y_NEG_Z 
NEG_Y_POS_Z 
POS_Y_NEG_Z 
POS_Y_POS_Z 
NEG_X_NEG_Y_NEG_Z 
NEG_X_NEG_Y_POS_Z 
NEG_X_POS_Y_NEG_Z 
NEG_X_POS_Y_POS_Z 
POS_X_NEG_Y_NEG_Z 
POS_X_NEG_Y_POS_Z 
POS_X_POS_Y_NEG_Z 
POS_X_POS_Y_POS_Z 
NONE 
NEG_X 
POS_X 
NEG_Y 
POS_Y 
NEG_Z 
POS_Z 
NEG_X_NEG_Y 
NEG_X_POS_Y 
NEG_X_NEG_Z 
NEG_X_POS_Z 
POS_X_NEG_Y 
POS_X_POS_Y 
POS_X_NEG_Z 
POS_X_POS_Z 
NEG_Y_NEG_Z 
NEG_Y_POS_Z 
POS_Y_NEG_Z 
POS_Y_POS_Z 
NEG_X_NEG_Y_NEG_Z 
NEG_X_NEG_Y_POS_Z 
NEG_X_POS_Y_NEG_Z 
NEG_X_POS_Y_POS_Z 
POS_X_NEG_Y_NEG_Z 
POS_X_NEG_Y_POS_Z 
POS_X_POS_Y_NEG_Z 
POS_X_POS_Y_POS_Z 

All collision detection shape types.

Enumerator:
SPHERE 
BOX 
PLANE 
SPHERE 
BOX 
PLANE 

All collision detection shape types.

Enumerator:
SPHERE 
BOX 
PLANE 
SPHERE 
BOX 
PLANE 

Variable Documentation

This allows for fast access to bins (meaning the Points containing their component dimension indices). Their addresses can be used in hash tables, and it removes the need to construct Points for methods that do not accept the 3 dimensions separately.

There is a limit to divisions to allow for a bin lookup 3D array.

There is a limit to divisions to allow for a bin lookup 3D array.

There is a limit to divisions to allow for a bin lookup 3D array.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines