|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectsimbad.sim.PhysicalEngine
public class PhysicalEngine
Centralize resources and algorithms related to physical interactions. Most of this is experimental for the time being.
Field Summary | |
---|---|
private javax.media.j3d.BoundingSphere |
bs1
|
private javax.media.j3d.BoundingSphere |
bs2
|
(package private) double |
epsilonContact
|
protected static float |
g
gravitational acceleration constant in m/s**2 |
private javax.vecmath.Point3d |
p1
|
private javax.vecmath.Point3d |
p2
|
private javax.vecmath.Point3d |
p3
|
private javax.vecmath.Vector3d |
v1
|
private javax.vecmath.Vector3d |
v2
|
private javax.vecmath.Vector3d |
v3
|
private javax.vecmath.Vector3d |
v4
|
private javax.vecmath.Vector3d |
v5
|
Constructor Summary | |
---|---|
PhysicalEngine()
|
Method Summary | |
---|---|
protected void |
checkAgentAgentPairs(double dt,
java.util.ArrayList agents,
boolean computeImpact,
boolean checkCollision)
Check all agents/agent pairs and verify physical interactions and/or collision. |
protected void |
checkAgentObjectPairs(java.util.ArrayList agents,
java.util.ArrayList objects,
boolean computeInteraction,
boolean checkCollision)
Check all agents/static objetc pairs and verify physical interactions and/or collision. |
private void |
computeAgentAgentImpact(SimpleAgent a1,
SimpleAgent a2,
javax.media.j3d.BoundingSphere bs1,
javax.media.j3d.BoundingSphere bs2)
experimental |
private void |
computeAgentObjectImpact(SimpleAgent a,
StaticObject o,
javax.media.j3d.BoundingSphere bsa)
experimental |
protected void |
computeContactNormal(javax.media.j3d.BoundingSphere bs,
javax.media.j3d.BoundingBox bb,
javax.vecmath.Vector3d n)
|
protected void |
computeForces(double dt,
SimpleAgent a)
Compute all external force contributions on an agent before any impact. |
protected boolean |
intersect(javax.media.j3d.BoundingSphere bs,
javax.media.j3d.BoundingBox bb)
|
protected boolean |
intersect(javax.media.j3d.BoundingSphere bs,
StaticObject obj)
|
protected double |
projNormal(double x1,
double y1,
double z1,
double x2,
double y2,
double z2,
double x3,
double y3,
double z3)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final float g
double epsilonContact
private javax.media.j3d.BoundingSphere bs1
private javax.media.j3d.BoundingSphere bs2
private javax.vecmath.Vector3d v1
private javax.vecmath.Vector3d v2
private javax.vecmath.Vector3d v3
private javax.vecmath.Vector3d v4
private javax.vecmath.Vector3d v5
private javax.vecmath.Point3d p1
private javax.vecmath.Point3d p2
private javax.vecmath.Point3d p3
Constructor Detail |
---|
PhysicalEngine()
Method Detail |
---|
protected void computeForces(double dt, SimpleAgent a)
dt
- virtual time elapsed since last call.protected void checkAgentAgentPairs(double dt, java.util.ArrayList agents, boolean computeImpact, boolean checkCollision)
protected void checkAgentObjectPairs(java.util.ArrayList agents, java.util.ArrayList objects, boolean computeInteraction, boolean checkCollision)
private void computeAgentAgentImpact(SimpleAgent a1, SimpleAgent a2, javax.media.j3d.BoundingSphere bs1, javax.media.j3d.BoundingSphere bs2)
private void computeAgentObjectImpact(SimpleAgent a, StaticObject o, javax.media.j3d.BoundingSphere bsa)
protected boolean intersect(javax.media.j3d.BoundingSphere bs, StaticObject obj)
protected boolean intersect(javax.media.j3d.BoundingSphere bs, javax.media.j3d.BoundingBox bb)
protected void computeContactNormal(javax.media.j3d.BoundingSphere bs, javax.media.j3d.BoundingBox bb, javax.vecmath.Vector3d n)
protected double projNormal(double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |