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
 IBrep brep(int index)
          returns n-th surface
 int brepNum()
          returns brep num
 IBrep[] breps()
          returns all contained breps
 IAgentTracker clr(double dgray)
           
 IAgentTracker clr(double dgray, double dalpha)
           
 IAgentTracker clr(double dr, double dg, double db)
           
 IAgentTracker clr(double dr, double dg, double db, double da)
           
 IAgentTracker clr(float fgray)
           
 IAgentTracker clr(float fgray, float falpha)
           
 IAgentTracker clr(float fr, float fg, float fb)
           
 IAgentTracker clr(float fr, float fg, float fb, float fa)
           
 IAgentTracker clr(IColor c)
           
 IAgentTracker clr(IColor c, double alpha)
           
 IAgentTracker clr(IColor c, float alpha)
           
 IAgentTracker clr(IColor c, int alpha)
           
 IAgentTracker clr(int gray)
           
 IAgentTracker clr(int gray, int alpha)
           
 IAgentTracker clr(int r, int g, int b)
           
 IAgentTracker clr(int r, int g, int b, int a)
           
 IAgentTracker clr(IObject o)
           
 ICurve curve()
          returns first curve
 ICurve curve(int index)
          returns n-th curve
 int curveNum()
          returns curve num
 ICurve[] curves()
          returns all contained curves
 void del()
          delete all geometries
 IGeometry[] geometries()
          returns all geometries
 IGeometry geometry()
          returns first geomery
 IGeometry geometry(int i)
          returns n-th geometry
 int geometryNum()
          total number of geometries
 IAgentTracker hide()
           
 IAgentTracker hsb(double h, double s, double b)
           
 IAgentTracker hsb(double h, double s, double b, double a)
           
 IAgentTracker hsb(float h, float s, float b)
           
 IAgentTracker hsb(float h, float s, float b, float a)
           
 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
 IMesh mesh(int index)
          returns n-th surface
 IMesh[] meshes()
          returns all contained meshes
 int meshNum()
          returns mesh num
 IAgentTracker orient(boolean f)
           
 IPoint point()
          returns first point
 IPoint point(int index)
          returns n-th point
 int pointNum()
          returns point num
 IPoint[] points()
          returns all contained points
 IAgentTracker show()
           
<T extends IGeometry>
T[]
subgeometries(java.lang.Class<T> cls)
          returns all contained geometries in a specified type
<T extends IGeometry>
T
subgeometry(java.lang.Class<T> cls)
          returns first geometry in a specified type
<T extends IGeometry>
T
subgeometry(java.lang.Class<T> cls, int index)
          returns n-th geometry in a specified type
 int subgeometryNum(java.lang.Class<? extends IGeometry> cls)
          returns number of geometries in a specified type
 ISurface surface()
          returns first surface
 ISurface surface(int index)
          returns n-th surface
 int surfaceNum()
          returns surface num
 ISurface[] surfaces()
          returns all contained surfaces
 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()
total number of geometries


geometry

public IGeometry geometry()
returns first geomery


geometry

public IGeometry geometry(int i)
returns n-th geometry


geometries

public IGeometry[] geometries()
returns all geometries


subgeometries

public <T extends IGeometry> T[] subgeometries(java.lang.Class<T> cls)
returns all contained geometries in a specified type


subgeometry

public <T extends IGeometry> T subgeometry(java.lang.Class<T> cls)
returns first geometry in a specified type


subgeometry

public <T extends IGeometry> T subgeometry(java.lang.Class<T> cls,
                                           int index)
returns n-th geometry in a specified type


subgeometryNum

public int subgeometryNum(java.lang.Class<? extends IGeometry> cls)
returns number of geometries in a specified type


points

public IPoint[] points()
returns all contained points


point

public IPoint point()
returns first point


point

public IPoint point(int index)
returns n-th point


pointNum

public int pointNum()
returns point num


curves

public ICurve[] curves()
returns all contained curves


curve

public ICurve curve()
returns first curve


curve

public ICurve curve(int index)
returns n-th curve


curveNum

public int curveNum()
returns curve num


surfaces

public ISurface[] surfaces()
returns all contained surfaces


surface

public ISurface surface()
returns first surface


surface

public ISurface surface(int index)
returns n-th surface


surfaceNum

public int surfaceNum()
returns surface num


breps

public IBrep[] breps()
returns all contained breps


brep

public IBrep brep()
returns first brep


brep

public IBrep brep(int index)
returns n-th surface


brepNum

public int brepNum()
returns brep num


meshes

public IMesh[] meshes()
returns all contained meshes


mesh

public IMesh mesh()
returns first mesh


mesh

public IMesh mesh(int index)
returns n-th surface


meshNum

public int meshNum()
returns mesh num


show

public IAgentTracker show()

hide

public IAgentTracker hide()

del

public void del()
delete all geometries


orient

public IAgentTracker orient(boolean f)

clr

public IAgentTracker clr(IColor c)

clr

public IAgentTracker clr(IColor c,
                         int alpha)

clr

public IAgentTracker clr(IColor c,
                         float alpha)

clr

public IAgentTracker clr(IColor c,
                         double alpha)

clr

public IAgentTracker clr(IObject o)

clr

public IAgentTracker clr(int gray)

clr

public IAgentTracker clr(float fgray)

clr

public IAgentTracker clr(double dgray)

clr

public IAgentTracker clr(int gray,
                         int alpha)

clr

public IAgentTracker clr(float fgray,
                         float falpha)

clr

public IAgentTracker clr(double dgray,
                         double dalpha)

clr

public IAgentTracker clr(int r,
                         int g,
                         int b)

clr

public IAgentTracker clr(float fr,
                         float fg,
                         float fb)

clr

public IAgentTracker clr(double dr,
                         double dg,
                         double db)

clr

public IAgentTracker clr(int r,
                         int g,
                         int b,
                         int a)

clr

public IAgentTracker clr(float fr,
                         float fg,
                         float fb,
                         float fa)

clr

public IAgentTracker clr(double dr,
                         double dg,
                         double db,
                         double da)

hsb

public IAgentTracker hsb(float h,
                         float s,
                         float b,
                         float a)

hsb

public IAgentTracker hsb(double h,
                         double s,
                         double b,
                         double a)

hsb

public IAgentTracker hsb(float h,
                         float s,
                         float b)

hsb

public IAgentTracker hsb(double h,
                         double s,
                         double b)

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