espresso3d.engine.collision.detectors
Class E3DCollisionDetectorBoundingSphere
java.lang.Object
espresso3d.engine.base.E3DEngineItem
espresso3d.engine.collision.detectors.E3DCollisionDetectorSegment
espresso3d.engine.collision.detectors.E3DCollisionDetectorBoundingSphere
- All Implemented Interfaces:
- E3DCollisionDetector
- public class E3DCollisionDetectorBoundingSphere
- extends E3DCollisionDetectorSegment
- implements E3DCollisionDetector
- Author:
- Curt
A fast bounding sphere collision detector.
Fast bounding spheres take less calculation and will hit all cases except that
when an object is sort of parallel to the direction the sphere is moving.
IE: It works with head on collisions where the direction vector goes straight into
a triangle or boundingobject, but not if it runs alongside (but the boundingsphere still intersects to the left/right)
This collision detector will use sourceObject's bounding sphere object to
check for collisions against other triangles or bounding objects.
|
Method Summary |
E3DCollision |
checkFastSphereVsTriangle(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DTriangle triangle)
|
E3DCollision |
checkForCollisionWithBoundingObject(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DBoundingObject boundingObject)
Interface to check the collision between sourceObject and triangle. |
E3DCollision |
checkForCollisionWithTriangle(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DTriangle triangle)
|
E3DCollision |
checkSphereVsBoundingObject(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DBoundingObject boundingObject)
|
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
E3DCollisionDetectorBoundingSphere
public E3DCollisionDetectorBoundingSphere(E3DEngine engine)
checkForCollisionWithTriangle
public E3DCollision checkForCollisionWithTriangle(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DTriangle triangle)
- Specified by:
checkForCollisionWithTriangle in interface E3DCollisionDetector- Overrides:
checkForCollisionWithTriangle in class E3DCollisionDetectorSegment
checkForCollisionWithBoundingObject
public E3DCollision checkForCollisionWithBoundingObject(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DBoundingObject boundingObject)
- Description copied from interface:
E3DCollisionDetector
- Interface to check the collision between sourceObject and triangle.
- Specified by:
checkForCollisionWithBoundingObject in interface E3DCollisionDetector- Overrides:
checkForCollisionWithBoundingObject in class E3DCollisionDetectorSegment
checkFastSphereVsTriangle
public E3DCollision checkFastSphereVsTriangle(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DTriangle triangle)
checkSphereVsBoundingObject
public E3DCollision checkSphereVsBoundingObject(E3DCollisionDetectableObject sourceObject,
E3DVector3F startPos,
E3DVector3F endPos,
E3DBoundingObject boundingObject)