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

## igeo
Class IVec2R

    java.lang.Object
      igeo.IParameterObject
          igeo.IVec2R

All Implemented Interfaces:
  IArithmeticVal<IVec2I,IDoubleI>, IParameter, IReferenceParameter, ISubobject, IVal, IVec2I, IVec2Op

    public class IVec2R

extends IParameterObject
implements IVec2I, IReferenceParameter

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

Author:
  Satoru Sugihara

Nested Class Summary
`static class` | `IVec2R.Add`
`static class` | `IVec2R.Angle`
`static class` | `IVec2R.Cross`
`static class` | `IVec2R.Dist`
`static class` | `IVec2R.Dist2`
`static class` | `IVec2R.Div`
`static class` | `IVec2R.Dot`
`static class` | `IVec2R.Eq`
`static class` | `IVec2R.EqX`
`static class` | `IVec2R.EqY`
`static class` | `IVec2R.FromX`
`static class` | `IVec2R.FromXY`
`static class` | `IVec2R.FromY`
`static class` | `IVec2R.Len`
`static class` | `IVec2R.Len2`
`static class` | `IVec2R.Mul`
`static class` | `IVec2R.Neg`
`static class` | `IVec2R.Ortho`
`static class` | `IVec2R.Ref`
`static class` | `IVec2R.Rot`
`static class` | `IVec2R.Scale1d`
`static class` | `IVec2R.SetLen`
`static class` | `IVec2R.Shear`
`static class` | `IVec2R.Sub`
`static class` | `IVec2R.ToVec2`
`static class` | `IVec2R.ToVec3`
`static class` | `IVec2R.ToVec4`
`static class` | `IVec2R.Transform2`
`static class` | `IVec2R.Transform3`
`static class` | `IVec2R.TransformVec2`
`static class` | `IVec2R.TransformVec3`
`static class` | `IVec2R.Unit`
`static class` | `IVec2R.X`
`static class` | `IVec2R.Y`

Field Summary
`protected IVec2Op` | `op`

Fields inherited from class igeo.IParameterObject
`parent`

Constructor Summary
`IVec2R(double x, double y)`
`IVec2R(IDoubleI x, IDoubleI y)`
`IVec2R(IServerI s, double x, double y)`
`IVec2R(IServerI s, IDoubleI x, IDoubleI y)`
`IVec2R(IServerI s, IVec2Op v)`
`IVec2R(IVec2Op v)`

