igeo

## Class IField

- java.lang.Object
- - igeo.IObject
  - - igeo.IAgent
    - - igeo.IField

- All Implemented Interfaces:
    IDynamics, IFieldI, ISubobject
  Direct Known Subclasses:
    I2DField, I3DField, IScalarField

      public abstract class IField
      extends IAgent
      implements IFieldI

  Field agent base class.
  Author:
    Satoru Sugihara

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `java.util.ArrayList<java.lang.Class<? extends IParticleI>>` | `targetClasses`

    - ### Fields inherited from class igeo.IAgent

      `alive, duration, interactOverridden, localDynamics, parent, targets, time`

    - ### Fields inherited from class igeo.IObject

      `attribute, dynamics, graphics, parameter, server, userData`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `IField()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `applyField(IParticleI particle)`
    `IField` | `clr(java.awt.Color c)`
    `IField` | `clr(java.awt.Color c, double alpha)`
    `IField` | `clr(java.awt.Color c, float alpha)`
    `IField` | `clr(java.awt.Color c, int alpha)`
    `IField` | `clr(double dgray)`
    `IField` | `clr(double dgray, double dalpha)`
    `IField` | `clr(double dr, double dg, double db)`
    `IField` | `clr(double dr, double dg, double db, double da)`
    `IField` | `clr(float fgray)`
    `IField` | `clr(float fgray, float falpha)`
    `IField` | `clr(float fr, float fg, float fb)`
    `IField` | `clr(float fr, float fg, float fb, float fa)`
    `IField` | `clr(IColor c)` to set an object color
    `IField` | `clr(IColor c, double alpha)` to set color, with alpha value overwritten
    `IField` | `clr(IColor c, float alpha)` to set color, with alpha value overwritten
    `IField` | `clr(IColor c, int alpha)` to set color, with alpha value overwritten
    `IField` | `clr(int gray)`
    `IField` | `clr(int gray, int alpha)`
    `IField` | `clr(int r, int g, int b)`
    `IField` | `clr(int r, int g, int b, int a)`
    `IField` | `clr(IObject o)` to set the same color with the object
    `IVal` | `get(IVecI pos, IVecI vel)` default field vector ignoreing velocity
    `IField` | `hide()`
    `IField` | `hsb(double h, double s, double b)`
    `IField` | `hsb(double h, double s, double b, double a)`
    `IField` | `hsb(float h, float s, float b)`
    `IField` | `hsb(float h, float s, float b, float a)`
    `void` | `interact(java.util.ArrayList<IDynamics> agents)` behavior definition of interaction with other dynamic objects.
    `boolean` | `isTarget(java.lang.Object obj)` alias
    `boolean` | `isTargetClass(java.lang.Object obj)`
    `IField` | `layer(ILayer l)` Set layer by ILayer object
    `IField` | `name(java.lang.String nm)` methods of IObject
    `IField` | `setColor(java.awt.Color c)`
    `IField` | `setColor(java.awt.Color c, int alpha)`
    `IField` | `setColor(double dgray)`
    `IField` | `setColor(double dgray, double dalpha)`
    `IField` | `setColor(double dr, double dg, double db)`
    `IField` | `setColor(double dr, double dg, double db, double da)`
    `IField` | `setColor(float fgray)`
    `IField` | `setColor(float fgray, float falpha)`
    `IField` | `setColor(float fr, float fg, float fb)`
    `IField` | `setColor(float fr, float fg, float fb, float fa)`
    `IField` | `setColor(int gray)`
    `IField` | `setColor(int gray, int alpha)`
    `IField` | `setColor(int r, int g, int b)`
    `IField` | `setColor(int r, int g, int b, int a)`
    `IField` | `setHSBColor(double h, double s, double b)`
    `IField` | `setHSBColor(double h, double s, double b, double a)`
    `IField` | `setHSBColor(float h, float s, float b)`
    `IField` | `setHSBColor(float h, float s, float b, float a)`
    `IField` | `show()`
    `IField` | `target(java.lang.Class<? extends IParticleI>... targets)` alias
    `IField` | `target(java.lang.Class<? extends IParticleI> targetClass)` alias
    `IField` | `targetClass(java.lang.Class<? extends IParticleI>... targets)` make the field applicable only to the specified target classes
    `IField` | `targetClass(java.lang.Class<? extends IParticleI> targetClass)` make the field applicable only to the specified target class
    `IField` | `weight(double w)`
    `IField` | `weight(float w)`

    - ### Methods inherited from class igeo.IAgent

      `addDynamics, alive, del, del, deletDynamics, deleteDynamics, deleteDynamics, duration, duration, dynamicsNum, getDynamics, initAgent, interact, localDynamics, parent, parent, postinteract, postupdate, preinteract, preupdate, removeTarget, removeTarget, setColor, setColor, setColor, setColor, target, target, targetNum, targets, time, time, update, updateGraphic, updateTarget`

    - ### Methods inherited from class igeo.IObject

      `addUserData, addUserData, alpha, alphaInt, attr, attr, attr, awtColor, blue, blueInt, brightness, castStringHashMap, clearDynamics, clearGraphics, clr, cp, createGraphic, defaultAttribute, deleteGraphic, dup, getAWTColor, getColor, getGraphic, getGraphic, getParameter, graphicsNum, gray, grayInt, green, greenInt, grey, greyInt, hue, initGraphic, initObject, isValid, isVisible, layer, layer, name, red, redInt, resetGraphic, saturation, server, setColor, setColor, setParameter, syncColor, syncGraphic, syncVisibility, syncWeight, userData, userData, userData, userDataNum, visible, weight`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface igeo.IFieldI

      `bidirectional, constantIntensity, decay, del, gauss, gaussian, gaussianDecay, get, intensity, intensity, linear, linearDecay, noDecay, threshold, threshold`

- - ### Field Detail

    - #### targetClasses

          public java.util.ArrayList<java.lang.Class<? extends IParticleI>> targetClasses

  - ### Constructor Detail

    - #### IField

          public IField()

  - ### Method Detail

    - #### targetClass

          public IField targetClass(java.lang.Class<? extends IParticleI> targetClass)

      make the field applicable only to the specified target class

    - #### target

          public IField target(java.lang.Class<? extends IParticleI> targetClass)

      alias

    - #### targetClass

          public IField targetClass(java.lang.Class<? extends IParticleI>... targets)

      make the field applicable only to the specified target classes

    - #### target

          public IField target(java.lang.Class<? extends IParticleI>... targets)

      alias

    - #### isTargetClass

          public boolean isTargetClass(java.lang.Object obj)

    - #### isTarget

          public boolean isTarget(java.lang.Object obj)

      alias

    - #### interact

          public void interact(java.util.ArrayList<IDynamics> agents)

      Description copied from interface: `IDynamics`
      behavior definition of interaction with other dynamic objects. The server puts all dynamic objects including itself.
      Specified by:
        `interact` in interface `IDynamics`
      Overrides:
        `interact` in class `IAgent`

    - #### applyField

          public abstract void applyField(IParticleI particle)

    - #### get

          public IVal get(IVecI pos,
                 IVecI vel)

      default field vector ignoreing velocity
      Specified by:
        `get` in interface `IFieldI`

    - #### name

          public IField name(java.lang.String nm)

      methods of IObject
      Overrides:
        `name` in class `IAgent`

    - #### layer

          public IField layer(ILayer l)

      Description copied from class: `IObject`
      Set layer by ILayer object
      Overrides:
        `layer` in class `IAgent`

    - #### hide

          public IField hide()

      Overrides:
        `hide` in class `IAgent`

    - #### show

          public IField show()

      Overrides:
        `show` in class `IAgent`

    - #### clr

          public IField clr(IColor c)

      Description copied from class: `IObject`
      to set an object color
      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(IColor c,
                   int alpha)

      Description copied from class: `IObject`
      to set color, with alpha value overwritten
      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(IColor c,
                   float alpha)

      Description copied from class: `IObject`
      to set color, with alpha value overwritten
      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(IColor c,
                   double alpha)

      Description copied from class: `IObject`
      to set color, with alpha value overwritten
      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(IObject o)

      Description copied from class: `IObject`
      to set the same color with the object
      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(java.awt.Color c)

      Overrides:
        `clr` in class `IObject`

    - #### clr

          public IField clr(java.awt.Color c,
                   int alpha)

      Overrides:
        `clr` in class `IObject`

    - #### clr

          public IField clr(java.awt.Color c,
                   float alpha)

      Overrides:
        `clr` in class `IObject`

    - #### clr

          public IField clr(java.awt.Color c,
                   double alpha)

      Overrides:
        `clr` in class `IObject`

    - #### clr

          public IField clr(int gray)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(float fgray)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(double dgray)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(int gray,
                   int alpha)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(float fgray,
                   float falpha)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

          public IField clr(double dgray,
                   double dalpha)

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### clr

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

      Overrides:
        `clr` in class `IAgent`

    - #### hsb

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

      Overrides:
        `hsb` in class `IAgent`

    - #### hsb

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

      Overrides:
        `hsb` in class `IAgent`

    - #### hsb

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

      Overrides:
        `hsb` in class `IAgent`

    - #### hsb

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

      Overrides:
        `hsb` in class `IAgent`

    - #### weight

          public IField weight(float w)

      Overrides:
        `weight` in class `IAgent`

    - #### weight

          public IField weight(double w)

      Overrides:
        `weight` in class `IAgent`

    - #### setColor

          public IField setColor(java.awt.Color c)

      Overrides:
        `setColor` in class `IObject`

    - #### setColor

          public IField setColor(java.awt.Color c,
                        int alpha)

      Overrides:
        `setColor` in class `IObject`

    - #### setColor

          public IField setColor(int gray)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(float fgray)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(double dgray)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(int gray,
                        int alpha)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(float fgray,
                        float falpha)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(double dgray,
                        double dalpha)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(int r,
                        int g,
                        int b)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(float fr,
                        float fg,
                        float fb)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(double dr,
                        double dg,
                        double db)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(int r,
                        int g,
                        int b,
                        int a)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(float fr,
                        float fg,
                        float fb,
                        float fa)

      Overrides:
        `setColor` in class `IAgent`

    - #### setColor

          public IField setColor(double dr,
                        double dg,
                        double db,
                        double da)

      Overrides:
        `setColor` in class `IAgent`

    - #### setHSBColor

          public IField setHSBColor(float h,
                           float s,
                           float b,
                           float a)

      Overrides:
        `setHSBColor` in class `IAgent`

    - #### setHSBColor

          public IField setHSBColor(double h,
                           double s,
                           double b,
                           double a)

      Overrides:
        `setHSBColor` in class `IAgent`

    - #### setHSBColor

          public IField setHSBColor(float h,
                           float s,
                           float b)

      Overrides:
        `setHSBColor` in class `IAgent`

    - #### setHSBColor

          public IField setHSBColor(double h,
                           double s,
                           double b)

      Overrides:
        `setHSBColor` in class `IAgent`