Inherits from CC3NodeBoundingVolume : CC3BoundingVolume : NSObject
Declared in CC3BoundingVolumes.h

Overview

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.

Properties

shouldDraw

Indicates that this bounding volume should draw itself over the node.

@property (nonatomic, assign) BOOL shouldDraw

Discussion

The infinite bounding volume will never be drawn. This property will always return NO, and setting this property will have no effect.

Declared In

CC3BoundingVolumes.h

Instance Methods

doesIntersect:

Returns whether this bounding volume intersects the specfied other bounding volume.

- (BOOL)doesIntersect:(CC3BoundingVolume *)aBoundingVolume

Discussion

This implementation always returns YES.

Declared In

CC3BoundingVolumes.h

doesIntersectConvexHullOf:planes:from:

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.

- (BOOL)doesIntersectConvexHullOf:(GLuint)numOtherPlanes planes:(CC3Plane *)otherPlanes from:(CC3BoundingVolume *)otherBoundingVolume

Discussion

This implementation always returns YES.

Declared In

CC3BoundingVolumes.h

doesIntersectLocation:

Returns whether the specified global location intersects (is inside) this bounding volume.

- (BOOL)doesIntersectLocation:(CC3Vector)aLocation

Discussion

This implementation always returns YES.

Declared In

CC3BoundingVolumes.h

doesIntersectRay:

Returns whether the specified global-coordinate ray intersects this bounding volume.

- (BOOL)doesIntersectRay:(CC3Ray)aRay

Discussion

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.

Declared In

CC3BoundingVolumes.h

doesIntersectSphere:from:

Returns whether the specified global-coordinate sphere intersects this bounding volume.

- (BOOL)doesIntersectSphere:(CC3Sphere)aSphere from:(CC3BoundingVolume *)otherBoundingVolume

Discussion

This implementation always returns YES.

Declared In

CC3BoundingVolumes.h

isInFrontOfPlane:

Returns whether this bounding volume lies completely outside the specified normalized global coordinate plane.

- (BOOL)isInFrontOfPlane:(CC3Plane)aPlane

Discussion

This implementation always returns NO.

Declared In

CC3BoundingVolumes.h