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 IVec4R

    java.lang.Object
      igeo.IParameterObject
          igeo.IVec4R

All Implemented Interfaces:
  IParameter, IReferenceParameter, ISubobject, ITransformable, IVec4I, IVec4Op, IVecI, IVecOp

    public class IVec4R

extends IParameterObject
implements IVec4I, IVecI, IReferenceParameter

Reference class of 4 dimensional vector to be used as IParameterObject.

Nested Class Summary
`static class` | `IVec4R.Add`
`static class` | `IVec4R.Cross`
`static class` | `IVec4R.Dist`
`static class` | `IVec4R.Dist2`
`static class` | `IVec4R.Div`
`static class` | `IVec4R.Eq`
`static class` | `IVec4R.EqW`
`static class` | `IVec4R.EqX`
`static class` | `IVec4R.EqY`
`static class` | `IVec4R.EqZ`
`static class` | `IVec4R.FromVec`
`static class` | `IVec4R.FromVecAndW`
`static class` | `IVec4R.FromXYZ`
`static class` | `IVec4R.FromXYZW`
`static class` | `IVec4R.Mul`
`static class` | `IVec4R.Neg`
`static class` | `IVec4R.Ref`
`static class` | `IVec4R.Rot`
`static class` | `IVec4R.Rot2`
`static class` | `IVec4R.Scale1d`
`static class` | `IVec4R.SetLen`
`static class` | `IVec4R.Shear`
`static class` | `IVec4R.Sub`
`static class` | `IVec4R.ToVec`
`static class` | `IVec4R.ToVec2`
`static class` | `IVec4R.Transform3`
`static class` | `IVec4R.Transform4`
`static class` | `IVec4R.TransformVec3`
`static class` | `IVec4R.TransformVec4`
`static class` | `IVec4R.Unit`
`static class` | `IVec4R.W`
`static class` | `IVec4R.X`
`static class` | `IVec4R.Y`
`static class` | `IVec4R.Z`

Field Summary
`protected IVec4Op` | `op`

Fields inherited from class igeo.IParameterObject
`parent`

Constructor Summary
`IVec4R(double x, double y, double z)`
`IVec4R(double x, double y, double z, double w)`
`IVec4R(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R(IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)`
`IVec4R(IServerI s, double x, double y, double z)`
`IVec4R(IServerI s, double x, double y, double z, double w)`
`IVec4R(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)`
`IVec4R(IServerI s, IVec4Op v)`
`IVec4R(IServerI s, IVecI v)`
`IVec4R(IServerI s, IVecI v, double w)`
`IVec4R(IServerI s, IVecI v, IDoubleI w)`
`IVec4R(IVec4Op v)`
`IVec4R(IVecI v)`
`IVec4R(IVecI v, double w)`
`IVec4R(IVecI v, IDoubleI w)`

Method Summary
`IVec4R` | `add(double x, double y, double z)`
`IVec4R` | `add(double f, IVecI v)` scale add alias
`IVec4R` | `add(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `add(IDoubleI f, IVecI v)` scale add alias
`IVec4R` | `add(IVecI u)`
`IVec4R` | `add(IVecI v, double f)` scale add
`IVec4R` | `add(IVecI v, IDoubleI f)` scale add
`double` | `angle(ISwitchE e, IVecI u)`
`double` | `angle(ISwitchE e, IVecI u, IVecI axis)`
`IDoubleR` | `angle(ISwitchR r, IVecI u)`
`IDoubleR` | `angle(ISwitchR r, IVecI u, IVecI axis)`
`double` | `angle(IVecI u)`
`double` | `angle(IVecI u, IVecI axis)`
`IVec4R` | `bisect(IVecI v)` create a new instance of bisector
`IVec4R` | `cp()` cp() is alias of dup()
`IVec4R` | `cp(double x, double y, double z)` cp() is alias of dup().add()
`IVec4R` | `cp(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `cp(IVecI v)`
`IVec4R` | `cross(IVecI u)` cross now returns a new instance 2011/08/03
`IVec4R` | `dif(IVecI v)` create a new instance of difference
`IVec4R` | `diff(IVecI v)` alias of dif
`double` | `dist(ISwitchE e, IVecI v)`
`IDoubleR` | `dist(ISwitchR r, IVecI v)`
`double` | `dist(IVecI v)`
`double` | `dist2(ISwitchE e, IVecI v)`
`IDoubleR` | `dist2(ISwitchR r, IVecI v)`
`double` | `dist2(IVecI v)` squared distance
`IVec4R` | `div(double u)`
`IVec4R` | `div(IDoubleI u)`
`double` | `dot(ISwitchE e, IVecI u)`
`IDoubleR` | `dot(ISwitchR r, IVecI u)`
`double` | `dot(IVecI u)`
`IVec4R` | `dup()` duplicate the instance
`boolean` | `eq(ISwitchE e, IVecI v)`
`boolean` | `eq(ISwitchE e, IVecI v, double resolution)`
`IBoolR` | `eq(ISwitchR r, IVecI v)`
`IBoolR` | `eq(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eq(IVecI v)` whether location is same or not
`boolean` | `eq(IVecI v, double resolution)`
`boolean` | `eqW(ISwitchE e, IVec4I v)`
`boolean` | `eqW(ISwitchE e, IVec4I v, double resolution)`
`IBoolR` | `eqW(ISwitchR r, IVec4I v)`
`IBoolR` | `eqW(ISwitchR r, IVec4I v, IDoubleI resolution)`
`boolean` | `eqW(IVec4I v)`
`boolean` | `eqW(IVec4I v, double resolution)`
`boolean` | `eqX(ISwitchE e, IVecI v)`
`boolean` | `eqX(ISwitchE e, IVecI v, double resolution)`
`IBoolR` | `eqX(ISwitchR r, IVecI v)`
`IBoolR` | `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)`
`IBoolR` | `eqY(ISwitchR r, IVecI v)`
`IBoolR` | `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)`
`IBoolR` | `eqZ(ISwitchR r, IVecI v)`
`IBoolR` | `eqZ(ISwitchR r, IVecI v, IDoubleI resolution)`
`boolean` | `eqZ(IVecI v)`
`boolean` | `eqZ(IVecI v, double resolution)`
`IVec4R` | `flip()` alias of neg()
`IVec4` | `get()`
`IDoubleR` | `getW()`
`IDoubleR` | `getX()`
`IDoubleR` | `getY()`
`IDoubleR` | `getZ()`
`boolean` | `isValid()` checking x, y, and z is valid number (not Infinite, nor NaN).
`double` | `len()`
`IVec4R` | `len(double l)`
`IVec4R` | `len(IDoubleI l)`
`double` | `len(ISwitchE e)`
`IDoubleR` | `len(ISwitchR r)`
`double` | `len2()` square of length
`double` | `len2(ISwitchE e)`
`IDoubleR` | `len2(ISwitchR r)`
`IVec4R` | `mid(IVecI v)` create a new instance of midpoint
`IVec4R` | `mirror(IVecI planeDir)` mirror is alias of ref
`IVec4R` | `mirror(IVecI center, IVecI planeDir)`
`IVec4R` | `mul(double u)`
`IVec4R` | `mul(IDoubleI u)`
`IVec4R` | `mv(double x, double y, double z)` mv() is alias of add()
`IVec4R` | `mv(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `mv(IVecI v)`
`IVec4R` | `neg()`
`IVec4R` | `nml(IVecI v)` alias of cross.
`IVec4R` | `nml(IVecI pt1, IVecI pt2)` create normal vector from 3 points of self, pt1 and pt2
`IVec4Op` | `operator()`
`IVec4R` | `ref(IVecI planeDir)` reflect(mirror) 3 dimensionally to the other side of the plane
`IVec4R` | `ref(IVecI center, IVecI planeDir)`
`IVec4R` | `rev()` alias of neg()
`IVec4R` | `rot(double angle)` rotation on xy-plane
`IVec4R` | `rot(IDoubleI angle)` rotation around z-axis and origin
`IVec4R` | `rot(IVecI axis, double angle)` rotation around axis
`IVec4R` | `rot(IVecI axis, IDoubleI angle)` rotation around axis vector
`IVec4R` | `rot(IVecI axis, IVecI destDir)` rotate to destination direction vector
`IVec4R` | `rot(IVecI center, IVecI axis, double angle)`
`IVec4R` | `rot(IVecI center, IVecI axis, IDoubleI angle)` rotation around axis vector and center
`IVec4R` | `rot(IVecI center, IVecI axis, IVecI destPt)` rotate to destination point location
`IVec4R` | `rot2(double angle)` alias of rot(double)
`IVec4R` | `rot2(IDoubleI angle)` alias of rot(IDoubleI)
`IVec4R` | `rot2(IVecI destDir)` rotation on xy-plane to destination direction vector
`IVec4R` | `rot2(IVecI center, double angle)`
`IVec4R` | `rot2(IVecI center, IDoubleI angle)` rotation on xy-plane around center
`IVec4R` | `rot2(IVecI center, IVecI destPt)` rotation on xy-plane to destination point location
`IVec4R` | `scale(double f)`
`IVec4R` | `scale(IDoubleI f)` alias of mul
`IVec4R` | `scale(IVecI center, double f)`
`IVec4R` | `scale(IVecI center, IDoubleI f)`
`IVec4R` | `scale1d(IVecI axis, double f)` scale only in 1 direction
`IVec4R` | `scale1d(IVecI axis, IDoubleI f)`
`IVec4R` | `scale1d(IVecI center, IVecI axis, double f)`
`IVec4R` | `scale1d(IVecI center, IVecI axis, IDoubleI f)`
`IVec4R` | `set(double x, double y, double z)`
`IVec4R` | `set(double x, double y, double z, double w)`
`IVec4R` | `set(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `set(IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)`
`IVec4R` | `set(IVec4I u)`
`IVec4R` | `set(IVecI u)`
`IVec4R` | `set(IVecI v, double w)`
`IVec4R` | `set(IVecI v, IDoubleI w)`
`IVec4R` | `shear(double sxy, double syx, double syz, double szy, double szx, double sxz)` shear operation
`IVec4R` | `shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`IVec4R` | `shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)`
`IVec4R` | `shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`IVec4R` | `shearXY(double sxy, double syx)`
`IVec4R` | `shearXY(IDoubleI sxy, IDoubleI syx)`
`IVec4R` | `shearXY(IVecI center, double sxy, double syx)`
`IVec4R` | `shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)`
`IVec4R` | `shearYZ(double syz, double szy)`
`IVec4R` | `shearYZ(IDoubleI syz, IDoubleI szy)`
`IVec4R` | `shearYZ(IVecI center, double syz, double szy)`
`IVec4R` | `shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)`
`IVec4R` | `shearZX(double szx, double sxz)`
`IVec4R` | `shearZX(IDoubleI szx, IDoubleI sxz)`
`IVec4R` | `shearZX(IVecI center, double szx, double sxz)`
`IVec4R` | `shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)`
`IVec4R` | `sub(double x, double y, double z)`
`IVec4R` | `sub(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `sub(IVecI u)`
`IVec4R` | `sum(IVecI... v)` create a new instance of total summation
`IVec4R` | `sum(IVecI v)` create a new instance of total summation
`IVec4R` | `sum(IVecI v2, double w2)`
`IVec4R` | `sum(IVecI v2, double w1, double w2)` weighted sum
`IVec4R` | `sum(IVecI v2, IDoubleI w2)`
`IVec4R` | `sum(IVecI v2, IDoubleI w1, IDoubleI w2)` weighted sum, creating a new instance
`IVec2R` | `to2d()`
`IVecR` | `to3d()`
`IVec4R` | `to4d()`
`IVec4R` | `to4d(double w)`
`IVec4R` | `to4d(IDoubleI w)`
`IVec4R` | `transform(IMatrix3I mat)`
`IVec4R` | `transform(IMatrix4I mat)`
`IVec4R` | `transform(IVecI xvec, IVecI yvec, IVecI zvec)`
`IVec4R` | `transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)`
`IVec4R` | `translate(double x, double y, double z)` translate is alias of add()
`IVec4R` | `translate(IDoubleI x, IDoubleI y, IDoubleI z)`
`IVec4R` | `translate(IVecI v)`
`IVec4R` | `unit()`
`double` | `w()`
`double` | `x()`
`double` | `y()`
`double` | `z()`
`IVec4R` | `zero()` setting x,y,z zero (not w)

Methods inherited from class igeo.IParameterObject
`createObject, parent, parent`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### op

    protected IVec4Op op

Constructor Detail

### IVec4R

    public IVec4R(IVec4Op v)

### IVec4R

    public IVec4R(IVecI v)

### IVec4R

    public IVec4R(IVecI v,
                  double w)

### IVec4R

    public IVec4R(IVecI v,
                  IDoubleI w)

### IVec4R

    public IVec4R(double x,
                  double y,
                  double z,
                  double w)

### IVec4R

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

### IVec4R

    public IVec4R(IDoubleI x,
                  IDoubleI y,
                  IDoubleI z,
                  IDoubleI w)

### IVec4R

    public IVec4R(IDoubleI x,
                  IDoubleI y,
                  IDoubleI z)

### IVec4R

    public IVec4R(IServerI s,
                  IVec4Op v)

### IVec4R

    public IVec4R(IServerI s,
                  IVecI v)

### IVec4R

    public IVec4R(IServerI s,
                  IVecI v,
                  double w)

### IVec4R

    public IVec4R(IServerI s,
                  IVecI v,
                  IDoubleI w)

### IVec4R

    public IVec4R(IServerI s,
                  double x,
                  double y,
                  double z,
                  double w)

### IVec4R

    public IVec4R(IServerI s,
                  double x,
                  double y,
                  double z)

### IVec4R

    public IVec4R(IServerI s,
                  IDoubleI x,
                  IDoubleI y,
                  IDoubleI z,
                  IDoubleI w)

### IVec4R

    public IVec4R(IServerI s,
                  IDoubleI x,
                  IDoubleI y,
                  IDoubleI z)

Method Detail

### x

    public double x()

  Specified by:
    `x` in interface `IVec4I`
  Specified by:
    `x` in interface `IVecI`

### y

    public double y()

  Specified by:
    `y` in interface `IVec4I`
  Specified by:
    `y` in interface `IVecI`

### z

    public double z()

  Specified by:
    `z` in interface `IVec4I`
  Specified by:
    `z` in interface `IVecI`

### w

    public double w()

  Specified by:
    `w` in interface `IVec4I`

### get

    public IVec4 get()

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

### dup

    public IVec4R dup()

  Description copied from interface: `ITransformable`
  duplicate the instance

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

### to2d

    public IVec2R to2d()

  Specified by:
    `to2d` in interface `IVec4I`
  Specified by:
    `to2d` in interface `IVecI`

### to3d

    public IVecR to3d()

  Specified by:
    `to3d` in interface `IVec4I`

### to4d

    public IVec4R to4d()

  Specified by:
    `to4d` in interface `IVecI`

### to4d

    public IVec4R to4d(double w)

  Specified by:
    `to4d` in interface `IVecI`

### to4d

    public IVec4R to4d(IDoubleI w)

  Specified by:
    `to4d` in interface `IVecI`

### getX

    public IDoubleR getX()

  Specified by:
    `getX` in interface `IVec4I`
  Specified by:
    `getX` in interface `IVecI`

### getY

    public IDoubleR getY()

  Specified by:
    `getY` in interface `IVec4I`
  Specified by:
    `getY` in interface `IVecI`

### getZ

    public IDoubleR getZ()

  Specified by:
    `getZ` in interface `IVec4I`
  Specified by:
    `getZ` in interface `IVecI`

### getW

    public IDoubleR getW()

  Specified by:
    `getW` in interface `IVec4I`

### operator

    public IVec4Op operator()

  Specified by:
    `operator` in interface `IReferenceParameter`

### set

    public IVec4R set(double x,
                      double y,
                      double z,
                      double w)

  Specified by:
    `set` in interface `IVec4I`

### set

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

  Specified by:
    `set` in interface `IVec4I`
  Specified by:
    `set` in interface `IVecI`

### set

    public IVec4R set(IVec4I u)

  Specified by:
    `set` in interface `IVec4I`

### set

    public IVec4R set(IVecI u)

  Specified by:
    `set` in interface `IVec4I`
  Specified by:
    `set` in interface `IVecI`

### set

    public IVec4R set(IDoubleI x,
                      IDoubleI y,
                      IDoubleI z,
                      IDoubleI w)

  Specified by:
    `set` in interface `IVec4I`

### set

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

  Specified by:
    `set` in interface `IVec4I`
  Specified by:
    `set` in interface `IVecI`

### set

    public IVec4R set(IVecI v,
                      double w)

  Specified by:
    `set` in interface `IVec4I`

### set

    public IVec4R set(IVecI v,
                      IDoubleI w)

  Specified by:
    `set` in interface `IVec4I`

### add

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

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

### add

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

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

### add

    public IVec4R add(IVecI u)

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

### sub

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

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

### sub

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

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

### sub

    public IVec4R sub(IVecI u)

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

### mul

    public IVec4R mul(IDoubleI u)

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

### mul

    public IVec4R mul(double u)

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

### div

    public IVec4R div(IDoubleI u)

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

### div

    public IVec4R div(double u)

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

### neg

    public IVec4R neg()

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

### rev

    public IVec4R rev()

  alias of neg()

  Specified by:
    `rev` in interface `IVec4I`
  Specified by:
    `rev` in interface `IVecI`

### flip

    public IVec4R flip()

  alias of neg()

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

### zero

    public IVec4R zero()

  setting x,y,z zero (not w)

  Specified by:
    `zero` in interface `IVec4I`
  Specified by:
    `zero` in interface `IVecI`

### add

    public IVec4R add(IVecI v,
                      double f)

  scale add

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

### add

    public IVec4R add(IVecI v,
                      IDoubleI f)

  scale add

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

### add

    public IVec4R add(double f,
                      IVecI v)

  scale add alias

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

### add

    public IVec4R add(IDoubleI f,
                      IVecI v)

  scale add alias

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

### dot

    public double dot(IVecI u)

  Specified by:
    `dot` in interface `IVecI`

### dot

    public double dot(ISwitchE e,
                      IVecI u)

  Specified by:
    `dot` in interface `IVecI`

### dot

    public IDoubleR dot(ISwitchR r,
                        IVecI u)

  Specified by:
    `dot` in interface `IVecI`

### cross

    public IVec4R cross(IVecI u)

  cross now returns a new instance 2011/08/03

  Specified by:
    `cross` in interface `IVec4I`
  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 IDoubleR 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 IDoubleR len2(ISwitchR r)

  Specified by:
    `len2` in interface `IVecI`

### len

    public IVec4R len(IDoubleI l)

  Specified by:
    `len` in interface `IVec4I`
  Specified by:
    `len` in interface `IVecI`

### len

    public IVec4R len(double l)

  Specified by:
    `len` in interface `IVec4I`
  Specified by:
    `len` in interface `IVecI`

### unit

    public IVec4R unit()

  Specified by:
    `unit` in interface `IVec4I`
  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 IDoubleR 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 IDoubleR 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 IBoolR eq(ISwitchR r,
                     IVecI v)

  Specified by:
    `eq` in interface `IVecI`

### eqX

    public boolean eqX(IVecI v)

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(IVecI v)

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(IVecI v)

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public boolean eqW(IVec4I v)

  Specified by:
    `eqW` in interface `IVec4I`

### eqX

    public boolean eqX(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(ISwitchE e,
                       IVecI v)

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public boolean eqW(ISwitchE e,
                       IVec4I v)

  Specified by:
    `eqW` in interface `IVec4I`

### eqX

    public IBoolR eqX(ISwitchR r,
                      IVecI v)

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public IBoolR eqY(ISwitchR r,
                      IVecI v)

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public IBoolR eqZ(ISwitchR r,
                      IVecI v)

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public IBoolR eqW(ISwitchR r,
                      IVec4I v)

  Specified by:
    `eqW` in interface `IVec4I`

### 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 IBoolR eq(ISwitchR r,
                     IVecI v,
                     IDoubleI resolution)

  Specified by:
    `eq` in interface `IVecI`

### eqX

    public boolean eqX(IVecI v,
                       double resolution)

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

    public boolean eqY(IVecI v,
                       double resolution)

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

    public boolean eqZ(IVecI v,
                       double resolution)

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public boolean eqW(IVec4I v,
                       double resolution)

  Specified by:
    `eqW` in interface `IVec4I`

### eqX

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

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

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

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

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

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public boolean eqW(ISwitchE e,
                       IVec4I v,
                       double resolution)

  Specified by:
    `eqW` in interface `IVec4I`

### eqX

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

  Specified by:
    `eqX` in interface `IVec4I`
  Specified by:
    `eqX` in interface `IVecI`

### eqY

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

  Specified by:
    `eqY` in interface `IVec4I`
  Specified by:
    `eqY` in interface `IVecI`

### eqZ

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

  Specified by:
    `eqZ` in interface `IVec4I`
  Specified by:
    `eqZ` in interface `IVecI`

### eqW

    public IBoolR eqW(ISwitchR r,
                      IVec4I v,
                      IDoubleI resolution)

  Specified by:
    `eqW` in interface `IVec4I`

### angle

    public double angle(IVecI u)

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

### angle

    public double angle(ISwitchE e,
                        IVecI u)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public IDoubleR angle(ISwitchR r,
                          IVecI u)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public double angle(IVecI u,
                        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 u,
                        IVecI axis)

  Specified by:
    `angle` in interface `IVecI`

### angle

    public IDoubleR angle(ISwitchR r,
                          IVecI u,
                          IVecI axis)

  Specified by:
    `angle` in interface `IVecI`

### rot

    public IVec4R rot(IDoubleI angle)

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

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

### rot

    public IVec4R rot(double angle)

  Description copied from interface: `IVec4I`
  rotation on xy-plane

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

### rot

    public IVec4R 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 `IVec4I`
  Specified by:
    `rot` in interface `IVecI`

### rot

    public IVec4R rot(IVecI axis,
                      double angle)

  Description copied from interface: `IVec4I`
  rotation around axis

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

### rot

    public IVec4R 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 `IVec4I`
  Specified by:
    `rot` in interface `IVecI`

### rot

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

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

### rot

    public IVec4R rot(IVecI axis,
                      IVecI destDir)

  Description copied from interface: `ITransformable`
  rotate to destination direction vector

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

### rot

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

  Description copied from interface: `ITransformable`
  rotate to destination point location

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

### rot2

    public IVec4R rot2(IDoubleI angle)

  alias of rot(IDoubleI)

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### rot2

    public IVec4R rot2(double angle)

  alias of rot(double)

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### rot2

    public IVec4R rot2(IVecI center,
                       IDoubleI angle)

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

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### rot2

    public IVec4R rot2(IVecI center,
                       double angle)

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### rot2

    public IVec4R rot2(IVecI destDir)

  Description copied from interface: `ITransformable`
  rotation on xy-plane to destination direction vector

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### rot2

    public IVec4R rot2(IVecI center,
                       IVecI destPt)

  Description copied from interface: `ITransformable`
  rotation on xy-plane to destination point location

  Specified by:
    `rot2` in interface `ITransformable`
  Specified by:
    `rot2` in interface `IVec4I`

### scale

    public IVec4R scale(IDoubleI f)

  alias of mul

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

### scale

    public IVec4R scale(double f)

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

### scale

    public IVec4R scale(IVecI center,
                        IDoubleI f)

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

### scale

    public IVec4R scale(IVecI center,
                        double f)

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

### scale1d

    public IVec4R scale1d(IVecI axis,
                          double f)

  scale only in 1 direction

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

### scale1d

    public IVec4R scale1d(IVecI axis,
                          IDoubleI f)

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

### scale1d

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

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

### scale1d

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

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

### ref

    public IVec4R ref(IVecI planeDir)

  Description copied from interface: `ITransformable`
  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 IVec4R ref(IVecI center,
                      IVecI planeDir)

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

### mirror

    public IVec4R mirror(IVecI planeDir)

  Description copied from interface: `ITransformable`
  mirror is alias of ref

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

### mirror

    public IVec4R mirror(IVecI center,
                         IVecI planeDir)

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

### shear

    public IVec4R 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 IVec4R 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 IVec4R 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 IVec4R 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 IVec4R shearXY(double sxy,
                          double syx)

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

### shearXY

    public IVec4R shearXY(IDoubleI sxy,
                          IDoubleI syx)

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

### shearXY

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

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

### shearXY

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

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

### shearYZ

    public IVec4R shearYZ(double syz,
                          double szy)

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

### shearYZ

    public IVec4R shearYZ(IDoubleI syz,
                          IDoubleI szy)

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

### shearYZ

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

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

### shearYZ

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

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

### shearZX

    public IVec4R shearZX(double szx,
                          double sxz)

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

### shearZX

    public IVec4R shearZX(IDoubleI szx,
                          IDoubleI sxz)

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

### shearZX

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

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

### shearZX

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

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

### translate

    public IVec4R 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 IVec4R translate(IDoubleI x,
                            IDoubleI y,
                            IDoubleI z)

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

### translate

    public IVec4R translate(IVecI v)

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

### transform

    public IVec4R transform(IMatrix3I mat)

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

### transform

    public IVec4R transform(IMatrix4I mat)

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

### transform

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

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

### transform

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

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

### mv

    public IVec4R 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 IVec4R mv(IDoubleI x,
                     IDoubleI y,
                     IDoubleI z)

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

### mv

    public IVec4R mv(IVecI v)

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

### cp

    public IVec4R cp()

  cp() is alias of dup()

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

### cp

    public IVec4R 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 IVec4R cp(IDoubleI x,
                     IDoubleI y,
                     IDoubleI z)

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

### cp

    public IVec4R cp(IVecI v)

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

### dif

    public IVec4R dif(IVecI v)

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

  Specified by:
    `dif` in interface `IVec4I`
  Specified by:
    `dif` in interface `IVecI`

### diff

    public IVec4R diff(IVecI v)

  Description copied from interface: `IVecI`
  alias of dif

  Specified by:
    `diff` in interface `IVec4I`
  Specified by:
    `diff` in interface `IVecI`

### mid

    public IVec4R mid(IVecI v)

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

  Specified by:
    `mid` in interface `IVec4I`
  Specified by:
    `mid` in interface `IVecI`

### sum

    public IVec4R sum(IVecI v)

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

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec4R sum(IVecI... v)

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

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### bisect

    public IVec4R bisect(IVecI v)

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

  Specified by:
    `bisect` in interface `IVec4I`
  Specified by:
    `bisect` in interface `IVecI`

### sum

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

  weighted sum, creating a new instance

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec4R sum(IVecI v2,
                      IDoubleI w2)

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### sum

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

  Description copied from interface: `IVecI`
  weighted sum

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### sum

    public IVec4R sum(IVecI v2,
                      double w2)

  Specified by:
    `sum` in interface `IVec4I`
  Specified by:
    `sum` in interface `IVecI`

### nml

    public IVec4R nml(IVecI v)

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

  Specified by:
    `nml` in interface `IVecI`

### nml

    public IVec4R 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 `IVec4I`
  Specified by:
    `isValid` in interface `IVecI`

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