Method Summary
`IVec2R` | `add(double x, double y)`
`IVec2R` | `add(double f, IVec2I v)` scale add alias
`IVec2R` | `add(IDoubleI x, IDoubleI y)`
`IVec2R` | `add(IDoubleI f, IVec2I v)` scale add; alias
`IVec2R` | `add(IVec2I u)`
`IVec2R` | `add(IVec2I v, double f)` scale add
`IVec2R` | `add(IVec2I v, IDoubleI f)` scale add
`double` | `angle(double ux, double uy)` angle between two vectors
`double` | `angle(ISwitchE e, IVec2I u)` angle between two vectors
`IDoubleR` | `angle(ISwitchR r, IVec2I u)` angle between two vectors
`double` | `angle(IVec2I u)` angle between two vectors
`IVec2R` | `bisect(double vx, double vy)` create a new instance of bisector
`IVec2R` | `bisect(IVec2I v)` create a new instance of bisector
`IVec2R` | `cp()` cp() is alias of dup()
`IVec2R` | `cp(double x, double y)` cp() is alias of dup().add()
`IVec2R` | `cp(IDoubleI x, IDoubleI y)` cp() is alias of dup().add()
`IVec2R` | `cp(IVec2I v)` cp() is alias of dup().add()
`IVecR` | `cross(double ux, double uy)` cross product, returning 3D vector
`IVecR` | `cross(IVec2I u)` cross product, returning 3D vector
`IVec2R` | `dif(double vx, double vy)` create a new instance of difference
`IVec2R` | `dif(IVec2I v)` create a new instance of difference
`IVec2R` | `diff(double vx, double vy)` alias of dif
`IVec2R` | `diff(IVec2I v)` alias of dif
`double` | `dist(double vx, double vy)` distance
`double` | `dist(ISwitchE e, IVec2I v)` distance
`IDoubleR` | `dist(ISwitchR r, IVec2I v)` distance
`double` | `dist(IVec2I v)` distance
`double` | `dist2(double vx, double vy)` squared distance
`double` | `dist2(ISwitchE e, IVec2I v)` squared distance
`IDoubleR` | `dist2(ISwitchR r, IVec2I v)` squared distance
`double` | `dist2(IVec2I v)` squared distance
`IVec2R` | `div(double u)`
`IVec2R` | `div(IDoubleI u)`
`double` | `dot(double ux, double uy)` dot product
`double` | `dot(ISwitchE e, IVec2I u)` dot product
`IDoubleR` | `dot(ISwitchR r, IVec2I u)` dot product
`double` | `dot(IVec2I u)` dot product
`IVec2R` | `dup()`
`boolean` | `eq(double vx, double vy)` whether location is same or not
`boolean` | `eq(double vx, double vy, double tolerance)` whether location is same or not with tolerance
`boolean` | `eq(ISwitchE e, IVec2I v)` whether location is same or not
`boolean` | `eq(ISwitchE e, IVec2I v, double tolerance)` whether location is same or not with tolerance
`IBoolR` | `eq(ISwitchR r, IVec2I v)` whether location is same or not
`IBoolR` | `eq(ISwitchR r, IVec2I v, IDoubleI tolerance)` whether location is same or not with tolerance
`boolean` | `eq(IVec2I v)` whether location is same or not
`boolean` | `eq(IVec2I v, double tolerance)` whether location is same or not with tolerance
`boolean` | `eqX(double vx)` check if X is same
`boolean` | `eqX(double vx, double tolerance)` check if X is same within tolerance
`boolean` | `eqX(ISwitchE e, IVec2I v)` check if X is same
`boolean` | `eqX(ISwitchE e, IVec2I v, double tolerance)` check if X is same within tolerance
`IBoolR` | `eqX(ISwitchR r, IVec2I v)` check if X is same
`IBoolR` | `eqX(ISwitchR r, IVec2I v, IDoubleI tolerance)` check if X is same within tolerance
`boolean` | `eqX(IVec2I v)` check if X is same
`boolean` | `eqX(IVec2I v, double tolerance)` check if X is same within tolerance
`boolean` | `eqY(double vy)` check if Y is same
`boolean` | `eqY(double vy, double tolerance)` check if Y is same within tolerance
`boolean` | `eqY(ISwitchE e, IVec2I v)` check if Y is same
`boolean` | `eqY(ISwitchE e, IVec2I v, double tolerance)` check if Y is same within tolerance
`IBoolR` | `eqY(ISwitchR r, IVec2I v)` check if Y is same
`IBoolR` | `eqY(ISwitchR r, IVec2I v, IDoubleI tolerance)` check if Y is same within tolerance
`boolean` | `eqY(IVec2I v)` check if Y is same
`boolean` | `eqY(IVec2I v, double tolerance)` check if Y is same within tolerance
`IVec2R` | `flip()` alias of neg()
`IVec2` | `get()`
`IDoubleR` | `getX()`
`IDoubleR` | `getY()`
`boolean` | `isValid()` checking x, y is valid number (not Infinite, nor NaN).
`double` | `len()` getting length
`IVec2R` | `len(double l)` setting length
`IVec2R` | `len(IDoubleI l)` setting length
`double` | `len(ISwitchE e)` getting length
`IDoubleR` | `len(ISwitchR r)` getting length
`double` | `len2()` getting squared length
`double` | `len2(ISwitchE e)` getting squared length
`IDoubleR` | `len2(ISwitchR r)` getting squared length
`IVec2R` | `mid(double vx, double vy)` create a new instance of midpoint
`IVec2R` | `mid(IVec2I v)` create a new instance of midpoint
`IVec2R` | `mirror(double lineX, double lineY)` reflect (mirror) 2 dimensionally to the other side of the line
`IVec2R` | `mirror(double linePtX, double linePtY, double lineDirX, double lineDirY)` reflect (mirror) 2 dimensionally to the other side of the line at a center
`IVec2R` | `mirror(IVec2I lineDir)` reflect (mirror) 2 dimensionally to the other side of the line
`IVec2R` | `mirror(IVec2I linePt, IVec2I lineDir)` reflect (mirror) 2 dimensionally to the other side of the line at a center
`IVec2R` | `mul(double u)`
`IVec2R` | `mul(IDoubleI u)`
`IVec2R` | `mv(double x, double y)` mv() is alias of add()
`IVec2R` | `mv(IDoubleI x, IDoubleI y)` mv() is alias of add()
`IVec2R` | `mv(IVec2I v)` mv() is alias of add()
`IVec2R` | `neg()`
`IVecR` | `nml(double vx, double vy)` alias of cross
`IVecR` | `nml(double vx1, double vy1, double vx2, double vy2)` create normal vector from 3 points of self, pt1 and pt2
`IVecR` | `nml(IVec2I v)` alias of cross
`IVecR` | `nml(IVec2I pt1, IVec2I pt2)` create normal vector from 3 points of self, pt1 and pt2
`IVec2Op` | `operator()`
`IVec2R` | `ortho()` rotate 90 deg
`IVec2R` | `ref(double lineX, double lineY)` reflect (mirror) 2 dimensionally to the other side of the line
`IVec2R` | `ref(double linePtX, double linePtY, double lineDirX, double lineDirY)` reflect (mirror) 2 dimensionally to the other side of the line at a center
`IVec2R` | `ref(IVec2I lineDir)` reflect (mirror) 2 dimensionally to the other side of the line
`IVec2R` | `ref(IVec2I linePt, IVec2I lineDir)` reflect (mirror) 2 dimensionally to the other side of the line at a center
`IVec2R` | `rev()` alias of neg()
`IVec2R` | `rot(double angle)` rotation
`IVec2R` | `rot(double centerX, double centerY, double angle)` rotation around a center
`IVec2R` | `rot(IDoubleI angle)` rotation
`IVec2R` | `rot(IVec2I destDir)` rotate towards destination direction
`IVec2R` | `rot(IVec2I center, double angle)` rotation around a center
`IVec2R` | `rot(IVec2I center, IDoubleI angle)` rotation around a center
`IVec2R` | `rot(IVec2I center, IVec2I destPt)` rotate around a center towards destination point
`IVec2R` | `scale(double f)` alias of mul
`IVec2R` | `scale(double centerX, double centerY, double f)` scale from a center
`IVec2R` | `scale(IDoubleI f)` alias of mul
`IVec2R` | `scale(IVec2I center, double f)` scale from a center
`IVec2R` | `scale(IVec2I center, IDoubleI f)` scale from a center
`IVec2R` | `scale1d(double axisX, double axisY, double f)` scale only in 1 direction
`IVec2R` | `scale1d(double centerX, double centerY, double axisX, double axisY, double f)` scale only in 1 direction from a center
`IVec2R` | `scale1d(IVec2I axis, double f)` scale only in 1 direction
`IVec2R` | `scale1d(IVec2I axis, IDoubleI f)` scale only in 1 direction
`IVec2R` | `scale1d(IVec2I center, IVec2I axis, double f)` scale only in 1 direction from a center
`IVec2R` | `scale1d(IVec2I center, IVec2I axis, IDoubleI f)` scale only in 1 direction from a center
`IVec2R` | `set(double x, double y)`
`IVec2R` | `set(IDoubleI x, IDoubleI y)`
`IVec2R` | `set(IVec2I u)`
`IVec2R` | `shear(double sxy, double syx)` shear operation on XY
`IVec2R` | `shear(IDoubleI sxy, IDoubleI syx)` shear operation on XY
`IVec2R` | `shear(IVec2I center, double sxy, double syx)` shear operation on XY
`IVec2R` | `shear(IVec2I center, IDoubleI sxy, IDoubleI syx)` shear operation on XY
`IVec2R` | `sub(double x, double y)`
`IVec2R` | `sub(IDoubleI x, IDoubleI y)`
`IVec2R` | `sub(IVec2I u)`
`IVec2R` | `sum(double vx, double vy)` create a new instance of summation
`IVec2R` | `sum(IVec2I... v)` create a new instance of summation
`IVec2R` | `sum(IVec2I v)` create a new instance of summation
`IVec2R` | `sum(IVec2I v2, double w2)` create a new instance of weighted sum
`IVec2R` | `sum(IVec2I v2, double w1, double w2)` weighted sum
`IVec2R` | `sum(IVec2I v2, IDoubleI w2)` create a new instance of weighted sum
`IVec2R` | `sum(IVec2I v2, IDoubleI w1, IDoubleI w2)` create a new instance of weighted sum
`IVecR` | `to3d()`
`IVecR` | `to3d(double z)`
`IVecR` | `to3d(IDoubleI z)`
`IVec4R` | `to4d()`
`IVec4R` | `to4d(double z, double w)`
`IVec4R` | `to4d(IDoubleI z, IDoubleI w)`
`IVec2R` | `transform(IMatrix2I mat)` transform with 2x2 transform matrix
`IVec2R` | `transform(IMatrix3I mat)` transform with 3x3 transform matrix
`IVec2R` | `transform(IVec2I xvec, IVec2I yvec)` transform with transform vectors
`IVec2R` | `transform(IVec2I xvec, IVec2I yvec, IVec2I translate)` transform with transform vectors
`IVec2R` | `translate(double x, double y)` alias of add()
`IVec2R` | `translate(IDoubleI x, IDoubleI y)` alias of add()
`IVec2R` | `translate(IVec2I v)` alias of add()
`IVec2R` | `unit()` unitize
`double` | `x()` getting x component
`IVec2R` | `x(double vx)` setting x component
`IVec2R` | `x(IDoubleI vx)` setting x component
`double` | `x(ISwitchE e)` getting x component
`IDoubleR` | `x(ISwitchR r)` getting x component
`double` | `y()` getting y component
`IVec2R` | `y(double vy)` setting y component
`IVec2R` | `y(IDoubleI vy)` setting y component
`double` | `y(ISwitchE e)` getting y component
`IDoubleR` | `y(ISwitchR r)` getting y component
`IVec2R` | `zero()` setting all zero

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 IVec2Op op

