igeo
Class IVecR

java.lang.Object
  extended by igeo.IParameterObject
      extended by igeo.IVecR
All Implemented Interfaces:
IParameter, IReferenceParameter, ISubobject, ITransformable, IVecI, IVecOp

public class IVecR
extends IParameterObject
implements IVecI, IReferenceParameter

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


Nested Class Summary
static class IVecR.Add
           
static class IVecR.Angle
           
static class IVecR.Cross
           
static class IVecR.Dist
           
static class IVecR.Dist2
           
static class IVecR.Div
           
static class IVecR.Dot
           
static class IVecR.Eq
           
static class IVecR.EqX
           
static class IVecR.EqY
           
static class IVecR.EqZ
           
static class IVecR.FromXYZ
           
static class IVecR.Len
           
static class IVecR.Len2
           
static class IVecR.Mul
           
static class IVecR.Neg
           
static class IVecR.Ref
           
static class IVecR.Rot
           
static class IVecR.Scale1d
           
static class IVecR.SetLen
           
static class IVecR.Shear
           
static class IVecR.Sub
           
static class IVecR.ToVec2
           
static class IVecR.Transform3
           
static class IVecR.Transform4
           
static class IVecR.TransformVec3
           
static class IVecR.TransformVec4
           
static class IVecR.Unit
           
static class IVecR.X
           
static class IVecR.Y
           
static class IVecR.Z
           
 
Field Summary
protected  IVecOp op
           
 
Fields inherited from class igeo.IParameterObject
parent
 
Constructor Summary
IVecR(double x, double y, double z)
           
IVecR(IDoubleI x, IDoubleI y, IDoubleI z)
           
IVecR(IServerI s, double x, double y, double z)
           
IVecR(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z)
           
IVecR(IServerI s, IVecOp v)
           
IVecR(IVecOp v)
           
 
Method Summary
 IVecR add(double x, double y, double z)
           
 IVecR add(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR add(IVecI u)
           
 IVecR add(IVecI v, double f)
          scale add
 IVecR add(IVecI v, IDoubleI f)
           
 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)
           
 IVecR bisect(IVecI v)
           
 IVecR cp()
          cp() is alias of dup()
 IVecR cp(double x, double y, double z)
          cp() is alias of dup().add()
 IVecR cp(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR cp(IVecI v)
           
 IVecR cross(IVecI u)
          cross is now creating a new instance (2011/08/03)
 IVecR diff(IVecI v)
          methods creating new instance
 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
 IVecR div(double u)
           
 IVecR div(IDoubleI u)
           
 double dot(ISwitchE e, IVecI u)
           
 IDoubleR dot(ISwitchR r, IVecI u)
           
 double dot(IVecI u)
           
 IVecR 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 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)
           
 IVecR flip()
          alias of neg()
 IVec get()
           
 IDoubleR getX()
           
 IDoubleR getY()
           
 IDoubleR getZ()
           
 boolean isValid()
          checking x, y, and z is valid number (not Infinite, nor NaN).
 double len()
           
 IVecR len(double l)
           
 IVecR len(IDoubleI l)
           
 double len(ISwitchE e)
           
 IDoubleR len(ISwitchR r)
           
 double len2()
          square of length
 double len2(ISwitchE e)
           
 IDoubleR len2(ISwitchR r)
           
 IVecR mid(IVecI v)
           
 IVecR mirror(IVecI planeDir)
          mirror is alias of ref
 IVecR mirror(IVecI center, IVecI planeDir)
           
 IVecR mul(double u)
           
 IVecR mul(IDoubleI u)
           
 IVecR mv(double x, double y, double z)
          mv() is alias of add()
 IVecR mv(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR mv(IVecI v)
           
 IVecR neg()
           
 IVecR nml(IVecI v)
          alias of cross.
 IVecR nml(IVecI pt1, IVecI pt2)
          create normal vector from 3 points of self, pt1 and pt2
 IVecOp operator()
           
 IVecR ref(IVecI planeDir)
          reflect (mirror) 3 dimensionally to the other side of the plane
 IVecR ref(IVecI center, IVecI planeDir)
           
 IVecR rev()
          alias of neg()
 IVecR rot(IVecI axis, double angle)
           
 IVecR rot(IVecI axis, IDoubleI angle)
           
 IVecR rot(IVecI axis, IVecI destDir)
          rotate to destination direction vector
 IVecR rot(IVecI center, IVecI axis, double angle)
           
 IVecR rot(IVecI center, IVecI axis, IDoubleI angle)
           
 IVecR rot(IVecI center, IVecI axis, IVecI destPt)
          rotate to destination point location
 IVecR scale(double f)
           
 IVecR scale(IDoubleI f)
          alias of mul
 IVecR scale(IVecI center, double f)
           
 IVecR scale(IVecI center, IDoubleI f)
           
 IVecR scale1d(IVecI axis, double f)
          scale only in 1 direction
 IVecR scale1d(IVecI axis, IDoubleI f)
           
 IVecR scale1d(IVecI center, IVecI axis, double f)
           
 IVecR scale1d(IVecI center, IVecI axis, IDoubleI f)
           
 IVecR set(double x, double y, double z)
           
 IVecR set(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR set(IVecI u)
           
 IVecR shear(double sxy, double syx, double syz, double szy, double szx, double sxz)
          shear operation
 IVecR shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
           
 IVecR shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)
           
 IVecR shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
           
 IVecR shearXY(double sxy, double syx)
           
 IVecR shearXY(IDoubleI sxy, IDoubleI syx)
           
 IVecR shearXY(IVecI center, double sxy, double syx)
           
 IVecR shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)
           
 IVecR shearYZ(double syz, double szy)
           
 IVecR shearYZ(IDoubleI syz, IDoubleI szy)
           
 IVecR shearYZ(IVecI center, double syz, double szy)
           
 IVecR shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)
           
 IVecR shearZX(double szx, double sxz)
           
 IVecR shearZX(IDoubleI szx, IDoubleI sxz)
           
 IVecR shearZX(IVecI center, double szx, double sxz)
           
 IVecR shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)
           
 IVecR sub(double x, double y, double z)
           
 IVecR sub(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR sub(IVecI u)
           
 IVecR sum(IVecI... v)
           
 IVecR sum(IVecI v)
           
 IVecR sum(IVecI v2, double w2)
           
 IVecR sum(IVecI v2, double w1, double w2)
          weighted sum
 IVecR sum(IVecI v2, IDoubleI w2)
           
 IVecR sum(IVecI v2, IDoubleI w1, IDoubleI w2)
          weighted sum, creating a new instance
 IVec2R to2d()
           
 IVec4R to4d()
           
 IVec4R to4d(double w)
           
 IVec4R to4d(IDoubleI w)
           
 IVecR transform(IMatrix3I mat)
          transform with matrix
 IVecR transform(IMatrix4I mat)
           
 IVecR transform(IVecI xvec, IVecI yvec, IVecI zvec)
           
 IVecR transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)
           
 IVecR translate(double x, double y, double z)
          translate is alias of add()
 IVecR translate(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVecR translate(IVecI v)
           
 IVecR unit()
           
 double x()
           
 double y()
           
 double z()
           
 
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 IVecOp op
Constructor Detail

IVecR

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

IVecR

public IVecR(IVecOp v)

IVecR

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

IVecR

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

IVecR

public IVecR(IServerI s,
             IVecOp v)

IVecR

public IVecR(IServerI s,
             IDoubleI x,
             IDoubleI y,
             IDoubleI z)
Method Detail

x

public double x()
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

dup

public IVecR dup()
Description copied from interface: ITransformable
duplicate the instance

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

to2d

public IVec2R to2d()
Specified by:
to2d in interface IVecI

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 IVecI

getY

public IDoubleR getY()
Specified by:
getY in interface IVecI

getZ

public IDoubleR getZ()
Specified by:
getZ in interface IVecI

operator

public IVecOp operator()
Specified by:
operator in interface IReferenceParameter

set

public IVecR set(IVecI u)
Specified by:
set in interface IVecI

set

public IVecR set(double x,
                 double y,
                 double z)
Specified by:
set in interface IVecI

set

public IVecR set(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
set in interface IVecI

add

public IVecR add(double x,
                 double y,
                 double z)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI

add

public IVecR add(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI

add

public IVecR add(IVecI u)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI

sub

public IVecR sub(double x,
                 double y,
                 double z)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVecI

sub

public IVecR sub(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVecI

sub

public IVecR sub(IVecI u)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVecI

mul

public IVecR mul(IDoubleI u)
Specified by:
mul in interface ITransformable
Specified by:
mul in interface IVecI

mul

public IVecR mul(double u)
Specified by:
mul in interface ITransformable
Specified by:
mul in interface IVecI

div

public IVecR div(IDoubleI u)
Specified by:
div in interface ITransformable
Specified by:
div in interface IVecI

div

public IVecR div(double u)
Specified by:
div in interface ITransformable
Specified by:
div in interface IVecI

neg

public IVecR neg()
Specified by:
neg in interface ITransformable
Specified by:
neg in interface IVecI

rev

public IVecR rev()
alias of neg()

Specified by:
rev in interface IVecI

flip

public IVecR flip()
alias of neg()

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

add

public IVecR 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 IVecR add(IVecI v,
                 IDoubleI f)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI

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 IVecR cross(IVecI u)
cross is now creating a new instance (2011/08/03)

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 IVecR len(IDoubleI l)
Specified by:
len in interface IVecI

len

public IVecR len(double l)
Specified by:
len in interface IVecI

unit

public IVecR 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 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

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)
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 IBoolR eqX(ISwitchR r,
                  IVecI v)
Specified by:
eqX in interface IVecI

eqY

public IBoolR eqY(ISwitchR r,
                  IVecI v)
Specified by:
eqY in interface IVecI

eqZ

public IBoolR 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 IBoolR eqX(ISwitchR r,
                  IVecI v,
                  IDoubleI resolution)
Specified by:
eqX in interface IVecI

eqY

public IBoolR eqY(ISwitchR r,
                  IVecI v,
                  IDoubleI resolution)
Specified by:
eqY in interface IVecI

eqZ

public IBoolR eqZ(ISwitchR r,
                  IVecI v,
                  IDoubleI resolution)
Specified by:
eqZ in interface IVecI

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
Parameters:
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 IVecR rot(IVecI axis,
                 IDoubleI angle)
Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVecI

rot

public IVecR rot(IVecI axis,
                 double angle)
Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVecI

rot

public IVecR rot(IVecI center,
                 IVecI axis,
                 IDoubleI angle)
Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVecI

rot

public IVecR rot(IVecI center,
                 IVecI axis,
                 double angle)
Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVecI

rot

public IVecR rot(IVecI axis,
                 IVecI destDir)
rotate to destination direction vector

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

rot

public IVecR rot(IVecI center,
                 IVecI axis,
                 IVecI destPt)
rotate to destination point location

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

scale

public IVecR scale(IDoubleI f)
alias of mul

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

scale

public IVecR scale(double f)
Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVecI

scale

public IVecR scale(IVecI center,
                   IDoubleI f)
Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVecI

scale

public IVecR scale(IVecI center,
                   double f)
Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVecI

scale1d

public IVecR scale1d(IVecI axis,
                     double f)
scale only in 1 direction

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

scale1d

public IVecR scale1d(IVecI axis,
                     IDoubleI f)
Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVecI

scale1d

public IVecR scale1d(IVecI center,
                     IVecI axis,
                     double f)
Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVecI

scale1d

public IVecR scale1d(IVecI center,
                     IVecI axis,
                     IDoubleI f)
Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVecI

ref

public IVecR 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 IVecR ref(IVecI center,
                 IVecI planeDir)
Specified by:
ref in interface ITransformable
Specified by:
ref in interface IVecI

mirror

public IVecR mirror(IVecI planeDir)
Description copied from interface: ITransformable
mirror is alias of ref

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

mirror

public IVecR mirror(IVecI center,
                    IVecI planeDir)
Specified by:
mirror in interface ITransformable
Specified by:
mirror in interface IVecI

shear

public IVecR 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 IVecR 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 IVecR 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 IVecR 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 IVecR shearXY(double sxy,
                     double syx)
Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVecI

shearXY

public IVecR shearXY(IDoubleI sxy,
                     IDoubleI syx)
Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVecI

shearXY

public IVecR shearXY(IVecI center,
                     double sxy,
                     double syx)
Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVecI

shearXY

public IVecR shearXY(IVecI center,
                     IDoubleI sxy,
                     IDoubleI syx)
Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVecI

shearYZ

public IVecR shearYZ(double syz,
                     double szy)
Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVecI

shearYZ

public IVecR shearYZ(IDoubleI syz,
                     IDoubleI szy)
Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVecI

shearYZ

public IVecR shearYZ(IVecI center,
                     double syz,
                     double szy)
Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVecI

shearYZ

public IVecR shearYZ(IVecI center,
                     IDoubleI syz,
                     IDoubleI szy)
Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVecI

shearZX

public IVecR shearZX(double szx,
                     double sxz)
Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVecI

shearZX

public IVecR shearZX(IDoubleI szx,
                     IDoubleI sxz)
Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVecI

shearZX

public IVecR shearZX(IVecI center,
                     double szx,
                     double sxz)
Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVecI

shearZX

public IVecR shearZX(IVecI center,
                     IDoubleI szx,
                     IDoubleI sxz)
Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVecI

translate

public IVecR 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 IVecR translate(IDoubleI x,
                       IDoubleI y,
                       IDoubleI z)
Specified by:
translate in interface ITransformable
Specified by:
translate in interface IVecI

translate

public IVecR translate(IVecI v)
Specified by:
translate in interface ITransformable
Specified by:
translate in interface IVecI

transform

public IVecR transform(IMatrix3I mat)
transform with matrix

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

transform

public IVecR transform(IMatrix4I mat)
Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVecI

transform

public IVecR transform(IVecI xvec,
                       IVecI yvec,
                       IVecI zvec)
Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVecI

transform

public IVecR transform(IVecI xvec,
                       IVecI yvec,
                       IVecI zvec,
                       IVecI translate)
Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVecI

mv

public IVecR 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 IVecR mv(IDoubleI x,
                IDoubleI y,
                IDoubleI z)
Specified by:
mv in interface ITransformable
Specified by:
mv in interface IVecI

mv

public IVecR mv(IVecI v)
Specified by:
mv in interface ITransformable
Specified by:
mv in interface IVecI

cp

public IVecR cp()
cp() is alias of dup()

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

cp

public IVecR 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 IVecR cp(IDoubleI x,
                IDoubleI y,
                IDoubleI z)
Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVecI

cp

public IVecR cp(IVecI v)
Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVecI

diff

public IVecR diff(IVecI v)
methods creating new instance

Specified by:
diff in interface IVecI

mid

public IVecR mid(IVecI v)
Specified by:
mid in interface IVecI

sum

public IVecR sum(IVecI v)
Specified by:
sum in interface IVecI

sum

public IVecR sum(IVecI... v)
Specified by:
sum in interface IVecI

bisect

public IVecR bisect(IVecI v)
Specified by:
bisect in interface IVecI

sum

public IVecR sum(IVecI v2,
                 IDoubleI w1,
                 IDoubleI w2)
weighted sum, creating a new instance

Specified by:
sum in interface IVecI

sum

public IVecR sum(IVecI v2,
                 IDoubleI w2)
Specified by:
sum in interface IVecI

sum

public IVecR sum(IVecI v2,
                 double w1,
                 double w2)
Description copied from interface: IVecI
weighted sum

Specified by:
sum in interface IVecI

sum

public IVecR sum(IVecI v2,
                 double w2)
Specified by:
sum in interface IVecI

nml

public IVecR nml(IVecI v)
alias of cross. (not unitized ... ?)

Specified by:
nml in interface IVecI

nml

public IVecR 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