public class ObstacleAvoidanceBehaviour extends AbstractStrengthSteeringBehaviour
Agent#setRadius(float)| Modifier and Type | Class and Description | 
|---|---|
static class  | 
ObstacleAvoidanceBehaviour.ObstacleAvoindanceWithNegativeMinDistance  | 
static class  | 
ObstacleAvoidanceBehaviour.ObstacleAvoindanceWithNoMinTimeToCollision  | 
AbstractStrengthSteeringBehaviour.negativeScalarMultiplierAbstractSteeringBehaviour.IllegalBrakingFactorBehaviour.behaviourNullAgentExceptionvelocity| Constructor and Description | 
|---|
ObstacleAvoidanceBehaviour(Agent agent,
                          java.util.List<Agent> obstacles,
                          float minTimeToCollision)  | 
ObstacleAvoidanceBehaviour(Agent agent,
                          java.util.List<Agent> obstacles,
                          float minTimeToCollision,
                          float minDistance)  | 
ObstacleAvoidanceBehaviour(Agent agent,
                          java.util.List<Agent> obstacles,
                          float minTimeToCollision,
                          float minDistance,
                          com.jme3.scene.Spatial spatial)  | 
ObstacleAvoidanceBehaviour(Agent agent,
                          java.util.List<Agent> obstacles,
                          float minTimeToCollision,
                          com.jme3.scene.Spatial spatial)  | 
| Modifier and Type | Method and Description | 
|---|---|
protected com.jme3.math.Vector3f | 
calculateFullSteering()
If a bheaviour class extend from CompoundSteeringBehaviour instead
 of AbstractSteeringBehaviout, It must implement this method instead of
 calculateSteering(). 
 | 
protected void | 
controlRender(com.jme3.renderer.RenderManager rm,
             com.jme3.renderer.ViewPort vp)  | 
protected float | 
getMinDistance()  | 
protected float | 
getMinTimeToCollision()  | 
protected java.util.List<Agent> | 
getObstacles()  | 
protected com.jme3.math.Vector3f | 
randomVectInPlane(com.jme3.math.Vector3f planeNormalV,
                 com.jme3.math.Vector3f planePoint)  | 
void | 
setObstacles(java.util.List<Agent> obstacles)  | 
calculateSteering, setupStrengthControl, setupStrengthControl, setupStrengthControl, setupStrengthControl, turnOffStrengthControlagentTotalMass, calculateNewVelocity, controlUpdate, getBrakingFactor, getTPF, getVelocity, rotateAgent, setBrakingFactor, setTPF, setVelocitypublic ObstacleAvoidanceBehaviour(Agent agent, java.util.List<Agent> obstacles, float minTimeToCollision)
obstacles - A list with the obstacles (Agents)minTimeToCollision - When the time to collision is lower than this value
 the steer force will appear. Time is measured in seconds.ObstacleAvoidanceBehaviour.ObstacleAvoindanceWithNoMinTimeToCollision - If minTimeToCollision is lower or equals to 0AbstractSteeringBehaviour.AbstractSteeringBehaviour(com.jme3.ai.agents.Agent)public ObstacleAvoidanceBehaviour(Agent agent, java.util.List<Agent> obstacles, float minTimeToCollision, com.jme3.scene.Spatial spatial)
public ObstacleAvoidanceBehaviour(Agent agent, java.util.List<Agent> obstacles, float minTimeToCollision, float minDistance)
minDistance - Min. distance from center to center to consider an obstacleObstacleAvoidanceBehaviour.ObstacleAvoindanceWithNegativeMinDistance - If minTimeToCollision is lower than 0ObstacleAvoidanceBehaviour(com.jme3.ai.agents.Agent, java.util.List, float)public ObstacleAvoidanceBehaviour(Agent agent, java.util.List<Agent> obstacles, float minTimeToCollision, float minDistance, com.jme3.scene.Spatial spatial)
ObstacleAvoidanceBehaviour#ObstacleAvoidanceBehaviour(com.jme3.ai.agents.Agent, com.jme3.scene.Spatial, java.util.List, float), 
AbstractSteeringBehaviour.AbstractSteeringBehaviour(com.jme3.ai.agents.Agent, com.jme3.scene.Spatial)protected java.util.List<Agent> getObstacles()
public void setObstacles(java.util.List<Agent> obstacles)
protected float getMinTimeToCollision()
protected float getMinDistance()
protected com.jme3.math.Vector3f calculateFullSteering()
AbstractStrengthSteeringBehaviourcalculateFullSteering in class AbstractStrengthSteeringBehaviourAbstractSteeringBehaviour.calculateSteering()protected void controlRender(com.jme3.renderer.RenderManager rm,
                 com.jme3.renderer.ViewPort vp)
controlRender in class com.jme3.scene.control.AbstractControlprotected com.jme3.math.Vector3f randomVectInPlane(com.jme3.math.Vector3f planeNormalV,
                                       com.jme3.math.Vector3f planePoint)