Panda3D
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
BoundingBox Class Reference

An axis-aligned bounding box; that is, a minimum and maximum coordinate triple. More...

Inheritance diagram for BoundingBox:
FiniteBoundingVolume GeometricBoundingVolume BoundingVolume TypedReferenceCount TypedObject ReferenceCount

Public Member Functions

 __init__ ()
 Constructs an empty box object. More...
 
 __init__ (const LPoint3 min, const LPoint3 max)
 Constructs a specific box object. More...
 
int getNumPlanes ()
 Returns 6: the number of faces of a rectangular solid. More...
 
int getNumPoints ()
 Returns 8: the number of vertices of a rectangular solid. More...
 
LPlane getPlane (int n)
 Returns the nth face of the rectangular solid. More...
 
list getPlanes ()
 
LPoint3 getPoint (int n)
 Returns the nth vertex of the rectangular solid. More...
 
list getPoints ()
 
 operator new (int size)
 
 setMinMax (const LPoint3 min, const LPoint3 max)
 Sets the min and max point of the rectangular solid. More...
 
- Public Member Functions inherited from FiniteBoundingVolume
LPoint3 getMax ()
 
LPoint3 getMin ()
 
float getVolume ()
 
- Public Member Functions inherited from GeometricBoundingVolume
int contains (const GeometricBoundingVolume vol)
 Returns the appropriate set of IntersectionFlags to indicate the amount of intersection with the indicated volume. More...
 
int contains (const LPoint3 point)
 Returns the appropriate set of IntersectionFlags to indicate the amount of intersection with the indicated point. More...
 
int contains (const LPoint3 a, const LPoint3 b)
 Returns the appropriate set of IntersectionFlags to indicate the amount of intersection with the indicated line segment. More...
 
bool extendBy (const GeometricBoundingVolume vol)
 Increases the size of the volume to include the given volume. More...
 
bool extendBy (const LPoint3 point)
 Increases the size of the volume to include the given point. More...
 
LPoint3 getApproxCenter ()
 
 xform (const LMatrix4 mat)
 
- Public Member Functions inherited from BoundingVolume
int contains (const BoundingVolume vol)
 Returns the appropriate set of IntersectionFlags to indicate the amount of intersection with the indicated volume. More...
 
bool extendBy (const BoundingVolume vol)
 Increases the size of the volume to include the given volume. More...
 
bool isEmpty ()
 Any kind of volume might be empty. More...
 
bool isInfinite ()
 The other side of the empty coin is an infinite volume. More...
 
BoundingVolume makeCopy ()
 
 output (Ostream out)
 
 setInfinite ()
 Marks the volume as infinite, even if it is normally finite. More...
 
 write (Ostream out, int indent_level)
 
- Public Member Functions inherited from TypedObject
TypeHandle getType ()
 
int getTypeIndex ()
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
 
bool isExactType (TypeHandle handle)
 Returns true if the current object is the indicated type exactly. More...
 
bool isOfType (TypeHandle handle)
 Returns true if the current object is or derives from the indicated type. More...
 
- Public Member Functions inherited from ReferenceCount
int getRefCount ()
 Returns the current reference count. More...
 
 ref ()
 Explicitly increments the reference count. More...
 
bool testRefCountIntegrity ()
 Does some easy checks to make sure that the reference count isn't completely bogus. More...
 
bool testRefCountNonzero ()
 Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
 
bool unref ()
 Explicitly decrements the reference count. More...
 

Static Public Member Functions

static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from FiniteBoundingVolume
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from GeometricBoundingVolume
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from BoundingVolume
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedReferenceCount
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle getClassType ()
 
- Static Public Member Functions inherited from ReferenceCount
static TypeHandle getClassType ()
 

Public Attributes

LPlane planes []
 
LPoint3 points []
 
- Public Attributes inherited from FiniteBoundingVolume
LPoint3 max
 
LPoint3 min
 
float volume
 
- Public Attributes inherited from TypedObject
TypeHandle type
 Returns the TypeHandle representing this object's type. More...
 
- Public Attributes inherited from ReferenceCount
int ref_count
 The current reference count. More...
 

Additional Inherited Members

- Public Types inherited from BoundingVolume
enum  BoundsType {
  BT_default = 0, BT_best = 1, BT_sphere = 2, BT_box = 3,
  BT_fastest = 4
}
 
enum  IntersectionFlags {
  IF_no_intersection = 0, IF_possible = 1, IF_some = 2, IF_all = 4,
  IF_dont_understand = 8
}
 

Detailed Description

An axis-aligned bounding box; that is, a minimum and maximum coordinate triple.

This box is always axis-aligned. If you need a more general bounding box, try BoundingHexahedron.

Member Function Documentation

◆ __init__() [1/2]

__init__ ( )

Constructs an empty box object.

◆ __init__() [2/2]

__init__ ( const LPoint3  min,
const LPoint3  max 
)

Constructs a specific box object.

◆ getClassType()

static TypeHandle getClassType ( )
static

◆ getNumPlanes()

int getNumPlanes ( )

Returns 6: the number of faces of a rectangular solid.

◆ getNumPoints()

int getNumPoints ( )

Returns 8: the number of vertices of a rectangular solid.

◆ getPlane()

LPlane getPlane ( int  n)

Returns the nth face of the rectangular solid.

◆ getPlanes()

list getPlanes ( )

◆ getPoint()

LPoint3 getPoint ( int  n)

Returns the nth vertex of the rectangular solid.

◆ getPoints()

list getPoints ( )

◆ operator new()

operator new ( int  size)

◆ setMinMax()

setMinMax ( const LPoint3  min,
const LPoint3  max 
)

Sets the min and max point of the rectangular solid.

Member Data Documentation

◆ planes

LPlane planes[]

◆ points

LPoint3 points[]