Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## igeo
Class IParticle

    java.lang.Object
      igeo.IDynamicsBase
          igeo.IParticle

All Implemented Interfaces:
  IDynamics, IParameter, IParticleI, ISubobject, ITransformable, IVecI, IVecOp

Direct Known Subclasses:
  IParticleOnCurve

    public class IParticle

extends IDynamicsBase
implements IParticleI, IVecI

Class of an implementation of IDynamics to have physical attributes of point. It has attributes of position, velocity, acceleration, force, and mass. Position is provided from outside to be linked.

Field Summary
`(package private) static double` | `defaultFriction`
`(package private) boolean` | `fixed`
`IVec` | `frc`
`double` | `friction`
`double` | `mass`
`IVec` | `pos`
`IVec` | `vel`

Fields inherited from class igeo.IDynamicsBase
`parent, targets`

Constructor Summary
`IParticle(double x, double y, double z)`
`IParticle(double x, double y, double z, double vx, double vy, double vz)`
`IParticle(double x, double y, double z, double vx, double vy, double vz, IObject parent)`
`IParticle(double x, double y, double z, IObject parent)`
`IParticle(IParticle ptcl)`
`IParticle(IParticle ptcl, IObject parent)`
`IParticle(IParticle ptcl, IVecI v)`
`IParticle(IParticle ptcl, IVecI v, IObject parent)`
`IParticle(IPoint pt)`
`IParticle(IPoint pt, IVecI v)`
`IParticle(IPointR pt)`
`IParticle(IPointR pt, IVecI v)`
`IParticle(IVec pos)`
`IParticle(IVecI p)`
`IParticle(IVecI p, IObject parent)`
`IParticle(IVecI p, IVecI v)`
`IParticle(IVecI p, IVecI v, IObject parent)`
`IParticle(IVec pos, IObject parent)`
`IParticle(IVec pos, IVec vel)`
`IParticle(IVec pos, IVec vel, IObject parent)`

Method Summary
`IParticle` | `add(double x, double y, double z)`
`IParticle` | `add(double f, IVecI v)` scale add alias
`IParticle` | `add(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `add(IDoubleI f, IVecI v)` scale add alias
`IParticle` | `add(IVecI v)`
`IParticle` | `add(IVecI v, double f)` scale add
`IParticle` | `add(IVecI v, IDoubleI f)` scale add
`IParticle` | `addForce(IVecI f)` adding force (alias of push)
`double` | `angle(ISwitchE e, IVecI v)`
`double` | `angle(ISwitchE e, IVecI v, IVecI axis)`
`IDouble` | `angle(ISwitchR r, IVecI v)`
`IDouble` | `angle(ISwitchR r, IVecI v, IVecI axis)`
`double` | `angle(IVecI v)`
`double` | `angle(IVecI v, IVecI axis)`
`IVec` | `bisect(IVecI v)` create a new instance of bisector
`IParticle` | `cp()` cp() is alias of dup()
`IParticle` | `cp(double x, double y, double z)` cp() is alias of dup().add()
`IParticle` | `cp(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `cp(IVecI v)`
`IVec` | `cross(IVecI v)` cross product creates a new instance
`double` | `decay()`
`IParticle` | `decay(double d)`
`IVec` | `dif(IVecI v)` create a new instance of difference
`IVec` | `diff(IVecI v)` alias of dif
`double` | `dist(ISwitchE e, IVecI v)`
`IDouble` | `dist(ISwitchR r, IVecI v)`
`double` | `dist(IVecI v)`
`double` | `dist2(ISwitchE e, IVecI v)`
`IDouble` | `dist2(ISwitchR r, IVecI v)`
`double` | `dist2(IVecI v)` squared distance
`IParticle` | `div(double v)`
`IParticle` | `div(IDoubleI v)`
`double` | `dot(ISwitchE e, IVecI v)`
`IDouble` | `dot(ISwitchR r, IVecI v)`
`double` | `dot(IVecI v)`
`IParticle` | `dup()` duplicate the instance
`boolean` | `eq(ISwitchE e, IVecI v)`
`boolean` | `eq(ISwitchE e, IVecI v, double resolution)`
`IBool` | `eq(ISwitchR r, IVecI v)`
`IBool` | `eq(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eq(IVecI v)` whether location is same or not
`boolean` | `eq(IVecI v, double resolution)`
`boolean` | `eqX(ISwitchE e, IVecI v)`
`boolean` | `eqX(ISwitchE e, IVecI v, double resolution)`
`IBool` | `eqX(ISwitchR r, IVecI v)`
`IBool` | `eqX(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eqX(IVecI v)`
`boolean` | `eqX(IVecI v, double resolution)`
`boolean` | `eqY(ISwitchE e, IVecI v)`
`boolean` | `eqY(ISwitchE e, IVecI v, double resolution)`
`IBool` | `eqY(ISwitchR r, IVecI v)`
`IBool` | `eqY(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eqY(IVecI v)`
`boolean` | `eqY(IVecI v, double resolution)`
`boolean` | `eqZ(ISwitchE e, IVecI v)`
`boolean` | `eqZ(ISwitchE e, IVecI v, double resolution)`
`IBool` | `eqZ(ISwitchR r, IVecI v)`
`IBool` | `eqZ(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eqZ(IVecI v)`
`boolean` | `eqZ(IVecI v, double resolution)`
`IParticle` | `fix()`
`IParticle` | `flip()` alias of neg
`IVec` | `force()` get force
`IParticle` | `force(IVecI v)` set force
`IVec` | `frc()` get force
`IParticle` | `frc(IVecI v)` set force
`double` | `fric()` get friction
`IParticle` | `fric(double friction)` set friction
`double` | `friction()` get friction
`IParticle` | `friction(double friction)` set friction
`IVec` | `get()`
`IDouble` | `getX()`
`IDouble` | `getY()`
`IDouble` | `getZ()`
`void` | `initParticle()`
`void` | `initParticle(IVec v)`
`void` | `initParticle(IVecI v)`
`void` | `interact(java.util.ArrayList<IDynamics> dynamics)` behavior definition of interaction with other dynamic objects.
`boolean` | `isValid()` checking x, y, and z is valid number (not Infinite, nor NaN).
`double` | `len()`
`IParticle` | `len(double l)`
`IParticle` | `len(IDoubleI l)`
`double` | `len(ISwitchE e)`
`IDouble` | `len(ISwitchR r)`
`double` | `len2()` square of length
`double` | `len2(ISwitchE e)`
`IDouble` | `len2(ISwitchR r)`
`double` | `mass()` get mass
`IParticle` | `mass(double mass)` set mass
`IVec` | `mid(IVecI v)` create a new instance of midpoint
`IParticle` | `mirror(IVecI planeDir)` reflect (mirror) 3 dimensionally to the other side of the plane
`IParticle` | `mirror(IVecI center, IVecI planeDir)` reflect (mirror) 3 dimensionally to the other side of the plane
`IParticle` | `mul(double v)`
`IParticle` | `mul(IDoubleI v)`
`IParticle` | `mv(double x, double y, double z)` mv() is alias of add()
`IParticle` | `mv(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `mv(IVecI v)`
`IParticle` | `neg()`
`IVec` | `nml(IVecI v)` alias of cross.
`IVec` | `nml(IVecI pt1, IVecI pt2)` create normal vector from 3 points of self, pt1 and pt2
`IVec` | `pos()` get position
`IParticle` | `pos(IVecI v)` set position
`IVec` | `position()` get position
`IParticle` | `position(IVecI v)` set position
`IParticle` | `pull(IVecI f)` adding negative force
`IParticle` | `push(IVecI f)` adding force
`IParticle` | `ref(IVecI planeDir)` reflect (mirror) 3 dimensionally to the other side of the plane
`IParticle` | `ref(IVecI center, IVecI planeDir)` reflect (mirror) 3 dimensionally to the other side of the plane
`IParticle` | `reset()` setting force zero
`IParticle` | `resetForce()` setting force zero (alias of reset())
`IParticle` | `rev()` alias of neg()
`IParticle` | `rot(double angle)`
`IParticle` | `rot(IDoubleI angle)` rotation around z-axis and origin
`IParticle` | `rot(IVecI axis, double angle)`
`IParticle` | `rot(IVecI axis, IDoubleI angle)` rotation around axis vector
`IParticle` | `rot(IVecI axis, IVecI destDir)` Rotate to destination direction vector.
`IParticle` | `rot(IVecI center, IVecI axis, double angle)`
`IParticle` | `rot(IVecI center, IVecI axis, IDoubleI angle)` rotation around axis vector and center
`IParticle` | `rot(IVecI center, IVecI axis, IVecI destPt)` Rotate to destination point location.
`IParticle` | `rot2(double angle)` rotation on xy-plane around origin; same with rot(double)
`IParticle` | `rot2(IDoubleI angle)` rotation on xy-plane around origin; same with rot(IDoubleI)
`IParticle` | `rot2(IVecI destDir)` Rotation on xy-plane to destination direction vector.
`IParticle` | `rot2(IVecI center, double angle)`
`IParticle` | `rot2(IVecI center, IDoubleI angle)` rotation on xy-plane around center
`IParticle` | `rot2(IVecI center, IVecI destPt)` Rotation on xy-plane to destination point location.
`IParticle` | `scale(double f)` alias of mul
`IParticle` | `scale(IDoubleI f)` alias of mul
`IParticle` | `scale(IVecI center, double f)`
`IParticle` | `scale(IVecI center, IDoubleI f)`
`IParticle` | `scale1d(IVecI axis, double f)` scale only in 1 direction
`IParticle` | `scale1d(IVecI axis, IDoubleI f)`
`IParticle` | `scale1d(IVecI center, IVecI axis, double f)`
`IParticle` | `scale1d(IVecI center, IVecI axis, IDoubleI f)`
`IParticle` | `set(double x, double y, double z)`
`IParticle` | `set(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `set(IVecI v)`
`IParticle` | `shear(double sxy, double syx, double syz, double szy, double szx, double sxz)` shear operation
`IParticle` | `shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`IParticle` | `shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)`
`IParticle` | `shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`IParticle` | `shearXY(double sxy, double syx)`
`IParticle` | `shearXY(IDoubleI sxy, IDoubleI syx)`
`IParticle` | `shearXY(IVecI center, double sxy, double syx)`
`IParticle` | `shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)`
`IParticle` | `shearYZ(double syz, double szy)`
`IParticle` | `shearYZ(IDoubleI syz, IDoubleI szy)`
`IParticle` | `shearYZ(IVecI center, double syz, double szy)`
`IParticle` | `shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)`
`IParticle` | `shearZX(double szx, double sxz)`
`IParticle` | `shearZX(IDoubleI szx, IDoubleI sxz)`
`IParticle` | `shearZX(IVecI center, double szx, double sxz)`
`IParticle` | `shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)`
`IParticle` | `sub(double x, double y, double z)`
`IParticle` | `sub(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `sub(IVecI v)`
`IVec` | `sum(IVecI... v)` create a new instance of total summation
`IVec` | `sum(IVecI v)` create a new instance of total summation
`IVec` | `sum(IVecI v2, double w2)`
`IVec` | `sum(IVecI v2, double w1, double w2)` weighted sum.
`IVec` | `sum(IVecI v2, IDoubleI w2)`
`IVec` | `sum(IVecI v2, IDoubleI w1, IDoubleI w2)`
`IVec2` | `to2d()`
`IVec4` | `to4d()`
`IVec4` | `to4d(double w)`
`IVec4` | `to4d(IDoubleI w)`
`java.lang.String` | `toString()`
`IParticle` | `transform(IMatrix3I mat)`
`IParticle` | `transform(IMatrix4I mat)`
`IParticle` | `transform(IVecI xvec, IVecI yvec, IVecI zvec)`
`IParticle` | `transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)`
`IParticle` | `translate(double x, double y, double z)` translate is alias of add()
`IParticle` | `translate(IDoubleI x, IDoubleI y, IDoubleI z)`
`IParticle` | `translate(IVecI v)`
`IParticle` | `unfix()`
`IParticle` | `unit()`
`void` | `update()` behavior definition of updating dynamics in each time frame
`IVec` | `vel()` get velocity
`IParticle` | `vel(IVecI v)` set velocity
`IVec` | `velocity()` get velocity
`IParticle` | `velocity(IVecI v)` set velocity
`double` | `x()` implements of IVecI
`double` | `y()`
`double` | `z()`
`IParticle` | `zero()` setting all zero

Methods inherited from class igeo.IDynamicsBase
`initDynamicsBase, initDynamicsBase, 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, wait, wait, wait`

Field Detail

### defaultFriction

    static double defaultFriction

### mass

    public double mass

### pos

    public IVec pos

### vel

    public IVec vel

### frc

    public IVec frc

### fixed

    boolean fixed

### friction

    public double friction

Constructor Detail

### IParticle

    public IParticle(IVec pos)

### IParticle

    public IParticle(IVec pos,
                     IObject parent)

### IParticle

    public IParticle(IVecI p)

### IParticle

    public IParticle(IVecI p,
                     IObject parent)

### IParticle

    public IParticle(double x,
                     double y,
                     double z)

### IParticle

    public IParticle(double x,
                     double y,
                     double z,
                     IObject parent)

### IParticle

    public IParticle(IPoint pt)

### IParticle

    public IParticle(IPointR pt)

### IParticle

    public IParticle(IParticle ptcl)

### IParticle

    public IParticle(IParticle ptcl,
                     IObject parent)

### IParticle

    public IParticle(IVec pos,
                     IVec vel)

### IParticle

    public IParticle(IVec pos,
                     IVec vel,
                     IObject parent)

### IParticle

    public IParticle(IVecI p,
                     IVecI v)

### IParticle

    public IParticle(IVecI p,
                     IVecI v,
                     IObject parent)

### IParticle

    public IParticle(double x,
                     double y,
                     double z,
                     double vx,
                     double vy,
                     double vz)

### IParticle

    public IParticle(double x,
                     double y,
                     double z,
                     double vx,
                     double vy,
                     double vz,
                     IObject parent)

### IParticle

    public IParticle(IPoint pt,
                     IVecI v)

### IParticle

    public IParticle(IPointR pt,
                     IVecI v)

### IParticle

    public IParticle(IParticle ptcl,
                     IVecI v)

### IParticle

    public IParticle(IParticle ptcl,
                     IVecI v,
                     IObject parent)

Method Detail

### initParticle

    public void initParticle()

### initParticle

    public void initParticle(IVec v)

### initParticle

    public void initParticle(IVecI v)

### dup

    public IParticle dup()

  Description copied from interface: `ITransformable`
  duplicate the instance

  Specified by:
    `dup` in interface `ITransformable`
  Specified by:
    `dup` in interface `IVecI`

### fix

    public IParticle fix()

### unfix

    public IParticle unfix()

### mass

    public double mass()

  Description copied from interface: `IParticleI`
  get mass

  Specified by:
    `mass` in interface `IParticleI`

### mass

    public IParticle mass(double mass)

  Description copied from interface: `IParticleI`
  set mass

  Specified by:
    `mass` in interface `IParticleI`

### position

    public IVec position()

  Description copied from interface: `IParticleI`
  get position

  Specified by:
    `position` in interface `IParticleI`

### position

    public IParticle position(IVecI v)

  Description copied from interface: `IParticleI`
  set position

  Specified by:
    `position` in interface `IParticleI`

### pos

    public IVec pos()

  Description copied from interface: `IParticleI`
  get position

  Specified by:
    `pos` in interface `IParticleI`

### pos

    public IParticle pos(IVecI v)

  Description copied from interface: `IParticleI`
  set position

  Specified by:
    `pos` in interface `IParticleI`

### velocity

    public IVec velocity()

  Description copied from interface: `IParticleI`
  get velocity

  Specified by:
    `velocity` in interface `IParticleI`

### velocity

    public IParticle velocity(IVecI v)

  Description copied from interface: `IParticleI`
  set velocity

  Specified by:
    `velocity` in interface `IParticleI`

### vel

    public IVec vel()

  Description copied from interface: `IParticleI`
  get velocity

  Specified by:
    `vel` in interface `IParticleI`

### vel

    public IParticle vel(IVecI v)

  Description copied from interface: `IParticleI`
  set velocity

  Specified by:
    `vel` in interface `IParticleI`

### force

    public IVec force()

  Description copied from interface: `IParticleI`
  get force

  Specified by:
    `force` in interface `IParticleI`

### force

    public IParticle force(IVecI v)

  Description copied from interface: `IParticleI`
  set force

  Specified by:
    `force` in interface `IParticleI`

### frc

    public IVec frc()

  Description copied from interface: `IParticleI`
  get force

  Specified by:
    `frc` in interface `IParticleI`

### frc

    public IParticle frc(IVecI v)

  Description copied from interface: `IParticleI`
  set force

  Specified by:
    `frc` in interface `IParticleI`

### friction

    public double friction()

  Description copied from interface: `IParticleI`
  get friction

  Specified by:
    `friction` in interface `IParticleI`

### friction

    public IParticle friction(double friction)

  Description copied from interface: `IParticleI`
  set friction

  Specified by:
    `friction` in interface `IParticleI`

### fric

    public double fric()

  Description copied from interface: `IParticleI`
  get friction

  Specified by:
    `fric` in interface `IParticleI`

### fric

    public IParticle fric(double friction)

  Description copied from interface: `IParticleI`
  set friction

  Specified by:
    `fric` in interface `IParticleI`

### decay

    public double decay()

  Specified by:
    `decay` in interface `IParticleI`

### decay

    public IParticle decay(double d)

  Specified by:
    `decay` in interface `IParticleI`

### push

    public IParticle push(IVecI f)

  adding force

  Specified by:
    `push` in interface `IParticleI`

### pull

    public IParticle pull(IVecI f)

  adding negative force

  Specified by:
    `pull` in interface `IParticleI`

### addForce

    public IParticle addForce(IVecI f)

  adding force (alias of push)

  Specified by:
    `addForce` in interface `IParticleI`

### reset

    public IParticle reset()

  setting force zero

  Specified by:
    `reset` in interface `IParticleI`

### resetForce

    public IParticle resetForce()

  setting force zero (alias of reset())

  Specified by:
    `resetForce` in interface `IParticleI`

### interact

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

  Description copied from class: `IDynamicsBase`
  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 `IDynamicsBase`

### 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`