Constructor Detail

### IVec2R

    public IVec2R(IVec2Op v)

### IVec2R

    public IVec2R(double x,
                  double y)

### IVec2R

    public IVec2R(IDoubleI x,
                  IDoubleI y)

### IVec2R

    public IVec2R(IServerI s,
                  IVec2Op v)

### IVec2R

    public IVec2R(IServerI s,
                  double x,
                  double y)

### IVec2R

    public IVec2R(IServerI s,
                  IDoubleI x,
                  IDoubleI y)

Method Detail

### x

    public double x()

  getting x component

  Specified by:
    `x` in interface `IVec2I`

### y

    public double y()

  getting y component

  Specified by:
    `y` in interface `IVec2I`

### x

    public IVec2R x(double vx)

  setting x component

  Specified by:
    `x` in interface `IVec2I`

### y

    public IVec2R y(double vy)

  setting y component

  Specified by:
    `y` in interface `IVec2I`

### x

    public IVec2R x(IDoubleI vx)

  setting x component

  Specified by:
    `x` in interface `IVec2I`

### y

    public IVec2R y(IDoubleI vy)

  setting y component

  Specified by:
    `y` in interface `IVec2I`

### x

    public double x(ISwitchE e)

  getting x component

  Specified by:
    `x` in interface `IVec2I`

### y

    public double y(ISwitchE e)

  getting y component

  Specified by:
    `y` in interface `IVec2I`

### x

    public IDoubleR x(ISwitchR r)

  getting x component

  Specified by:
    `x` in interface `IVec2I`

### y

    public IDoubleR y(ISwitchR r)

  getting y component

  Specified by:
    `y` in interface `IVec2I`

### get

    public IVec2 get()

  Specified by:
    `get` in interface `IParameter`
  Specified by:
    `get` in interface `IVec2I`
  Specified by:
    `get` in interface `IVec2Op`

### getX

    public IDoubleR getX()

  Specified by:
    `getX` in interface `IVec2I`

### getY

    public IDoubleR getY()

  Specified by:
    `getY` in interface `IVec2I`

### operator

    public IVec2Op operator()

  Specified by:
    `operator` in interface `IReferenceParameter`

### dup

    public IVec2R dup()

  Specified by:
    `dup` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `dup` in interface `IVec2I`

### to3d

    public IVecR to3d()

  Specified by:
    `to3d` in interface `IVec2I`

### to3d

    public IVecR to3d(double z)

  Specified by:
    `to3d` in interface `IVec2I`

### to3d

    public IVecR to3d(IDoubleI z)

  Specified by:
    `to3d` in interface `IVec2I`

### to4d

    public IVec4R to4d()

  Specified by:
    `to4d` in interface `IVec2I`

### to4d

    public IVec4R to4d(double z,
                       double w)

  Specified by:
    `to4d` in interface `IVec2I`

### to4d

    public IVec4R to4d(IDoubleI z,
                       IDoubleI w)

  Specified by:
    `to4d` in interface `IVec2I`

### set

    public IVec2R set(IVec2I u)

  Specified by:
    `set` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `set` in interface `IVec2I`

### set

    public IVec2R set(double x,
                      double y)

  Specified by:
    `set` in interface `IVec2I`

### set

    public IVec2R set(IDoubleI x,
                      IDoubleI y)

  Specified by:
    `set` in interface `IVec2I`

### add

    public IVec2R add(double x,
                      double y)

  Specified by:
    `add` in interface `IVec2I`

### add

    public IVec2R add(IDoubleI x,
                      IDoubleI y)

  Specified by:
    `add` in interface `IVec2I`

### add

    public IVec2R add(IVec2I u)

  Specified by:
    `add` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `add` in interface `IVec2I`

### sub

    public IVec2R sub(double x,
                      double y)

  Specified by:
    `sub` in interface `IVec2I`

### sub

    public IVec2R sub(IDoubleI x,
                      IDoubleI y)

  Specified by:
    `sub` in interface `IVec2I`

### sub

    public IVec2R sub(IVec2I u)

  Specified by:
    `sub` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `sub` in interface `IVec2I`

### mul

    public IVec2R mul(IDoubleI u)

  Specified by:
    `mul` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `mul` in interface `IVec2I`

### mul

    public IVec2R mul(double u)

  Specified by:
    `mul` in interface `IVec2I`

### div

    public IVec2R div(IDoubleI u)

  Specified by:
    `div` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `div` in interface `IVec2I`

### div

    public IVec2R div(double u)

  Specified by:
    `div` in interface `IVec2I`

### neg

    public IVec2R neg()

  Specified by:
    `neg` in interface `IVec2I`

### rev

    public IVec2R rev()

  alias of neg()

  Specified by:
    `rev` in interface `IVec2I`

### flip

    public IVec2R flip()

  alias of neg()

  Specified by:
    `flip` in interface `IVec2I`

### zero

    public IVec2R zero()

  setting all zero

  Specified by:
    `zero` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `zero` in interface `IVec2I`

### add

    public IVec2R add(IVec2I v,
                      double f)

  scale add

  Specified by:
    `add` in interface `IVec2I`

### add

    public IVec2R add(IVec2I v,
                      IDoubleI f)

  Description copied from interface: `IVec2I`
  scale add

  Specified by:
    `add` in interface `IVec2I`

### add

    public IVec2R add(double f,
                      IVec2I v)

  scale add alias

  Specified by:
    `add` in interface `IVec2I`

### add

    public IVec2R add(IDoubleI f,
                      IVec2I v)

  Description copied from interface: `IVec2I`
  scale add; alias

  Specified by:
    `add` in interface `IVec2I`

### dot

    public double dot(IVec2I u)

  Description copied from interface: `IVec2I`
  dot product

  Specified by:
    `dot` in interface `IVec2I`

### dot

    public double dot(double ux,
                      double uy)

  Description copied from interface: `IVec2I`
  dot product

  Specified by:
    `dot` in interface `IVec2I`

### dot

    public double dot(ISwitchE e,
                      IVec2I u)

  Description copied from interface: `IVec2I`
  dot product

  Specified by:
    `dot` in interface `IVec2I`

### dot

    public IDoubleR dot(ISwitchR r,
                        IVec2I u)

  Description copied from interface: `IVec2I`
  dot product

  Specified by:
    `dot` in interface `IVec2I`

### cross

    public IVecR cross(IVec2I u)

  Description copied from interface: `IVec2I`
  cross product, returning 3D vector

  Specified by:
    `cross` in interface `IVec2I`

### cross

    public IVecR cross(double ux,
                       double uy)

  Description copied from interface: `IVec2I`
  cross product, returning 3D vector

  Specified by:
    `cross` in interface `IVec2I`

### len

    public double len()

  Description copied from interface: `IVec2I`
  getting length

  Specified by:
    `len` in interface `IVec2I`

### len

    public double len(ISwitchE e)

  Description copied from interface: `IVec2I`
  getting length

  Specified by:
    `len` in interface `IVec2I`

### len

    public IDoubleR len(ISwitchR r)

  Description copied from interface: `IVec2I`
  getting length

  Specified by:
    `len` in interface `IVec2I`

### len2

    public double len2()

  Description copied from interface: `IVec2I`
  getting squared length

  Specified by:
    `len2` in interface `IVec2I`

### len2

    public double len2(ISwitchE e)

  Description copied from interface: `IVec2I`
  getting squared length

  Specified by:
    `len2` in interface `IVec2I`

### len2

    public IDoubleR len2(ISwitchR r)

  Description copied from interface: `IVec2I`
  getting squared length

  Specified by:
    `len2` in interface `IVec2I`

### len

    public IVec2R len(IDoubleI l)

  Description copied from interface: `IVec2I`
  setting length

  Specified by:
    `len` in interface `IVec2I`

### len

    public IVec2R len(double l)

  Description copied from interface: `IVec2I`
  setting length

  Specified by:
    `len` in interface `IVec2I`

### unit

    public IVec2R unit()

  Description copied from interface: `IVec2I`
  unitize

  Specified by:
    `unit` in interface `IVec2I`

### ortho

    public IVec2R ortho()

  Description copied from interface: `IVec2I`
  rotate 90 deg

  Specified by:
    `ortho` in interface `IVec2I`

### dist

    public double dist(IVec2I v)

  Description copied from interface: `IVec2I`
  distance

  Specified by:
    `dist` in interface `IVec2I`

### dist

    public double dist(double vx,
                       double vy)

  Description copied from interface: `IVec2I`
  distance

  Specified by:
    `dist` in interface `IVec2I`

### dist

    public double dist(ISwitchE e,
                       IVec2I v)

  Description copied from interface: `IVec2I`
  distance

  Specified by:
    `dist` in interface `IVec2I`

### dist

    public IDoubleR dist(ISwitchR r,
                         IVec2I v)

  Description copied from interface: `IVec2I`
  distance

  Specified by:
    `dist` in interface `IVec2I`

### dist2

    public double dist2(IVec2I v)

  squared distance

  Specified by:
    `dist2` in interface `IVec2I`

### dist2

    public double dist2(double vx,
                        double vy)

  Description copied from interface: `IVec2I`
  squared distance

  Specified by:
    `dist2` in interface `IVec2I`

