physics
Class DefaultCollisionHandler

java.lang.Object
  extended byphysics.DefaultCollisionHandler
All Implemented Interfaces:
CollisionHandler

public class DefaultCollisionHandler
extends java.lang.Object
implements CollisionHandler

Implementierung der CollisionHandler Schnittstelle welche die Geometrien der Objekte auf Kollisionen prüft.

Version:
1.0 (2005/04/25)
Author:
Martin Hedler

Constructor Summary
DefaultCollisionHandler(javax.media.j3d.BranchGroup bg, boolean throwCapExc)
          Erstellt eine Instanz dieser Klasse.
 
Method Summary
 void getAllCollisions(java.util.ArrayList dynTraGrpList, java.util.ArrayList collisionList)
          Liefert eine Liste aller zum Zeitpunkt des Aufrufes bestehenden Kollisionen der registrierten Objekte mit Objekten der registrierten BranchGroup zurück.
 void getCollisions(javax.media.j3d.Group dyTrGrp, java.util.ArrayList collisionList)
          Liefert eine Liste aller zum Zeitpunkt des Aufrufes bestehenden Kollisionen des übergebenen Objekts mit Objekten der registrierten BranchGroup zurück.
static void setNeededCapabilities(javax.media.j3d.Group group)
          Setzt die benötigten Capability-Flags von group, damit diese für die Kollision herangezogen wird.
static void setNeededCapabilities(javax.media.j3d.Shape3D shape)
          Setzt die benötigten Capability-Flags von shape, damit dieses für die Kollision herangezogen wird.
 void setRootBranchGroup(javax.media.j3d.BranchGroup bg)
          Setzt die BranchGroup, deren Kindknoten auf Kollisionen mit den in getAllCollisions(ArrayList, ArrayList) und getCollisions(Group, ArrayList) übergebenen Group Objekten geprüft werden sollen.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultCollisionHandler

public DefaultCollisionHandler(javax.media.j3d.BranchGroup bg,
                               boolean throwCapExc)
Erstellt eine Instanz dieser Klasse.

Parameters:
bg - Die BranchGroup, deren Objekte auf Kollisionen mit den in getAllCollisions(ArrayList, ArrayList) und getCollisions(Group, ArrayList) übergebenen Objekten geprüft werden sollen.
throwCapExc - true, wenn CapabilityNotSetExceptions geworfen werden sollen oder false, wenn diese ignoriert werden sollen.
Method Detail

setNeededCapabilities

public static void setNeededCapabilities(javax.media.j3d.Group group)
Setzt die benötigten Capability-Flags von group, damit diese für die Kollision herangezogen wird.

Parameters:
group - Der Group Knoten, dessen Capability-Flags gesetzt werden sollen.

setNeededCapabilities

public static void setNeededCapabilities(javax.media.j3d.Shape3D shape)
Setzt die benötigten Capability-Flags von shape, damit dieses für die Kollision herangezogen wird.

Parameters:
shape - Der Shape3D Knoten, dessen Capability-Flags gesetzt werden sollen.

getAllCollisions

public void getAllCollisions(java.util.ArrayList dynTraGrpList,
                             java.util.ArrayList collisionList)
Description copied from interface: CollisionHandler
Liefert eine Liste aller zum Zeitpunkt des Aufrufes bestehenden Kollisionen der registrierten Objekte mit Objekten der registrierten BranchGroup zurück.

Specified by:
getAllCollisions in interface CollisionHandler
Parameters:
dynTraGrpList - Liste von Group Objekten, welche auf Kollisionen mit Objekten der registrierten BranchGroup geprüft werden sollen.
collisionList - Liste, in welche die Collision Objekte geschrieben werden.
See Also:
Collision

getCollisions

public void getCollisions(javax.media.j3d.Group dyTrGrp,
                          java.util.ArrayList collisionList)
Description copied from interface: CollisionHandler
Liefert eine Liste aller zum Zeitpunkt des Aufrufes bestehenden Kollisionen des übergebenen Objekts mit Objekten der registrierten BranchGroup zurück.

Specified by:
getCollisions in interface CollisionHandler
Parameters:
dyTrGrp - Die Group, die auf Kollisionen geprüft werden soll.
collisionList - Liste, in welche die Collision Objekte geschrieben werden.
See Also:
Collision

setRootBranchGroup

public void setRootBranchGroup(javax.media.j3d.BranchGroup bg)
Description copied from interface: CollisionHandler
Setzt die BranchGroup, deren Kindknoten auf Kollisionen mit den in CollisionHandler.getAllCollisions(ArrayList, ArrayList) und CollisionHandler.getCollisions(Group, ArrayList) übergebenen Group Objekten geprüft werden sollen.

Specified by:
setRootBranchGroup in interface CollisionHandler
Parameters:
bg - Die zu überprüfenden BranchGroup.