### x

    public double x()

  implements of IVecI

  Specified by:
    `x` in interface `IVecI`

### y

    public double y()

  Specified by:
    `y` in interface `IVecI`

### z

    public double z()

  Specified by:
    `z` in interface `IVecI`

### get

    public IVec get()

  Specified by:
    `get` in interface `IParameter`
  Specified by:
    `get` in interface `IVecI`
  Specified by:
    `get` in interface `IVecOp`

### to2d

    public IVec2 to2d()

  Specified by:
    `to2d` in interface `IVecI`

### to4d

    public IVec4 to4d()

  Specified by:
    `to4d` in interface `IVecI`

### to4d

    public IVec4 to4d(double w)

  Specified by:
    `to4d` in interface `IVecI`

### to4d

    public IVec4 to4d(IDoubleI w)

  Specified by:
    `to4d` in interface `IVecI`

### getX

    public IDouble getX()

  Specified by:
    `getX` in interface `IVecI`

### getY

    public IDouble getY()

  Specified by:
    `getY` in interface `IVecI`

### getZ

    public IDouble getZ()

  Specified by:
    `getZ` in interface `IVecI`

### set

    public IParticle set(IVecI v)

  Specified by:
    `set` in interface `IVecI`

### set

    public IParticle set(double x,
                         double y,
                         double z)

  Specified by:
    `set` in interface `IVecI`