### dist2

    public double dist2(ISwitchE e,
                        IVec2I v)

  Description copied from interface: `IVec2I`
  squared distance

  Specified by:
    `dist2` in interface `IVec2I`

### dist2

    public IDoubleR dist2(ISwitchR r,
                          IVec2I v)

  Description copied from interface: `IVec2I`
  squared distance

  Specified by:
    `dist2` in interface `IVec2I`

### eq

    public boolean eq(IVec2I v)

  whether location is same or not

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public boolean eq(double vx,
                      double vy)

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

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public boolean eq(ISwitchE e,
                      IVec2I v)

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

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public IBoolR eq(ISwitchR r,
                     IVec2I v)

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

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public boolean eq(IVec2I v,
                      double tolerance)

  Description copied from interface: `IVec2I`
  whether location is same or not with tolerance

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public boolean eq(double vx,
                      double vy,
                      double tolerance)

  Description copied from interface: `IVec2I`
  whether location is same or not with tolerance

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public boolean eq(ISwitchE e,
                      IVec2I v,
                      double tolerance)

  Description copied from interface: `IVec2I`
  whether location is same or not with tolerance

  Specified by:
    `eq` in interface `IVec2I`

### eq

    public IBoolR eq(ISwitchR r,
                     IVec2I v,
                     IDoubleI tolerance)

  Description copied from interface: `IVec2I`
  whether location is same or not with tolerance

  Specified by:
    `eq` in interface `IVec2I`

### eqX

    public boolean eqX(IVec2I v)

  Description copied from interface: `IVec2I`
  check if X is same

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(IVec2I v)

  Description copied from interface: `IVec2I`
  check if Y is same

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public boolean eqX(double vx)

  Description copied from interface: `IVec2I`
  check if X is same

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(double vy)

  Description copied from interface: `IVec2I`
  check if Y is same

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public boolean eqX(ISwitchE e,
                       IVec2I v)

  Description copied from interface: `IVec2I`
  check if X is same

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(ISwitchE e,
                       IVec2I v)

  Description copied from interface: `IVec2I`
  check if Y is same

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public IBoolR eqX(ISwitchR r,
                      IVec2I v)

  Description copied from interface: `IVec2I`
  check if X is same

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public IBoolR eqY(ISwitchR r,
                      IVec2I v)

  Description copied from interface: `IVec2I`
  check if Y is same

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public boolean eqX(IVec2I v,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if X is same within tolerance

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(IVec2I v,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if Y is same within tolerance

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public boolean eqX(double vx,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if X is same within tolerance

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(double vy,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if Y is same within tolerance

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public boolean eqX(ISwitchE e,
                       IVec2I v,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if X is same within tolerance

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public boolean eqY(ISwitchE e,
                       IVec2I v,
                       double tolerance)

  Description copied from interface: `IVec2I`
  check if Y is same within tolerance

  Specified by:
    `eqY` in interface `IVec2I`

### eqX

    public IBoolR eqX(ISwitchR r,
                      IVec2I v,
                      IDoubleI tolerance)

  Description copied from interface: `IVec2I`
  check if X is same within tolerance

  Specified by:
    `eqX` in interface `IVec2I`

### eqY

    public IBoolR eqY(ISwitchR r,
                      IVec2I v,
                      IDoubleI tolerance)

  Description copied from interface: `IVec2I`
  check if Y is same within tolerance

  Specified by:
    `eqY` in interface `IVec2I`

### angle

    public double angle(IVec2I u)

  Description copied from interface: `IVec2I`
  angle between two vectors

  Specified by:
    `angle` in interface `IVec2I`

### angle

    public double angle(double ux,
                        double uy)

  Description copied from interface: `IVec2I`
  angle between two vectors

  Specified by:
    `angle` in interface `IVec2I`

### angle

    public double angle(ISwitchE e,
                        IVec2I u)

  Description copied from interface: `IVec2I`
  angle between two vectors

  Specified by:
    `angle` in interface `IVec2I`

### angle

    public IDoubleR angle(ISwitchR r,
                          IVec2I u)

  Description copied from interface: `IVec2I`
  angle between two vectors

  Specified by:
    `angle` in interface `IVec2I`

### rot

    public IVec2R rot(double angle)

  Description copied from interface: `IVec2I`
  rotation

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(IDoubleI angle)

  Description copied from interface: `IVec2I`
  rotation

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(IVec2I center,
                      double angle)

  Description copied from interface: `IVec2I`
  rotation around a center

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(double centerX,
                      double centerY,
                      double angle)

  Description copied from interface: `IVec2I`
  rotation around a center

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(IVec2I center,
                      IDoubleI angle)

  Description copied from interface: `IVec2I`
  rotation around a center

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(IVec2I destDir)

  Description copied from interface: `IVec2I`
  rotate towards destination direction

  Specified by:
    `rot` in interface `IVec2I`

### rot

    public IVec2R rot(IVec2I center,
                      IVec2I destPt)

  Description copied from interface: `IVec2I`
  rotate around a center towards destination point

  Specified by:
    `rot` in interface `IVec2I`

### scale

    public IVec2R scale(double f)

  Description copied from interface: `IVec2I`
  alias of mul

  Specified by:
    `scale` in interface `IVec2I`

### scale

    public IVec2R scale(IDoubleI f)

  Description copied from interface: `IVec2I`
  alias of mul

  Specified by:
    `scale` in interface `IVec2I`

### scale

    public IVec2R scale(IVec2I center,
                        double f)

  Description copied from interface: `IVec2I`
  scale from a center

  Specified by:
    `scale` in interface `IVec2I`

### scale

    public IVec2R scale(double centerX,
                        double centerY,
                        double f)

  Description copied from interface: `IVec2I`
  scale from a center

  Specified by:
    `scale` in interface `IVec2I`

### scale

    public IVec2R scale(IVec2I center,
                        IDoubleI f)

  Description copied from interface: `IVec2I`
  scale from a center

  Specified by:
    `scale` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(IVec2I axis,
                          double f)

  scale only in 1 direction

  Specified by:
    `scale1d` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(double axisX,
                          double axisY,
                          double f)

  Description copied from interface: `IVec2I`
  scale only in 1 direction

  Specified by:
    `scale1d` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(IVec2I axis,
                          IDoubleI f)

  Description copied from interface: `IVec2I`
  scale only in 1 direction

  Specified by:
    `scale1d` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(IVec2I center,
                          IVec2I axis,
                          double f)

  Description copied from interface: `IVec2I`
  scale only in 1 direction from a center

  Specified by:
    `scale1d` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(double centerX,
                          double centerY,
                          double axisX,
                          double axisY,
                          double f)

  Description copied from interface: `IVec2I`
  scale only in 1 direction from a center

  Specified by:
    `scale1d` in interface `IVec2I`

### scale1d

    public IVec2R scale1d(IVec2I center,
                          IVec2I axis,
                          IDoubleI f)

  Description copied from interface: `IVec2I`
  scale only in 1 direction from a center

  Specified by:
    `scale1d` in interface `IVec2I`

### ref

    public IVec2R ref(IVec2I lineDir)

  reflect (mirror) 2 dimensionally to the other side of the line

  Specified by:
    `ref` in interface `IVec2I`

### ref

    public IVec2R ref(double lineX,
                      double lineY)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line

  Specified by:
    `ref` in interface `IVec2I`

### ref

    public IVec2R ref(IVec2I linePt,
                      IVec2I lineDir)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line at a center

  Specified by:
    `ref` in interface `IVec2I`

### ref

    public IVec2R ref(double linePtX,
                      double linePtY,
                      double lineDirX,
                      double lineDirY)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line at a center

  Specified by:
    `ref` in interface `IVec2I`

### mirror

    public IVec2R mirror(IVec2I lineDir)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line

  Specified by:
    `mirror` in interface `IVec2I`

### mirror

    public IVec2R mirror(double lineX,
                         double lineY)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line

  Specified by:
    `mirror` in interface `IVec2I`

### mirror

    public IVec2R mirror(IVec2I linePt,
                         IVec2I lineDir)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line at a center

  Specified by:
    `mirror` in interface `IVec2I`

### mirror

    public IVec2R mirror(double linePtX,
                         double linePtY,
                         double lineDirX,
                         double lineDirY)

  Description copied from interface: `IVec2I`
  reflect (mirror) 2 dimensionally to the other side of the line at a center

  Specified by:
    `mirror` in interface `IVec2I`

### shear

    public IVec2R shear(double sxy,
                        double syx)

  shear operation on XY

  Specified by:
    `shear` in interface `IVec2I`

### shear

    public IVec2R shear(IDoubleI sxy,
                        IDoubleI syx)

  shear operation on XY

  Specified by:
    `shear` in interface `IVec2I`

### shear

    public IVec2R shear(IVec2I center,
                        double sxy,
                        double syx)

  shear operation on XY

  Specified by:
    `shear` in interface `IVec2I`

### shear

    public IVec2R shear(IVec2I center,
                        IDoubleI sxy,
                        IDoubleI syx)

  shear operation on XY

  Specified by:
    `shear` in interface `IVec2I`

### translate

    public IVec2R translate(double x,
                            double y)

  alias of add()

  Specified by:
    `translate` in interface `IVec2I`

### translate

    public IVec2R translate(IDoubleI x,
                            IDoubleI y)

  alias of add()

  Specified by:
    `translate` in interface `IVec2I`

### translate

    public IVec2R translate(IVec2I v)

  alias of add()

  Specified by:
    `translate` in interface `IVec2I`

### transform

    public IVec2R transform(IMatrix2I mat)

  Description copied from interface: `IVec2I`
  transform with 2x2 transform matrix

  Specified by:
    `transform` in interface `IVec2I`

### transform

    public IVec2R transform(IMatrix3I mat)

  Description copied from interface: `IVec2I`
  transform with 3x3 transform matrix

  Specified by:
    `transform` in interface `IVec2I`

### transform

    public IVec2R transform(IVec2I xvec,
                            IVec2I yvec)

  Description copied from interface: `IVec2I`
  transform with transform vectors

  Specified by:
    `transform` in interface `IVec2I`

### transform

    public IVec2R transform(IVec2I xvec,
                            IVec2I yvec,
                            IVec2I translate)

  Description copied from interface: `IVec2I`
  transform with transform vectors

  Specified by:
    `transform` in interface `IVec2I`

### mv

    public IVec2R mv(double x,
                     double y)

  mv() is alias of add()

  Specified by:
    `mv` in interface `IVec2I`

### mv

    public IVec2R mv(IDoubleI x,
                     IDoubleI y)

  mv() is alias of add()

  Specified by:
    `mv` in interface `IVec2I`

### mv

    public IVec2R mv(IVec2I v)

  mv() is alias of add()

  Specified by:
    `mv` in interface `IVec2I`

### cp

    public IVec2R cp()

  cp() is alias of dup()

  Specified by:
    `cp` in interface `IArithmeticVal<IVec2I,IDoubleI>`
  Specified by:
    `cp` in interface `IVec2I`

### cp

    public IVec2R cp(double x,
                     double y)

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

  Specified by:
    `cp` in interface `IVec2I`

### cp

    public IVec2R cp(IDoubleI x,
                     IDoubleI y)

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

  Specified by:
    `cp` in interface `IVec2I`

### cp

    public IVec2R cp(IVec2I v)

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

  Specified by:
    `cp` in interface `IVec2I`

### dif

    public IVec2R dif(IVec2I v)

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

  Specified by:
    `dif` in interface `IVec2I`

### dif

    public IVec2R dif(double vx,
                      double vy)

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

  Specified by:
    `dif` in interface `IVec2I`

### diff

    public IVec2R diff(IVec2I v)

  Description copied from interface: `IVec2I`
  alias of dif

  Specified by:
    `diff` in interface `IVec2I`

### diff

    public IVec2R diff(double vx,
                       double vy)

  Description copied from interface: `IVec2I`
  alias of dif

  Specified by:
    `diff` in interface `IVec2I`

### mid

    public IVec2R mid(IVec2I v)

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

  Specified by:
    `mid` in interface `IVec2I`

### mid

    public IVec2R mid(double vx,
                      double vy)

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

  Specified by:
    `mid` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I v)

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

  Specified by:
    `sum` in interface `IVec2I`

### sum

    public IVec2R sum(double vx,
                      double vy)

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

  Specified by:
    `sum` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I... v)

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

  Specified by:
    `sum` in interface `IVec2I`

### bisect

    public IVec2R bisect(IVec2I v)

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

  Specified by:
    `bisect` in interface `IVec2I`

### bisect

    public IVec2R bisect(double vx,
                         double vy)

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

  Specified by:
    `bisect` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I v2,
                      double w1,
                      double w2)

  weighted sum

  Specified by:
    `sum` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I v2,
                      double w2)

  Description copied from interface: `IVec2I`
  create a new instance of weighted sum

  Specified by:
    `sum` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I v2,
                      IDoubleI w1,
                      IDoubleI w2)

  Description copied from interface: `IVec2I`
  create a new instance of weighted sum

  Specified by:
    `sum` in interface `IVec2I`

### sum

    public IVec2R sum(IVec2I v2,
                      IDoubleI w2)

  Description copied from interface: `IVec2I`
  create a new instance of weighted sum

  Specified by:
    `sum` in interface `IVec2I`

### nml

    public IVecR nml(IVec2I v)

  alias of cross

  Specified by:
    `nml` in interface `IVec2I`

### nml

    public IVecR nml(double vx,
                     double vy)

  alias of cross

  Specified by:
    `nml` in interface `IVec2I`

### nml

    public IVecR nml(IVec2I pt1,
                     IVec2I pt2)

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

  Specified by:
    `nml` in interface `IVec2I`

### nml

    public IVecR nml(double vx1,
                     double vy1,
                     double vx2,
                     double vy2)

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

  Specified by:
    `nml` in interface `IVec2I`

### isValid

    public boolean isValid()

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

  Specified by:
    `isValid` in interface `IVec2I`

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