igeo
Class IAgentTracker

java.lang.Object
  extended by igeo.IDynamicsBase
      extended by igeo.IAgentTracker
All Implemented Interfaces:
IDynamics, ISubobject

public class IAgentTracker
extends IDynamicsBase

dynamic behavior for a geometry object to track particle location. this class needs to be added under point agent (IPointAgent class) or its subclasses like IParticle and IBoid.

Author:
Satoru Sugihara

Field Summary
 IPointAgent agent
           
static IVec defaultOrientation
           
 IGeometry[] geometries
           
 boolean orient
           
 IParticleI particle
          if agent is particle, it's casted to particle variable
 IVec prevPos
           
 IVec prevVel
           
 double rotAngle
           
 IVec rotAxis
           
static boolean setAgentAttributes
          set agent's attributes to geometry objects
 
Fields inherited from class igeo.IDynamicsBase
parent, targets
 
Constructor Summary
IAgentTracker(IPointAgent p, IGeometry... geometries)
           
IAgentTracker(IPointAgent p, IVecI geometryOrigin, IGeometry[] geometries)
           
IAgentTracker(IPointAgent p, IVecI geometryOrigin, IVecI geometryOrientation, IGeometry[] geometries)
           
 
Method Summary
 IBrep brep()
          returns first brep
 ICurve curve()
          returns first curve
 void del()
          delete all geometries
 IGeometry geometry()
          returns first geomery
 IGeometry geometry(int i)
           
 int geometryNum()
           
 IAgentTracker hide()
           
 void initTracker(IPointAgent p)
          move geometries from its center to the current position of the parent agent
 void initTracker(IVecI geometryOrigin, IPointAgent p)
           
 void initTracker(IVecI geometryOrigin, IVecI geometryOrientation, IPointAgent p)
           
 IMesh mesh()
          returns first mesh
 IAgentTracker orient(boolean f)
           
 IAgentTracker show()
           
 ISurface surface()
          returns first surface
 void update()
          behavior definition of updating dynamics in each time frame
 
Methods inherited from class igeo.IDynamicsBase
initDynamicsBase, initDynamicsBase, initDynamicsBase, interact, localDynamics, parent, parent, postinteract, postupdate, preinteract, preupdate, removeTarget, removeTarget, target, target, targetNum, targets, updateTarget
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

setAgentAttributes

public static boolean setAgentAttributes
set agent's attributes to geometry objects


defaultOrientation

public static IVec defaultOrientation

geometries

public IGeometry[] geometries

agent

public IPointAgent agent

particle

public IParticleI particle
if agent is particle, it's casted to particle variable


prevPos

public IVec prevPos

prevVel

public IVec prevVel

rotAxis

public IVec rotAxis

rotAngle

public double rotAngle

orient

public boolean orient
Constructor Detail

IAgentTracker

public IAgentTracker(IPointAgent p,
                     IGeometry... geometries)

IAgentTracker

public IAgentTracker(IPointAgent p,
                     IVecI geometryOrigin,
                     IGeometry[] geometries)

IAgentTracker

public IAgentTracker(IPointAgent p,
                     IVecI geometryOrigin,
                     IVecI geometryOrientation,
                     IGeometry[] geometries)
Method Detail

geometryNum

public int geometryNum()

geometry

public IGeometry geometry(int i)

geometry

public IGeometry geometry()
returns first geomery


curve

public ICurve curve()
returns first curve


surface

public ISurface surface()
returns first surface


brep

public IBrep brep()
returns first brep


mesh

public IMesh mesh()
returns first mesh


show

public IAgentTracker show()

hide

public IAgentTracker hide()

del

public void del()
delete all geometries


orient

public IAgentTracker orient(boolean f)

initTracker

public void initTracker(IPointAgent p)
move geometries from its center to the current position of the parent agent


initTracker

public void initTracker(IVecI geometryOrigin,
                        IPointAgent p)

initTracker

public void initTracker(IVecI geometryOrigin,
                        IVecI geometryOrientation,
                        IPointAgent p)

update

public void update()
Description copied from class: IDynamicsBase
behavior definition of updating dynamics in each time frame

Specified by:
update in interface IDynamics
Overrides:
update in class IDynamicsBase