### set

    public IParticle set(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

  Specified by:
    `set` in interface `IVecI`

### add

    public IParticle add(double x,
                         double y,
                         double z)

  Specified by:
    `add` in interface `ITransformable`
  Specified by:
    `add` in interface `IVecI`

### add

    public IParticle add(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

  Specified by:
    `add` in interface `ITransformable`
  Specified by:
    `add` in interface `IVecI`

### add

    public IParticle add(IVecI v)

  Specified by:
    `add` in interface `ITransformable`
  Specified by:
    `add` in interface `IVecI`

### sub

    public IParticle sub(double x,
                         double y,
                         double z)

  Specified by:
    `sub` in interface `ITransformable`
  Specified by:
    `sub` in interface `IVecI`

### sub

    public IParticle sub(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

  Specified by:
    `sub` in interface `ITransformable`
  Specified by:
    `sub` in interface `IVecI`

### sub

    public IParticle sub(IVecI v)

  Specified by:
    `sub` in interface `ITransformable`
  Specified by:
    `sub` in interface `IVecI`

### mul

    public IParticle mul(IDoubleI v)

  Specified by:
    `mul` in interface `ITransformable`
  Specified by:
    `mul` in interface `IVecI`

### mul

    public IParticle mul(double v)

  Specified by:
    `mul` in interface `ITransformable`
  Specified by:
    `mul` in interface `IVecI`

### div

    public IParticle div(IDoubleI v)

  Specified by:
    `div` in interface `ITransformable`
  Specified by:
    `div` in interface `IVecI`

### div

    public IParticle div(double v)

  Specified by:
    `div` in interface `ITransformable`
  Specified by:
    `div` in interface `IVecI`

### neg

    public IParticle neg()

  Specified by:
    `neg` in interface `ITransformable`
  Specified by:
    `neg` in interface `IVecI`

### rev

    public IParticle rev()

  Description copied from interface: `IVecI`
  alias of neg()

  Specified by:
    `rev` in interface `IVecI`

### flip

    public IParticle flip()

  Description copied from interface: `ITransformable`
  alias of neg

  Specified by:
    `flip` in interface `ITransformable`
  Specified by:
    `flip` in interface `IVecI`

### zero

    public IParticle zero()

  Description copied from interface: `IVecI`
  setting all zero

  Specified by:
    `zero` in interface `IVecI`

### add

    public IParticle add(IVecI v,
                         double f)

  Description copied from interface: `ITransformable`
  scale add

  Specified by:
    `add` in interface `ITransformable`
  Specified by:
    `add` in interface `IVecI`

### add

    public IParticle add(IVecI v,
                         IDoubleI f)

  Description copied from interface: `ITransformable`
  scale add

  Specified by:
    `add` in interface `ITransformable`
  Specified by:
    `add` in interface `IVecI`

### add

    public IParticle add(double f,
                         IVecI v)

  Description copied from interface: `ITransformable`
  scale add alias

  Specified by:
    `add` in interface `ITransformable`

### add

    public IParticle add(IDoubleI f,
                         IVecI v)

  Description copied from interface: `ITransformable`
  scale add alias

  Specified by:
    `add` in interface `ITransformable`

### dot

    public double dot(IVecI v)

  Specified by:
    `dot` in interface `IVecI`

### dot

    public double dot(ISwitchE e,
                      IVecI v)

  Specified by:
    `dot` in interface `IVecI`

### dot

    public IDouble dot(ISwitchR r,
                       IVecI v)

  Specified by:
    `dot` in interface `IVecI`

### cross

    public IVec cross(IVecI v)

  Description copied from interface: `IVecI`
  cross product creates a new instance

  Specified by:
    `cross` in interface `IVecI`

### len

    public double len()

  Specified by:
    `len` in interface `IVecI`

### len

    public double len(ISwitchE e)

  Specified by:
    `len` in interface `IVecI`

### len

    public IDouble len(ISwitchR r)

  Specified by:
    `len` in interface `IVecI`

### len2

    public double len2()

  Description copied from interface: `IVecI`
  square of length

  Specified by:
    `len2` in interface `IVecI`

### len2

    public double len2(ISwitchE e)

  Specified by:
    `len2` in interface `IVecI`

### len2

    public IDouble len2(ISwitchR r)

  Specified by:
    `len2` in interface `IVecI`

### len

    public IParticle len(IDoubleI l)

  Specified by:
    `len` in interface `IVecI`

### len

    public IParticle len(double l)

  Specified by:
    `len` in interface `IVecI`

### unit

    public IParticle unit()

  Specified by:
    `unit` in interface `IVecI`

### dist

    public double dist(IVecI v)

  Specified by:
    `dist` in interface `IVecI`

### dist

    public double dist(ISwitchE e,
                       IVecI v)

  Specified by:
    `dist` in interface `IVecI`

### dist

    public IDouble dist(ISwitchR r,
                        IVecI v)

  Specified by:
    `dist` in interface `IVecI`

### dist2

    public double dist2(IVecI v)

  Description copied from interface: `IVecI`
  squared distance

  Specified by:
    `dist2` in interface `IVecI`

### dist2

    public double dist2(ISwitchE e,
                        IVecI v)

  Specified by:
    `dist2` in interface `IVecI`

### dist2

    public IDouble dist2(ISwitchR r,
                         IVecI v)

  Specified by:
    `dist2` in interface `IVecI`

### eq

    public boolean eq(IVecI v)

  Description copied from interface: `IVecI`
  whether location is same or not

  Specified by:
    `eq` in interface `IVecI`

### eq

    public boolean eq(ISwitchE e,
                      IVecI v)

  Specified by:
    `eq` in interface `IVecI`

### eq

    public IBool eq(ISwitchR r,
                    IVecI v)

  Specified by:
    `eq` in interface `IVecI`

### eq

    public boolean eq(IVecI v,
                      double resolution)

  Specified by:
    `eq` in interface `IVecI`

### eq

    public boolean eq(ISwitchE e,
                      IVecI v,
                      double resolution)

  Specified by:
    `eq` in interface `IVecI`

### eq

    public IBool eq(ISwitchR r,
                    IVecI v,
                    IDoubleI resolution)

  Specified by:
    `eq` in interface `IVecI`

### eqX

    public boolean eqX(IVecI v)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(IVecI v)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(IVecI v)

  Specified by:
    `eqZ` in interface `IVecI`

### eqX

    public boolean eqX(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqZ` in interface `IVecI`

### eqX

    public IBool eqX(ISwitchR r,
                     IVecI v)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public IBool eqY(ISwitchR r,
                     IVecI v)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public IBool eqZ(ISwitchR r,
                     IVecI v)

  Specified by:
    `eqZ` in interface `IVecI`

### eqX

    public boolean eqX(IVecI v,
                       double resolution)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(IVecI v,
                       double resolution)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(IVecI v,
                       double resolution)

  Specified by:
    `eqZ` in interface `IVecI`

### eqX

    public boolean eqX(ISwitchE e,
                       IVecI v,
                       double resolution)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(ISwitchE e,
                       IVecI v,
                       double resolution)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(ISwitchE e,
                       IVecI v,
                       double resolution)

  Specified by:
    `eqZ` in interface `IVecI`

### eqX

    public IBool eqX(ISwitchR r,
                     IVecI v,
                     IDoubleI resolution)

  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public IBool eqY(ISwitchR r,
                     IVecI v,
                     IDoubleI resolution)

  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public IBool eqZ(ISwitchR r,
                     IVecI v,
                     IDoubleI resolution)

  Specified by:
    `eqZ` in interface `IVecI`

### angle

    public double angle(IVecI v)

  Specified by:
    `angle` in interface `IVecI`
  Returns:
    angle between two vector from 0 to Pi

### angle

    public double angle(ISwitchE e,
                        IVecI v)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public IDouble angle(ISwitchR r,
                         IVecI v)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public double angle(IVecI v,
                        IVecI axis)

  Specified by:
    `angle` in interface `IVecI`
    `axis` - axis to determin sign of angle following right-handed screw rule.
  Returns:
    angle between two vector from -Pi to Pi. Sign follows right-handed screw rule along axis

### angle

    public double angle(ISwitchE e,
                        IVecI v,
                        IVecI axis)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public IDouble angle(ISwitchR r,
                         IVecI v,
                         IVecI axis)

  Specified by:
    `angle` in interface `IVecI`

### rot

    public IParticle rot(IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around z-axis and origin

  Specified by:
    `rot` in interface `ITransformable`

### rot

    public IParticle rot(double angle)

  Specified by:
    `rot` in interface `ITransformable`

### rot

    public IParticle rot(IVecI axis,
                         IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around axis vector

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IParticle rot(IVecI axis,
                         double angle)

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IParticle rot(IVecI center,
                         IVecI axis,
                         double angle)

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IParticle rot(IVecI center,
                         IVecI axis,
                         IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around axis vector and center

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IParticle rot(IVecI axis,
                         IVecI destDir)

  Rotate to destination direction vector.

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IParticle rot(IVecI center,
                         IVecI axis,
                         IVecI destPt)

  Rotate to destination point location.

  Specified by:
    `rot` in interface `ITransformable`
  Specified by:
    `rot` in interface `IVecI`

### rot2

    public IParticle rot2(IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around origin; same with rot(IDoubleI)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public IParticle rot2(double angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around origin; same with rot(double)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public IParticle rot2(IVecI center,
                          double angle)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public IParticle rot2(IVecI center,
                          IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around center

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public IParticle rot2(IVecI destDir)

  Rotation on xy-plane to destination direction vector.

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public IParticle rot2(IVecI center,
                          IVecI destPt)

  Rotation on xy-plane to destination point location.

  Specified by:
    `rot2` in interface `ITransformable`

### scale

    public IParticle scale(IDoubleI f)

  alias of mul

  Specified by:
    `scale` in interface `ITransformable`
  Specified by:
    `scale` in interface `IVecI`

### scale

    public IParticle scale(double f)

  alias of mul

  Specified by:
    `scale` in interface `ITransformable`
  Specified by:
    `scale` in interface `IVecI`

### scale

    public IParticle scale(IVecI center,
                           IDoubleI f)

  Specified by:
    `scale` in interface `ITransformable`
  Specified by:
    `scale` in interface `IVecI`

### scale

    public IParticle scale(IVecI center,
                           double f)

  Specified by:
    `scale` in interface `ITransformable`
  Specified by:
    `scale` in interface `IVecI`

### scale1d

    public IParticle scale1d(IVecI axis,
                             double f)

  scale only in 1 direction

  Specified by:
    `scale1d` in interface `ITransformable`
  Specified by:
    `scale1d` in interface `IVecI`

### scale1d

    public IParticle scale1d(IVecI axis,
                             IDoubleI f)

  Specified by:
    `scale1d` in interface `ITransformable`
  Specified by:
    `scale1d` in interface `IVecI`

### scale1d

    public IParticle scale1d(IVecI center,
                             IVecI axis,
                             double f)

  Specified by:
    `scale1d` in interface `ITransformable`
  Specified by:
    `scale1d` in interface `IVecI`

### scale1d

    public IParticle scale1d(IVecI center,
                             IVecI axis,
                             IDoubleI f)

  Specified by:
    `scale1d` in interface `ITransformable`
  Specified by:
    `scale1d` in interface `IVecI`

### ref

    public IParticle ref(IVecI planeDir)

  reflect (mirror) 3 dimensionally to the other side of the plane

  Specified by:
    `ref` in interface `ITransformable`
  Specified by:
    `ref` in interface `IVecI`

### ref

    public IParticle ref(IVecI center,
                         IVecI planeDir)

  reflect (mirror) 3 dimensionally to the other side of the plane

  Specified by:
    `ref` in interface `ITransformable`
  Specified by:
    `ref` in interface `IVecI`

### mirror

    public IParticle mirror(IVecI planeDir)

  reflect (mirror) 3 dimensionally to the other side of the plane

  Specified by:
    `mirror` in interface `ITransformable`
  Specified by:
    `mirror` in interface `IVecI`

### mirror

    public IParticle mirror(IVecI center,
                            IVecI planeDir)

  reflect (mirror) 3 dimensionally to the other side of the plane

  Specified by:
    `mirror` in interface `ITransformable`
  Specified by:
    `mirror` in interface `IVecI`

### shear

    public IParticle shear(double sxy,
                           double syx,
                           double syz,
                           double szy,
                           double szx,
                           double sxz)

  shear operation

  Specified by:
    `shear` in interface `ITransformable`
  Specified by:
    `shear` in interface `IVecI`

### shear

    public IParticle shear(IDoubleI sxy,
                           IDoubleI syx,
                           IDoubleI syz,
                           IDoubleI szy,
                           IDoubleI szx,
                           IDoubleI sxz)

  Specified by:
    `shear` in interface `ITransformable`
  Specified by:
    `shear` in interface `IVecI`

### shear

    public IParticle shear(IVecI center,
                           double sxy,
                           double syx,
                           double syz,
                           double szy,
                           double szx,
                           double sxz)

  Specified by:
    `shear` in interface `ITransformable`
  Specified by:
    `shear` in interface `IVecI`

### shear

    public IParticle shear(IVecI center,
                           IDoubleI sxy,
                           IDoubleI syx,
                           IDoubleI syz,
                           IDoubleI szy,
                           IDoubleI szx,
                           IDoubleI sxz)

  Specified by:
    `shear` in interface `ITransformable`
  Specified by:
    `shear` in interface `IVecI`

### shearXY

    public IParticle shearXY(double sxy,
                             double syx)

  Specified by:
    `shearXY` in interface `ITransformable`
  Specified by:
    `shearXY` in interface `IVecI`

### shearXY

    public IParticle shearXY(IDoubleI sxy,
                             IDoubleI syx)

  Specified by:
    `shearXY` in interface `ITransformable`
  Specified by:
    `shearXY` in interface `IVecI`

### shearXY

    public IParticle shearXY(IVecI center,
                             double sxy,
                             double syx)

  Specified by:
    `shearXY` in interface `ITransformable`
  Specified by:
    `shearXY` in interface `IVecI`

### shearXY

    public IParticle shearXY(IVecI center,
                             IDoubleI sxy,
                             IDoubleI syx)

  Specified by:
    `shearXY` in interface `ITransformable`
  Specified by:
    `shearXY` in interface `IVecI`

### shearYZ

    public IParticle shearYZ(double syz,
                             double szy)

  Specified by:
    `shearYZ` in interface `ITransformable`
  Specified by:
    `shearYZ` in interface `IVecI`

### shearYZ

    public IParticle shearYZ(IDoubleI syz,
                             IDoubleI szy)

  Specified by:
    `shearYZ` in interface `ITransformable`
  Specified by:
    `shearYZ` in interface `IVecI`

### shearYZ

    public IParticle shearYZ(IVecI center,
                             double syz,
                             double szy)

  Specified by:
    `shearYZ` in interface `ITransformable`
  Specified by:
    `shearYZ` in interface `IVecI`

### shearYZ

    public IParticle shearYZ(IVecI center,
                             IDoubleI syz,
                             IDoubleI szy)

  Specified by:
    `shearYZ` in interface `ITransformable`
  Specified by:
    `shearYZ` in interface `IVecI`

### shearZX

    public IParticle shearZX(double szx,
                             double sxz)

  Specified by:
    `shearZX` in interface `ITransformable`
  Specified by:
    `shearZX` in interface `IVecI`

### shearZX

    public IParticle shearZX(IDoubleI szx,
                             IDoubleI sxz)

  Specified by:
    `shearZX` in interface `ITransformable`
  Specified by:
    `shearZX` in interface `IVecI`

### shearZX

    public IParticle shearZX(IVecI center,
                             double szx,
                             double sxz)

  Specified by:
    `shearZX` in interface `ITransformable`
  Specified by:
    `shearZX` in interface `IVecI`

### shearZX

    public IParticle shearZX(IVecI center,
                             IDoubleI szx,
                             IDoubleI sxz)

  Specified by:
    `shearZX` in interface `ITransformable`
  Specified by:
    `shearZX` in interface `IVecI`

### translate

    public IParticle translate(double x,
                               double y,
                               double z)

  translate is alias of add()

  Specified by:
    `translate` in interface `ITransformable`
  Specified by:
    `translate` in interface `IVecI`

### translate

    public IParticle translate(IDoubleI x,
                               IDoubleI y,
                               IDoubleI z)

  Specified by:
    `translate` in interface `ITransformable`
  Specified by:
    `translate` in interface `IVecI`

### translate

    public IParticle translate(IVecI v)

  Specified by:
    `translate` in interface `ITransformable`
  Specified by:
    `translate` in interface `IVecI`

### transform

    public IParticle transform(IMatrix3I mat)

  Specified by:
    `transform` in interface `ITransformable`
  Specified by:
    `transform` in interface `IVecI`

### transform

    public IParticle transform(IMatrix4I mat)

  Specified by:
    `transform` in interface `ITransformable`
  Specified by:
    `transform` in interface `IVecI`

### transform

    public IParticle transform(IVecI xvec,
                               IVecI yvec,
                               IVecI zvec)

  Specified by:
    `transform` in interface `ITransformable`
  Specified by:
    `transform` in interface `IVecI`

### transform

    public IParticle transform(IVecI xvec,
                               IVecI yvec,
                               IVecI zvec,
                               IVecI translate)

  Specified by:
    `transform` in interface `ITransformable`
  Specified by:
    `transform` in interface `IVecI`

### mv

    public IParticle mv(double x,
                        double y,
                        double z)

  mv() is alias of add()

  Specified by:
    `mv` in interface `ITransformable`
  Specified by:
    `mv` in interface `IVecI`

### mv

    public IParticle mv(IDoubleI x,
                        IDoubleI y,
                        IDoubleI z)

  Specified by:
    `mv` in interface `ITransformable`
  Specified by:
    `mv` in interface `IVecI`

### mv

    public IParticle mv(IVecI v)

  Specified by:
    `mv` in interface `ITransformable`
  Specified by:
    `mv` in interface `IVecI`

### cp

    public IParticle cp()

  cp() is alias of dup()

  Specified by:
    `cp` in interface `ITransformable`
  Specified by:
    `cp` in interface `IVecI`

### cp

    public IParticle cp(double x,
                        double y,
                        double z)

  cp() is alias of dup().add()

  Specified by:
    `cp` in interface `ITransformable`
  Specified by:
    `cp` in interface `IVecI`

### cp

    public IParticle cp(IDoubleI x,
                        IDoubleI y,
                        IDoubleI z)

  Specified by:
    `cp` in interface `ITransformable`
  Specified by:
    `cp` in interface `IVecI`

### cp

    public IParticle cp(IVecI v)

  Specified by:
    `cp` in interface `ITransformable`
  Specified by:
    `cp` in interface `IVecI`

### dif

    public IVec dif(IVecI v)

  Description copied from interface: `IVecI`
  create a new instance of difference

  Specified by:
    `dif` in interface `IVecI`

### diff

    public IVec diff(IVecI v)

  Description copied from interface: `IVecI`
  alias of dif

  Specified by:
    `diff` in interface `IVecI`

### mid

    public IVec mid(IVecI v)

  Description copied from interface: `IVecI`
  create a new instance of midpoint

  Specified by:
    `mid` in interface `IVecI`

### sum

    public IVec sum(IVecI v)

  Description copied from interface: `IVecI`
  create a new instance of total summation

  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec sum(IVecI... v)

  Description copied from interface: `IVecI`
  create a new instance of total summation

  Specified by:
    `sum` in interface `IVecI`

### bisect

    public IVec bisect(IVecI v)

  Description copied from interface: `IVecI`
  create a new instance of bisector

  Specified by:
    `bisect` in interface `IVecI`

### sum

    public IVec sum(IVecI v2,
                    double w1,
                    double w2)

  weighted sum.

  Specified by:
    `sum` in interface `IVecI`
  Returns:
    IVec

### sum

    public IVec sum(IVecI v2,
                    double w2)

  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec sum(IVecI v2,
                    IDoubleI w1,
                    IDoubleI w2)

  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec sum(IVecI v2,
                    IDoubleI w2)

  Specified by:
    `sum` in interface `IVecI`

### nml

    public IVec nml(IVecI v)

  alias of cross. (not unitized ... ?)

  Specified by:
    `nml` in interface `IVecI`

### nml

    public IVec nml(IVecI pt1,
                    IVecI pt2)

  create normal vector from 3 points of self, pt1 and pt2

  Specified by:
    `nml` in interface `IVecI`

### isValid

    public boolean isValid()

  checking x, y, and z is valid number (not Infinite, nor NaN).

  Specified by:
    `isValid` in interface `IVecI`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD