#import <CC3BoundingVolumes.h>
Instance Methods | |
(BOOL) | - doesIntersect: |
(BOOL) | - doesIntersectConvexHullOf:planes:from: |
(BOOL) | - doesIntersectLocation: |
(BOOL) | - doesIntersectRay: |
(BOOL) | - doesIntersectSphere:from: |
(BOOL) | - isInFrontOfPlane: |
Instance Methods inherited from CC3NodeBoundingVolume | |
(CCColorRef) | - displayNodeColor |
(CCOpacity) | - displayNodeOpacity |
(BOOL) | - doesIntersectFrustum: |
(CC3Vector) | - locationOfRayIntesection: |
(void) | - markTransformDirty |
(void) | - scaleBy: |
Instance Methods inherited from CC3BoundingVolume | |
(BOOL) | - doesIntersectConvexHullOf:planes: |
(BOOL) | - doesIntersectSphere: |
(NSString *) | - fullDescription |
(CC3Vector) | - globalLocationOfGlobalRayIntesection: |
(void) | - markDirty |
(void) | - populateFrom: |
Properties | |
BOOL | shouldDraw |
Properties inherited from CC3NodeBoundingVolume | |
CC3Vector | centerOfGeometry |
CC3Vector | globalCenterOfGeometry |
BOOL | isTransformDirty |
CC3Node * | node |
BOOL | shouldBuildFromMesh |
BOOL | shouldDraw |
BOOL | shouldMaximize |
Properties inherited from CC3BoundingVolume | |
BOOL | isDirty |
GLuint | planeCount |
CC3Plane * | planes |
BOOL | shouldIgnoreRayIntersection |
BOOL | shouldLogIntersectionMisses |
BOOL | shouldLogIntersections |
GLuint | vertexCount |
CC3Vector * | vertices |
Additional Inherited Members | |
Class Methods inherited from CC3BoundingVolume | |
(id) | + boundingVolume |
A bounding volume that forms a volume of infinite size.
When applied to a node, this volume will always intersect all other bounding volumes, and will always be considered inside the camera's frustum.
Although not useful for collision detection, or testing points and rays, this bounding volume ensures that its node will never be clipped by the camera frustum, and will always be drawn.
This bounding volume can be used for nodes that do not have an easily encapsulated bounding volume, such as certain particle generators. And it can also be useful during the development of new node types that do not use one of the standard bounding volumes.
- (BOOL) doesIntersect: | (CC3BoundingVolume *) | aBoundingVolume |
Returns whether this bounding volume intersects the specfied other bounding volume.
This implementation always returns YES.
Implements CC3BoundingVolume.
- (BOOL) doesIntersectConvexHullOf: | (GLuint) | numOtherPlanes | |
planes: | (CC3Plane *) | otherPlanes | |
from: | (CC3BoundingVolume *) | otherBoundingVolume | |
Returns whether a convex hull composed of the specified global planes intersects this bounding volume.
The planes may be the face planes of a mesh, or they may be the sides of an oriented bounding box (OBB), or frustum, etc.
This implementation always returns YES.
Implements CC3BoundingVolume.
- (BOOL) doesIntersectLocation: | (CC3Vector) | aLocation |
Returns whether the specified global location intersects (is inside) this bounding volume.
This implementation always returns YES.
Implements CC3BoundingVolume.
- (BOOL) doesIntersectRay: | (CC3Ray) | aRay |
Returns whether the specified global-coordinate ray intersects this bounding volume.
This implementation always returns YES, unless the shouldIgnoreRayIntersection property is set to YES, in which case this method will always return NO. See the notes of the shouldIgnoreRayIntersection property for more info.
Implements CC3BoundingVolume.
- (BOOL) doesIntersectSphere: | (CC3Sphere) | aSphere | |
from: | (CC3BoundingVolume *) | otherBoundingVolume | |
Returns whether the specified global-coordinate sphere intersects this bounding volume.
This implementation always returns YES.
Implements CC3BoundingVolume.
- (BOOL) isInFrontOfPlane: | (CC3Plane) | aPlane |
Returns whether this bounding volume lies completely outside the specified normalized global coordinate plane.
This implementation always returns NO.
Implements CC3BoundingVolume.
|
readwritenonatomicassign |
Indicates that this bounding volume should draw itself over the node.
The infinite bounding volume will never be drawn. This property will always return NO, and setting this property will have no effect.