igeo
Class IVec4

java.lang.Object
  extended by igeo.IParameterObject
      extended by igeo.IVec
          extended by igeo.IVec4
All Implemented Interfaces:
IEntityParameter, IParameter, ISubobject, ITransformable, IVec4I, IVec4Op, IVecI, IVecOp

public class IVec4
extends IVec
implements IVec4I, IEntityParameter

Class of 4 dimensional vector. 4 dimensional vector is mainly used for control points of NURBS geometry to include weights

Version:
0.7.0.0;
Author:
Satoru Sugihara

Field Summary
 double w
           
 
Fields inherited from class igeo.IVec
origin, x, xaxis, y, yaxis, z, zaxis
 
Fields inherited from class igeo.IParameterObject
parent
 
Constructor Summary
IVec4()
           
IVec4(double x, double y, double z)
           
IVec4(double x, double y, double z, double w)
           
IVec4(IDoubleI x, IDoubleI y, IDoubleI z)
           
IVec4(IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)
           
IVec4(IServerI s)
           
IVec4(IServerI s, double x, double y, double z)
           
IVec4(IServerI s, double x, double y, double z, double w)
           
IVec4(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z)
           
IVec4(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)
           
IVec4(IServerI s, IVec v)
           
IVec4(IServerI s, IVec4 v)
           
IVec4(IServerI s, IVec4I v)
           
IVec4(IServerI s, IVec v, double w)
           
IVec4(IServerI s, IVecI v)
           
IVec4(IServerI s, IVecI v, double w)
           
IVec4(IServerI s, IVecI v, IDoubleI w)
           
IVec4(IVec v)
           
IVec4(IVec4 v)
           
IVec4(IVec4I v)
           
IVec4(IVec v, double w)
           
IVec4(IVecI v)
           
IVec4(IVecI v, double w)
           
IVec4(IVecI v, IDoubleI w)
           
 
Method Summary
 IVec4 add(double x, double y, double z)
           
 IVec4 add(double f, IVec v)
          scale add alias
 IVec4 add(double f, IVecI v)
          scale add alias
 IVec4 add(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVec4 add(IDoubleI f, IVecI v)
          scale add alias
 IVec4 add(IVec v)
           
 IVec4 add(IVec v, double f)
          scale add
 IVec4 add(IVecI v)
           
 IVec4 add(IVecI v, double f)
          scale add
 IVec4 add(IVecI v, IDoubleI f)
          scale add
 IVec4 bisect(double vx, double vy, double vz)
          create a new instance of bisector
 IVec4 bisect(IVec v)
          create a new instance of bisector
 IVec4 bisect(IVecI v)
          create a new instance of bisector
 IVec4 cp()
          cp() is alias of dup()
 IVec4 cp(double vx, double vy, double vz)
          cp() is alias of dup().add()
 IVec4 cp(IDoubleI vx, IDoubleI vy, IDoubleI vz)
          cp() is alias of dup().add()
 IVec4 cp(IVec v)
          cp() is alias of dup().add()
 IVec4 cp(IVecI v)
          cp() is alias of dup().add()
 IVec4 cross(double vx, double vy, double vz)
          cross product, returning a new instance.
 IVec4 cross(IVec v)
          cross product, returning a new instance.
 IVec4 cross(IVecI v)
          cross product, creating a new instance
 IVec4 dif(double vx, double vy, double vz)
          create a new instance of difference
 IVec4 dif(IVec v)
          create a new instance of difference
 IVec4 dif(IVecI v)
          create a new instance of difference
 IVec4 diff(double vx, double vy, double vz)
          create a new instance of difference
 IVec4 diff(IVec v)
          create a new instance of difference
 IVec4 diff(IVecI v)
          create a new instance of difference
 IVec4 div(double v)
           
 IVec4 div(IDoubleI v)
           
 IVec4 dup()
          duplicate the instance
 boolean eqW(double vw)
           
 boolean eqW(double vw, double tolerance)
           
 boolean eqW(ISwitchE e, IVec4I v)
           
 boolean eqW(ISwitchE e, IVec4I v, double tolerance)
           
 IBool eqW(ISwitchR r, IVec4I v)
           
 IBool eqW(ISwitchR r, IVec4I v, IDoubleI tolerance)
           
 boolean eqW(IVec4 v)
           
 boolean eqW(IVec4 v, double tolerance)
           
 boolean eqW(IVec4I v)
           
 boolean eqW(IVec4I v, double tolerance)
           
 IVec4 flip()
          note that it's not negating w
 IVec4 get()
           
 IDouble getW()
           
 IVec4 icross(double vx, double vy, double vz)
          cross product, changing the instance not creating a new instance
 IVec4 icross(IVec v)
          cross product, changing the instance not creating a new instance
 IVec4 icross(IVecI v)
          cross product, changing the instance not creating a new instance
 boolean isValid()
          checking x, y, and z is valid number (not Infinite, nor NaN).
 IVec4 len(double l)
          setting length of vector, ignoring w
 IVec4 len(IDoubleI l)
          setting length of vector, ignoring w
 IVec4 mid(double vx, double vy, double vz)
          create a new instance of midpoint
 IVec4 mid(IVec v)
          create a new instance of midpoint
 IVec4 mid(IVecI v)
          create a new instance of midpoint
 IVec4 mirror(double planeX, double planeY, double planeZ)
          alias of ref
 IVec4 mirror(double centerX, double centerY, double centerZ, double planeX, double planeY, double planeZ)
          alias of ref
 IVec4 mirror(IVec planeDir)
          alias of ref
 IVec4 mirror(IVecI planeDir)
          alias of ref
 IVec4 mirror(IVecI center, IVecI planeDir)
          alias of ref
 IVec4 mirror(IVec center, IVec planeDir)
          alias of ref
 IVec4 mul(double v)
           
 IVec4 mul(IDoubleI v)
           
 IVec4 mv(double vx, double vy, double vz)
          mv() is alias of add()
 IVec4 mv(IDoubleI vx, IDoubleI vy, IDoubleI vz)
          mv() is alias of add()
 IVec4 mv(IVecI v)
          mv() is alias of add()
 IVec4 neg()
          note that it's not negating w
 IVec4 nml(double vx, double vy, double vz)
          alias of cross.
 IVec4 nml(double vx1, double vy1, double vz1, double vx2, double vy2, double vz2)
          create normal vector from 3 points of self, pt1 and pt2, not unitized
 IVec4 nml(IVec v)
          alias of cross.
 IVec4 nml(IVecI v)
          alias of cross.
 IVec4 nml(IVecI pt1, IVecI pt2)
          create normal vector from 3 points of self, pt1 and pt2, not unitized
 IVec4 nml(IVec pt1, IVec pt2)
          create normal vector from 3 points of self, pt1 and pt2, not unitized
 IVec4 ref(double planeX, double planeY, double planeZ)
          reflect (mirror) 3 dimensionally to the other side of the plane
 IVec4 ref(double centerX, double centerY, double centerZ, double planeX, double planeY, double planeZ)
          reflect (mirror) 3 dimensionally to the other side of the plane at the center
 IVec4 ref(IVec planeDir)
          reflect (mirror) 3 dimensionally to the other side of the plane
 IVec4 ref(IVecI planeDir)
          reflect (mirror) 3 dimensionally to the other side of the plane
 IVec4 ref(IVecI center, IVecI planeDir)
          reflect (mirror) 3 dimensionally to the other side of the plane at the center
 IVec4 ref(IVec center, IVec planeDir)
          reflect (mirror) 3 dimensionally to the other side of the plane at the center
 IVec4 rev()
          note that it's not negating w
 IVec4 rot(double angle)
          rotation on xy-plane
 IVec4 rot(double axisX, double axisY, double axisZ, double angle)
          rotate the vector around the axis
 IVec4 rot(double centerX, double centerY, double centerZ, double axisX, double axisY, double axisZ, double angle)
          rotation around axis vector and center point
 IVec4 rot(IDoubleI angle)
          rotation on xy-plane
 IVec4 rot(IVec axis, double angle)
          rotate the vector around the axis
 IVec4 rot(IVecI axis, double angle)
          rotation around axis vector
 IVec4 rot(IVecI axis, IDoubleI angle)
          rotation around axis vector
 IVec4 rot(IVecI axis, IVecI destDir)
          rotation around axis towards destination direction
 IVec4 rot(IVecI center, IVecI axis, double angle)
          rotation around axis vector and center point
 IVec4 rot(IVecI center, IVecI axis, IDoubleI angle)
          rotation around axis vector and center
 IVec4 rot(IVecI center, IVecI axis, IVecI destPt)
          rotation around axis and center towards destination point
 IVec4 rot(IVec axis, IVec destDir)
          rotation around axis towards destination direction
 IVec4 rot(IVec center, IVec axis, double angle)
           
 IVec4 rot(IVec center, IVec axis, IVec destPt)
          rotation around axis and center towards destination point
 IVec4 rot2(double angle)
          alias of rot(double)
 IVec4 rot2(double centerX, double centerY, double angle)
          rotation on xy-plane
 IVec4 rot2(IDoubleI angle)
          alias of rot(IDoubleI)
 IVec4 rot2(IVec destDir)
          rotation on xy-plane towards destDir
 IVec4 rot2(IVec center, double angle)
          rotation on xy-plane
 IVec4 rot2(IVecI destDir)
          rotation on xy-plane towards destDir
 IVec4 rot2(IVecI center, double angle)
          rotation on xy-plane
 IVec4 rot2(IVecI center, IDoubleI angle)
          rotation on xy-plane
 IVec4 rot2(IVecI center, IVecI destPt)
          rotation on xy-plane towards destPt
 IVec4 rot2(IVec center, IVec destPt)
          rotation on xy-plane towards destPt
 IVec4 scale(double f)
          alias of mul
 IVec4 scale(double centerX, double centerY, double centerZ, double f)
          scale from the center
 IVec4 scale(IDoubleI f)
          alias of mul
 IVec4 scale(IVec center, double f)
          scale from the center
 IVec4 scale(IVecI center, double f)
          scale from the center
 IVec4 scale(IVecI center, IDoubleI f)
          scale from the center
 IVec4 scale1d(double axisX, double axisY, double axisZ, double f)
          scale only in 1 direction
 IVec4 scale1d(double centerX, double centerY, double centerZ, double axisX, double axisY, double axisZ, double f)
          scale only in 1 direction
 IVec4 scale1d(IVec axis, double f)
          scale only in 1 direction
 IVec4 scale1d(IVecI axis, double f)
          scale only in 1 direction
 IVec4 scale1d(IVecI axis, IDoubleI f)
          scale only in 1 direction
 IVec4 scale1d(IVecI center, IVecI axis, double f)
          scale only in 1 direction
 IVec4 scale1d(IVecI center, IVecI axis, IDoubleI f)
          scale only in 1 direction
 IVec4 scale1d(IVec center, IVec axis, double f)
          scale only in 1 direction
 IVec4 set(double x, double y, double z)
           
 IVec4 set(double x, double y, double z, double w)
           
 IVec4 set(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVec4 set(IDoubleI x, IDoubleI y, IDoubleI z, IDoubleI w)
           
 IVec4 set(IVec v)
           
 IVec4 set(IVec4 v)
           
 IVec4 set(IVec4I v)
           
 IVec4 set(IVec v, double w)
           
 IVec4 set(IVecI v)
           
 IVec4 set(IVecI v, double w)
           
 IVec4 set(IVecI v, IDoubleI w)
           
 IVec4 shear(double sxy, double syx, double syz, double szy, double szx, double sxz)
          shear operation
 IVec4 shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
          shear operation
 IVec4 shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)
          shear operation
 IVec4 shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
          shear operation
 IVec4 shearXY(double sxy, double syx)
          shear operation on XY
 IVec4 shearXY(IDoubleI sxy, IDoubleI syx)
          shear operation on XY
 IVec4 shearXY(IVecI center, double sxy, double syx)
          shear operation on XY
 IVec4 shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)
          shear operation on XY
 IVec4 shearYZ(double syz, double szy)
          shear operation on YZ
 IVec4 shearYZ(IDoubleI syz, IDoubleI szy)
          shear operation on YZ
 IVec4 shearYZ(IVecI center, double syz, double szy)
          shear operation on YZ
 IVec4 shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)
          shear operation on YZ
 IVec4 shearZX(double szx, double sxz)
          shear operation on ZX
 IVec4 shearZX(IDoubleI szx, IDoubleI sxz)
          shear operation on ZX
 IVec4 shearZX(IVecI center, double szx, double sxz)
          shear operation on ZX
 IVec4 shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)
          shear operation on ZX
 IVec4 sub(double x, double y, double z)
           
 IVec4 sub(IDoubleI x, IDoubleI y, IDoubleI z)
           
 IVec4 sub(IVec v)
           
 IVec4 sub(IVecI v)
           
 IVec4 sum(double vx, double vy, double vz)
          create a new instance of summation
 IVec4 sum(IVec... v)
          create a new instance of summation
 IVec4 sum(IVec v)
          create a new instance of summation
 IVec4 sum(IVec v2, double w2)
          create a new instance of weighted summation
 IVec4 sum(IVec v2, double w1, double w2)
          create a new instance of weighted summation
 IVec4 sum(IVecI... v)
          create a new instance of summation
 IVec4 sum(IVecI v)
          create a new instance of summation
 IVec4 sum(IVecI v2, double w2)
          create a new instance of weighted summation
 IVec4 sum(IVecI v2, double w1, double w2)
          create a new instance of weighted summation
 IVec4 sum(IVecI v2, IDoubleI w2)
          create a new instance of weighted summation
 IVec4 sum(IVecI v2, IDoubleI w1, IDoubleI w2)
          create a new instance of weighted summation
 IVec2 to2d()
           
 IVec to3d()
           
 IVec4 to4d()
           
 IVec4 to4d(double w)
           
 IVec4 to4d(IDoubleI w)
           
 java.lang.String toString()
           
 IVec4 transform(IMatrix3I mat)
          transform with a transformation matrix
 IVec4 transform(IMatrix4I mat)
          transform with a transformation matrix
 IVec4 transform(IVecI xvec, IVecI yvec, IVecI zvec)
          transform with a transformation vectors
 IVec4 transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)
          transform with a transformation vectors
 IVec4 transform(IVec xvec, IVec yvec, IVec zvec)
           
 IVec4 transform(IVec xvec, IVec yvec, IVec zvec, IVec translate)
           
 IVec4 translate(double x, double y, double z)
          translate() is alias of add()
 IVec4 translate(IDoubleI x, IDoubleI y, IDoubleI z)
          alias of add()
 IVec4 translate(IVecI v)
          alias of add()
 IVec4 unit()
          unitize, ignoring w
 double w()
          getting w component
 IVec4 w(double vw)
          setting w component
 IVec4 w(IDoubleI vw)
          setting z component
 double w(ISwitchE e)
          getting z component
 IDouble w(ISwitchR r)
          getting z component
 IVec4 x(double vx)
          setting x component
 IVec4 x(IDoubleI vx)
          setting x component
 IVec4 y(double vy)
          setting y component
 IVec4 y(IDoubleI vy)
          setting y component
 IVec4 z(double vz)
          setting z component
 IVec4 z(IDoubleI vz)
          setting z component
 IVec4 zero()
          note that w is not set zero
 
Methods inherited from class igeo.IVec
angle, angle, angle, angle, angle, angle, angle, angle, angle, angle, angle, averageNormal, averageNormal, center, decompose, dist, dist, dist, dist, dist, dist2, dist2, dist2, dist2, dist2, distToLine, distToLine, distToPlane, div, dot, dot, dot, dot, dot, eq, eq, eq, eq, eq, eq, eq, eq, eq, eq, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, getNormal, getNormal, getNormal, getNormal, getNormal, getX, getY, getZ, intersect, intersect, intersect, intersect, intersectInfiniteLine, intersectInfiniteLine, intersectInfiniteLine, intersectInfiniteLine, intersectInfiniteLines, intersectInfiniteLines, intersectInfiniteLines, intersectInfiniteLines, intersectInfLine, intersectInfLine, intersectInfLine, intersectInfLine, intersectInfLines, intersectInfLines, intersectInfLines, intersectInfLines, intersectLine, intersectLine, intersectLine, intersectLine, intersectLines, intersectLines, intersectLines, intersectLines, intersectSeg, intersectSeg, intersectSeg, intersectSeg, intersectSegment, intersectSegment, intersectSegment, intersectSegment, intersectSegments, intersectSegments, intersectSegments, intersectSegments, isArrayEqual, isArrayEqual, isFlat, isFlat, isFlat, isFlat, isOnPlane, isOnPlane, isOnPlane, isOnPlane, isParallel, isParallel, isStraight, isStraight, isStraight, isStraight, len, len, len, len2, len2, len2, mul, nml, nml, nml, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, perpendicularVecToLine, perpendicularVecToLine, projectTo2Vec, projectToLine, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToPlane, projectToVec, show, show, show, show, x, x, x, y, y, y, z, z, z
 
Methods inherited from class igeo.IParameterObject
createObject, parent, parent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface igeo.IVec4I
getX, getY, getZ, x, x, x, y, y, y, z, z, z
 
Methods inherited from interface igeo.IVecI
angle, angle, angle, angle, angle, angle, angle, angle, dist, dist, dist, dist, dist2, dist2, dist2, dist2, dot, dot, dot, dot, eq, eq, eq, eq, eq, eq, eq, eq, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqX, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqY, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, eqZ, len, len, len, len2, len2, len2
 

Field Detail

w

public double w
Constructor Detail

IVec4

public IVec4()

IVec4

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

IVec4

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

IVec4

public IVec4(IVec4 v)

IVec4

public IVec4(IVec4I v)

IVec4

public IVec4(IVec v)

IVec4

public IVec4(IVecI v)

IVec4

public IVec4(IVec v,
             double w)

IVec4

public IVec4(IVecI v,
             double w)

IVec4

public IVec4(IVecI v,
             IDoubleI w)

IVec4

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

IVec4

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

IVec4

public IVec4(IServerI s)

IVec4

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

IVec4

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

IVec4

public IVec4(IServerI s,
             IVec4 v)

IVec4

public IVec4(IServerI s,
             IVec4I v)

IVec4

public IVec4(IServerI s,
             IVec v)

IVec4

public IVec4(IServerI s,
             IVecI v)

IVec4

public IVec4(IServerI s,
             IVec v,
             double w)

IVec4

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

IVec4

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

IVec4

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

IVec4

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

w

public double w()
Description copied from interface: IVec4I
getting w component

Specified by:
w in interface IVec4I

x

public IVec4 x(double vx)
setting x component

Specified by:
x in interface IVec4I
Specified by:
x in interface IVecI
Overrides:
x in class IVec

y

public IVec4 y(double vy)
setting y component

Specified by:
y in interface IVec4I
Specified by:
y in interface IVecI
Overrides:
y in class IVec

z

public IVec4 z(double vz)
setting z component

Specified by:
z in interface IVec4I
Specified by:
z in interface IVecI
Overrides:
z in class IVec

w

public IVec4 w(double vw)
setting w component

Specified by:
w in interface IVec4I

x

public IVec4 x(IDoubleI vx)
setting x component

Specified by:
x in interface IVec4I
Specified by:
x in interface IVecI
Overrides:
x in class IVec

y

public IVec4 y(IDoubleI vy)
setting y component

Specified by:
y in interface IVec4I
Specified by:
y in interface IVecI
Overrides:
y in class IVec

z

public IVec4 z(IDoubleI vz)
setting z component

Specified by:
z in interface IVec4I
Specified by:
z in interface IVecI
Overrides:
z in class IVec

w

public IVec4 w(IDoubleI vw)
setting z component

Specified by:
w in interface IVec4I

w

public double w(ISwitchE e)
getting z component

Specified by:
w in interface IVec4I

w

public IDouble w(ISwitchR r)
getting z component

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
Overrides:
get in class IVec

dup

public IVec4 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
Overrides:
dup in class IVec

to3d

public IVec to3d()
Specified by:
to3d in interface IVec4I

to2d

public IVec2 to2d()
Specified by:
to2d in interface IVec4I
Specified by:
to2d in interface IVecI
Overrides:
to2d in class IVec

to4d

public IVec4 to4d()
Specified by:
to4d in interface IVecI
Overrides:
to4d in class IVec

to4d

public IVec4 to4d(double w)
Specified by:
to4d in interface IVecI
Overrides:
to4d in class IVec

to4d

public IVec4 to4d(IDoubleI w)
Specified by:
to4d in interface IVecI
Overrides:
to4d in class IVec

getW

public IDouble getW()
Specified by:
getW in interface IVec4I

set

public IVec4 set(double x,
                 double y,
                 double z,
                 double w)
Specified by:
set in interface IVec4I

set

public IVec4 set(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z,
                 IDoubleI w)
Specified by:
set in interface IVec4I

set

public IVec4 set(IVec4 v)

set

public IVec4 set(IVec v,
                 double w)

set

public IVec4 set(IVec4I v)
Specified by:
set in interface IVec4I

set

public IVec4 set(IVecI v,
                 double w)
Specified by:
set in interface IVec4I

set

public IVec4 set(IVecI v,
                 IDoubleI w)
Specified by:
set in interface IVec4I

set

public IVec4 set(IVec v)
Overrides:
set in class IVec

set

public IVec4 set(IVecI v)
Specified by:
set in interface IVec4I
Specified by:
set in interface IVecI
Overrides:
set in class IVec

set

public IVec4 set(double x,
                 double y,
                 double z)
Specified by:
set in interface IVec4I
Specified by:
set in interface IVecI
Overrides:
set in class IVec

set

public IVec4 set(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
set in interface IVec4I
Specified by:
set in interface IVecI
Overrides:
set in class IVec

add

public IVec4 add(double x,
                 double y,
                 double z)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI
Overrides:
add in class IVec

add

public IVec4 add(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVecI
Overrides:
add in class IVec

add

public IVec4 add(IVec v)
Overrides:
add in class IVec

add

public IVec4 add(IVecI v)
Specified by:
add in interface ITransformable
Specified by:
add in interface IVec4I
Specified by:
add in interface IVecI
Overrides:
add in class IVec

sub

public IVec4 sub(double x,
                 double y,
                 double z)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVecI
Overrides:
sub in class IVec

sub

public IVec4 sub(IDoubleI x,
                 IDoubleI y,
                 IDoubleI z)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVecI
Overrides:
sub in class IVec

sub

public IVec4 sub(IVec v)
Overrides:
sub in class IVec

sub

public IVec4 sub(IVecI v)
Specified by:
sub in interface ITransformable
Specified by:
sub in interface IVec4I
Specified by:
sub in interface IVecI
Overrides:
sub in class IVec

mul

public IVec4 mul(IDoubleI v)
Specified by:
mul in interface ITransformable
Specified by:
mul in interface IVec4I
Specified by:
mul in interface IVecI
Overrides:
mul in class IVec

mul

public IVec4 mul(double v)
Specified by:
mul in interface ITransformable
Specified by:
mul in interface IVec4I
Specified by:
mul in interface IVecI
Overrides:
mul in class IVec

div

public IVec4 div(IDoubleI v)
Specified by:
div in interface ITransformable
Specified by:
div in interface IVec4I
Specified by:
div in interface IVecI
Overrides:
div in class IVec

div

public IVec4 div(double v)
Specified by:
div in interface ITransformable
Specified by:
div in interface IVec4I
Specified by:
div in interface IVecI
Overrides:
div in class IVec

neg

public IVec4 neg()
note that it's not negating w

Specified by:
neg in interface ITransformable
Specified by:
neg in interface IVec4I
Specified by:
neg in interface IVecI
Overrides:
neg in class IVec

rev

public IVec4 rev()
note that it's not negating w

Specified by:
rev in interface IVec4I
Specified by:
rev in interface IVecI
Overrides:
rev in class IVec

flip

public IVec4 flip()
note that it's not negating w

Specified by:
flip in interface ITransformable
Specified by:
flip in interface IVec4I
Specified by:
flip in interface IVecI
Overrides:
flip in class IVec

zero

public IVec4 zero()
note that w is not set zero

Specified by:
zero in interface IVec4I
Specified by:
zero in interface IVecI
Overrides:
zero in class IVec

add

public IVec4 add(IVec v,
                 double f)
scale add

Overrides:
add in class IVec

add

public IVec4 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
Overrides:
add in class IVec

add

public IVec4 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
Overrides:
add in class IVec

add

public IVec4 add(double f,
                 IVec v)
scale add alias

Overrides:
add in class IVec

add

public IVec4 add(double f,
                 IVecI v)
scale add alias

Specified by:
add in interface ITransformable
Specified by:
add in interface IVec4I
Specified by:
add in interface IVecI
Overrides:
add in class IVec

add

public IVec4 add(IDoubleI f,
                 IVecI v)
scale add alias

Specified by:
add in interface ITransformable
Specified by:
add in interface IVec4I
Specified by:
add in interface IVecI
Overrides:
add in class IVec

len

public IVec4 len(IDoubleI l)
setting length of vector, ignoring w

Specified by:
len in interface IVec4I
Specified by:
len in interface IVecI
Overrides:
len in class IVec

len

public IVec4 len(double l)
setting length of vector, ignoring w

Specified by:
len in interface IVec4I
Specified by:
len in interface IVecI
Overrides:
len in class IVec

unit

public IVec4 unit()
unitize, ignoring w

Specified by:
unit in interface IVec4I
Specified by:
unit in interface IVecI
Overrides:
unit in class IVec

cross

public IVec4 cross(IVec v)
cross product, returning a new instance. w is the original value

Overrides:
cross in class IVec

cross

public IVec4 cross(double vx,
                   double vy,
                   double vz)
cross product, returning a new instance. w is the original value

Specified by:
cross in interface IVec4I
Specified by:
cross in interface IVecI
Overrides:
cross in class IVec

cross

public IVec4 cross(IVecI v)
Description copied from interface: IVecI
cross product, creating a new instance

Specified by:
cross in interface IVec4I
Specified by:
cross in interface IVecI
Overrides:
cross in class IVec

icross

public IVec4 icross(IVec v)
cross product, changing the instance not creating a new instance

Overrides:
icross in class IVec

icross

public IVec4 icross(double vx,
                    double vy,
                    double vz)
cross product, changing the instance not creating a new instance

Overrides:
icross in class IVec

icross

public IVec4 icross(IVecI v)
cross product, changing the instance not creating a new instance

Overrides:
icross in class IVec

eqW

public boolean eqW(IVec4 v)

eqW

public boolean eqW(double vw)
Specified by:
eqW in interface IVec4I

eqW

public boolean eqW(IVec4I v)
Specified by:
eqW in interface IVec4I

eqW

public boolean eqW(IVec4I v,
                   double tolerance)
Specified by:
eqW in interface IVec4I

eqW

public boolean eqW(IVec4 v,
                   double tolerance)

eqW

public boolean eqW(double vw,
                   double tolerance)
Specified by:
eqW in interface IVec4I

eqW

public boolean eqW(ISwitchE e,
                   IVec4I v)
Specified by:
eqW in interface IVec4I

eqW

public boolean eqW(ISwitchE e,
                   IVec4I v,
                   double tolerance)
Specified by:
eqW in interface IVec4I

eqW

public IBool eqW(ISwitchR r,
                 IVec4I v)
Specified by:
eqW in interface IVec4I

eqW

public IBool eqW(ISwitchR r,
                 IVec4I v,
                 IDoubleI tolerance)
Specified by:
eqW in interface IVec4I

rot

public IVec4 rot(IDoubleI angle)
Description copied from class: IVec
rotation on xy-plane

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(double angle)
Description copied from class: IVec
rotation on xy-plane

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 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
Overrides:
rot in class IVec

rot

public IVec4 rot(IVecI axis,
                 double angle)
Description copied from interface: IVecI
rotation around axis vector

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(IVec axis,
                 double angle)
Description copied from class: IVec
rotate the vector around the axis

Overrides:
rot in class IVec

rot

public IVec4 rot(double axisX,
                 double axisY,
                 double axisZ,
                 double angle)
Description copied from class: IVec
rotate the vector around the axis

Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 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
Overrides:
rot in class IVec

rot

public IVec4 rot(IVecI center,
                 IVecI axis,
                 double angle)
Description copied from interface: IVecI
rotation around axis vector and center point

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(IVec center,
                 IVec axis,
                 double angle)
Overrides:
rot in class IVec

rot

public IVec4 rot(double centerX,
                 double centerY,
                 double centerZ,
                 double axisX,
                 double axisY,
                 double axisZ,
                 double angle)
Description copied from interface: IVecI
rotation around axis vector and center point

Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(IVec axis,
                 IVec destDir)
Description copied from class: IVec
rotation around axis towards destination direction

Overrides:
rot in class IVec

rot

public IVec4 rot(IVecI axis,
                 IVecI destDir)
Description copied from class: IVec
rotation around axis towards destination direction

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(IVecI center,
                 IVecI axis,
                 IVecI destPt)
Description copied from class: IVec
rotation around axis and center towards destination point

Specified by:
rot in interface ITransformable
Specified by:
rot in interface IVec4I
Specified by:
rot in interface IVecI
Overrides:
rot in class IVec

rot

public IVec4 rot(IVec center,
                 IVec axis,
                 IVec destPt)
Description copied from class: IVec
rotation around axis and center towards destination point

Overrides:
rot in class IVec

rot2

public IVec4 rot2(IDoubleI angle)
alias of rot(IDoubleI)

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(double angle)
alias of rot(double)

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVecI center,
                  IDoubleI angle)
Description copied from class: IVec
rotation on xy-plane

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVecI center,
                  double angle)
Description copied from class: IVec
rotation on xy-plane

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVec center,
                  double angle)
Description copied from class: IVec
rotation on xy-plane

Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(double centerX,
                  double centerY,
                  double angle)
Description copied from class: IVec
rotation on xy-plane

Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVec destDir)
Description copied from class: IVec
rotation on xy-plane towards destDir

Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVecI destDir)
Description copied from class: IVec
rotation on xy-plane towards destDir

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVecI center,
                  IVecI destPt)
Description copied from class: IVec
rotation on xy-plane towards destPt

Specified by:
rot2 in interface ITransformable
Specified by:
rot2 in interface IVec4I
Specified by:
rot2 in interface IVecI
Overrides:
rot2 in class IVec

rot2

public IVec4 rot2(IVec center,
                  IVec destPt)
Description copied from class: IVec
rotation on xy-plane towards destPt

Overrides:
rot2 in class IVec

scale

public IVec4 scale(IDoubleI f)
alias of mul

Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVec4I
Specified by:
scale in interface IVecI
Overrides:
scale in class IVec

scale

public IVec4 scale(double f)
Description copied from interface: IVecI
alias of mul

Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVec4I
Specified by:
scale in interface IVecI
Overrides:
scale in class IVec

scale

public IVec4 scale(IVecI center,
                   IDoubleI f)
Description copied from class: IVec
scale from the center

Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVec4I
Specified by:
scale in interface IVecI
Overrides:
scale in class IVec

scale

public IVec4 scale(IVecI center,
                   double f)
Description copied from class: IVec
scale from the center

Specified by:
scale in interface ITransformable
Specified by:
scale in interface IVec4I
Specified by:
scale in interface IVecI
Overrides:
scale in class IVec

scale

public IVec4 scale(IVec center,
                   double f)
Description copied from class: IVec
scale from the center

Overrides:
scale in class IVec

scale

public IVec4 scale(double centerX,
                   double centerY,
                   double centerZ,
                   double f)
Description copied from class: IVec
scale from the center

Specified by:
scale in interface IVec4I
Specified by:
scale in interface IVecI
Overrides:
scale in class IVec

scale1d

public IVec4 scale1d(IVec axis,
                     double f)
scale only in 1 direction

Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(double axisX,
                     double axisY,
                     double axisZ,
                     double f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(IVecI axis,
                     double f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(IVecI axis,
                     IDoubleI f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(IVec center,
                     IVec axis,
                     double f)
Description copied from class: IVec
scale only in 1 direction

Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(double centerX,
                     double centerY,
                     double centerZ,
                     double axisX,
                     double axisY,
                     double axisZ,
                     double f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(IVecI center,
                     IVecI axis,
                     double f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

scale1d

public IVec4 scale1d(IVecI center,
                     IVecI axis,
                     IDoubleI f)
Description copied from class: IVec
scale only in 1 direction

Specified by:
scale1d in interface ITransformable
Specified by:
scale1d in interface IVec4I
Specified by:
scale1d in interface IVecI
Overrides:
scale1d in class IVec

ref

public IVec4 ref(IVec planeDir)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane

Overrides:
ref in class IVec

ref

public IVec4 ref(double planeX,
                 double planeY,
                 double planeZ)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane

Specified by:
ref in interface IVec4I
Specified by:
ref in interface IVecI
Overrides:
ref in class IVec

ref

public IVec4 ref(IVecI planeDir)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane

Specified by:
ref in interface ITransformable
Specified by:
ref in interface IVec4I
Specified by:
ref in interface IVecI
Overrides:
ref in class IVec

ref

public IVec4 ref(IVec center,
                 IVec planeDir)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane at the center

Overrides:
ref in class IVec

ref

public IVec4 ref(double centerX,
                 double centerY,
                 double centerZ,
                 double planeX,
                 double planeY,
                 double planeZ)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane at the center

Specified by:
ref in interface IVec4I
Specified by:
ref in interface IVecI
Overrides:
ref in class IVec

ref

public IVec4 ref(IVecI center,
                 IVecI planeDir)
Description copied from class: IVec
reflect (mirror) 3 dimensionally to the other side of the plane at the center

Specified by:
ref in interface ITransformable
Specified by:
ref in interface IVec4I
Specified by:
ref in interface IVecI
Overrides:
ref in class IVec

mirror

public IVec4 mirror(IVec planeDir)
Description copied from class: IVec
alias of ref

Overrides:
mirror in class IVec

mirror

public IVec4 mirror(double planeX,
                    double planeY,
                    double planeZ)
Description copied from class: IVec
alias of ref

Specified by:
mirror in interface IVec4I
Specified by:
mirror in interface IVecI
Overrides:
mirror in class IVec

mirror

public IVec4 mirror(IVecI planeDir)
Description copied from class: IVec
alias of ref

Specified by:
mirror in interface ITransformable
Specified by:
mirror in interface IVec4I
Specified by:
mirror in interface IVecI
Overrides:
mirror in class IVec

mirror

public IVec4 mirror(IVec center,
                    IVec planeDir)
Description copied from class: IVec
alias of ref

Overrides:
mirror in class IVec

mirror

public IVec4 mirror(double centerX,
                    double centerY,
                    double centerZ,
                    double planeX,
                    double planeY,
                    double planeZ)
Description copied from class: IVec
alias of ref

Specified by:
mirror in interface IVec4I
Specified by:
mirror in interface IVecI
Overrides:
mirror in class IVec

mirror

public IVec4 mirror(IVecI center,
                    IVecI planeDir)
Description copied from class: IVec
alias of ref

Specified by:
mirror in interface ITransformable
Specified by:
mirror in interface IVec4I
Specified by:
mirror in interface IVecI
Overrides:
mirror in class IVec

shear

public IVec4 shear(double sxy,
                   double syx,
                   double syz,
                   double szy,
                   double szx,
                   double sxz)
Description copied from interface: ITransformable
shear operation

Specified by:
shear in interface ITransformable
Specified by:
shear in interface IVec4I
Specified by:
shear in interface IVecI
Overrides:
shear in class IVec

shear

public IVec4 shear(IDoubleI sxy,
                   IDoubleI syx,
                   IDoubleI syz,
                   IDoubleI szy,
                   IDoubleI szx,
                   IDoubleI sxz)
Description copied from interface: IVecI
shear operation

Specified by:
shear in interface ITransformable
Specified by:
shear in interface IVec4I
Specified by:
shear in interface IVecI
Overrides:
shear in class IVec

shear

public IVec4 shear(IVecI center,
                   double sxy,
                   double syx,
                   double syz,
                   double szy,
                   double szx,
                   double sxz)
Description copied from interface: IVecI
shear operation

Specified by:
shear in interface ITransformable
Specified by:
shear in interface IVec4I
Specified by:
shear in interface IVecI
Overrides:
shear in class IVec

shear

public IVec4 shear(IVecI center,
                   IDoubleI sxy,
                   IDoubleI syx,
                   IDoubleI syz,
                   IDoubleI szy,
                   IDoubleI szx,
                   IDoubleI sxz)
Description copied from interface: IVecI
shear operation

Specified by:
shear in interface ITransformable
Specified by:
shear in interface IVec4I
Specified by:
shear in interface IVecI
Overrides:
shear in class IVec

shearXY

public IVec4 shearXY(double sxy,
                     double syx)
Description copied from interface: IVecI
shear operation on XY

Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVec4I
Specified by:
shearXY in interface IVecI
Overrides:
shearXY in class IVec

shearXY

public IVec4 shearXY(IDoubleI sxy,
                     IDoubleI syx)
Description copied from interface: IVecI
shear operation on XY

Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVec4I
Specified by:
shearXY in interface IVecI
Overrides:
shearXY in class IVec

shearXY

public IVec4 shearXY(IVecI center,
                     double sxy,
                     double syx)
Description copied from interface: IVecI
shear operation on XY

Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVec4I
Specified by:
shearXY in interface IVecI
Overrides:
shearXY in class IVec

shearXY

public IVec4 shearXY(IVecI center,
                     IDoubleI sxy,
                     IDoubleI syx)
Description copied from interface: IVecI
shear operation on XY

Specified by:
shearXY in interface ITransformable
Specified by:
shearXY in interface IVec4I
Specified by:
shearXY in interface IVecI
Overrides:
shearXY in class IVec

shearYZ

public IVec4 shearYZ(double syz,
                     double szy)
Description copied from interface: IVecI
shear operation on YZ

Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVec4I
Specified by:
shearYZ in interface IVecI
Overrides:
shearYZ in class IVec

shearYZ

public IVec4 shearYZ(IDoubleI syz,
                     IDoubleI szy)
Description copied from interface: IVecI
shear operation on YZ

Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVec4I
Specified by:
shearYZ in interface IVecI
Overrides:
shearYZ in class IVec

shearYZ

public IVec4 shearYZ(IVecI center,
                     double syz,
                     double szy)
Description copied from interface: IVecI
shear operation on YZ

Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVec4I
Specified by:
shearYZ in interface IVecI
Overrides:
shearYZ in class IVec

shearYZ

public IVec4 shearYZ(IVecI center,
                     IDoubleI syz,
                     IDoubleI szy)
Description copied from interface: IVecI
shear operation on YZ

Specified by:
shearYZ in interface ITransformable
Specified by:
shearYZ in interface IVec4I
Specified by:
shearYZ in interface IVecI
Overrides:
shearYZ in class IVec

shearZX

public IVec4 shearZX(double szx,
                     double sxz)
Description copied from interface: IVecI
shear operation on ZX

Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVec4I
Specified by:
shearZX in interface IVecI
Overrides:
shearZX in class IVec

shearZX

public IVec4 shearZX(IDoubleI szx,
                     IDoubleI sxz)
Description copied from interface: IVecI
shear operation on ZX

Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVec4I
Specified by:
shearZX in interface IVecI
Overrides:
shearZX in class IVec

shearZX

public IVec4 shearZX(IVecI center,
                     double szx,
                     double sxz)
Description copied from interface: IVecI
shear operation on ZX

Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVec4I
Specified by:
shearZX in interface IVecI
Overrides:
shearZX in class IVec

shearZX

public IVec4 shearZX(IVecI center,
                     IDoubleI szx,
                     IDoubleI sxz)
Description copied from interface: IVecI
shear operation on ZX

Specified by:
shearZX in interface ITransformable
Specified by:
shearZX in interface IVec4I
Specified by:
shearZX in interface IVecI
Overrides:
shearZX in class IVec

translate

public IVec4 translate(double x,
                       double y,
                       double z)
Description copied from interface: ITransformable
translate() is alias of add()

Specified by:
translate in interface ITransformable
Specified by:
translate in interface IVec4I
Specified by:
translate in interface IVecI
Overrides:
translate in class IVec

translate

public IVec4 translate(IDoubleI x,
                       IDoubleI y,
                       IDoubleI z)
Description copied from interface: IVecI
alias of add()

Specified by:
translate in interface ITransformable
Specified by:
translate in interface IVec4I
Specified by:
translate in interface IVecI
Overrides:
translate in class IVec

translate

public IVec4 translate(IVecI v)
Description copied from interface: IVecI
alias of add()

Specified by:
translate in interface ITransformable
Specified by:
translate in interface IVec4I
Specified by:
translate in interface IVecI
Overrides:
translate in class IVec

transform

public IVec4 transform(IMatrix3I mat)
Description copied from interface: IVecI
transform with a transformation matrix

Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVec4I
Specified by:
transform in interface IVecI
Overrides:
transform in class IVec

transform

public IVec4 transform(IMatrix4I mat)
Description copied from interface: IVecI
transform with a transformation matrix

Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVec4I
Specified by:
transform in interface IVecI
Overrides:
transform in class IVec

transform

public IVec4 transform(IVec xvec,
                       IVec yvec,
                       IVec zvec)
Overrides:
transform in class IVec

transform

public IVec4 transform(IVecI xvec,
                       IVecI yvec,
                       IVecI zvec)
Description copied from interface: IVecI
transform with a transformation vectors

Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVec4I
Specified by:
transform in interface IVecI
Overrides:
transform in class IVec

transform

public IVec4 transform(IVec xvec,
                       IVec yvec,
                       IVec zvec,
                       IVec translate)
Overrides:
transform in class IVec

transform

public IVec4 transform(IVecI xvec,
                       IVecI yvec,
                       IVecI zvec,
                       IVecI translate)
Description copied from interface: IVecI
transform with a transformation vectors

Specified by:
transform in interface ITransformable
Specified by:
transform in interface IVec4I
Specified by:
transform in interface IVecI
Overrides:
transform in class IVec

mv

public IVec4 mv(double vx,
                double vy,
                double vz)
mv() is alias of add()

Specified by:
mv in interface ITransformable
Specified by:
mv in interface IVec4I
Specified by:
mv in interface IVecI
Overrides:
mv in class IVec

mv

public IVec4 mv(IDoubleI vx,
                IDoubleI vy,
                IDoubleI vz)
Description copied from interface: IVecI
mv() is alias of add()

Specified by:
mv in interface ITransformable
Specified by:
mv in interface IVec4I
Specified by:
mv in interface IVecI
Overrides:
mv in class IVec

mv

public IVec4 mv(IVecI v)
Description copied from interface: IVecI
mv() is alias of add()

Specified by:
mv in interface ITransformable
Specified by:
mv in interface IVec4I
Specified by:
mv in interface IVecI
Overrides:
mv in class IVec

cp

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

Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVec4I
Specified by:
cp in interface IVecI
Overrides:
cp in class IVec

cp

public IVec4 cp(IVec v)
cp() is alias of dup().add()

Overrides:
cp in class IVec

cp

public IVec4 cp(double vx,
                double vy,
                double vz)
Description copied from interface: ITransformable
cp() is alias of dup().add()

Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVec4I
Specified by:
cp in interface IVecI
Overrides:
cp in class IVec

cp

public IVec4 cp(IDoubleI vx,
                IDoubleI vy,
                IDoubleI vz)
Description copied from interface: IVecI
cp() is alias of dup().add()

Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVec4I
Specified by:
cp in interface IVecI
Overrides:
cp in class IVec

cp

public IVec4 cp(IVecI v)
Description copied from interface: IVecI
cp() is alias of dup().add()

Specified by:
cp in interface ITransformable
Specified by:
cp in interface IVec4I
Specified by:
cp in interface IVecI
Overrides:
cp in class IVec

dif

public IVec4 dif(IVec v)
Description copied from class: IVec
create a new instance of difference

Overrides:
dif in class IVec

dif

public IVec4 dif(double vx,
                 double vy,
                 double vz)
Description copied from class: IVec
create a new instance of difference

Specified by:
dif in interface IVec4I
Specified by:
dif in interface IVecI
Overrides:
dif in class IVec

dif

public IVec4 dif(IVecI v)
Description copied from class: IVec
create a new instance of difference

Specified by:
dif in interface IVec4I
Specified by:
dif in interface IVecI
Overrides:
dif in class IVec

diff

public IVec4 diff(IVec v)
Description copied from class: IVec
create a new instance of difference

Overrides:
diff in class IVec

diff

public IVec4 diff(double vx,
                  double vy,
                  double vz)
Description copied from class: IVec
create a new instance of difference

Specified by:
diff in interface IVec4I
Specified by:
diff in interface IVecI
Overrides:
diff in class IVec

diff

public IVec4 diff(IVecI v)
Description copied from class: IVec
create a new instance of difference

Specified by:
diff in interface IVec4I
Specified by:
diff in interface IVecI
Overrides:
diff in class IVec

mid

public IVec4 mid(IVec v)
Description copied from class: IVec
create a new instance of midpoint

Overrides:
mid in class IVec

mid

public IVec4 mid(double vx,
                 double vy,
                 double vz)
Description copied from class: IVec
create a new instance of midpoint

Specified by:
mid in interface IVec4I
Specified by:
mid in interface IVecI
Overrides:
mid in class IVec

mid

public IVec4 mid(IVecI v)
Description copied from class: IVec
create a new instance of midpoint

Specified by:
mid in interface IVec4I
Specified by:
mid in interface IVecI
Overrides:
mid in class IVec

sum

public IVec4 sum(IVec v)
Description copied from class: IVec
create a new instance of summation

Overrides:
sum in class IVec

sum

public IVec4 sum(double vx,
                 double vy,
                 double vz)
Description copied from class: IVec
create a new instance of summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI v)
Description copied from class: IVec
create a new instance of summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

sum

public IVec4 sum(IVec... v)
Description copied from class: IVec
create a new instance of summation

Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI... v)
Description copied from class: IVec
create a new instance of summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

bisect

public IVec4 bisect(IVec v)
Description copied from class: IVec
create a new instance of bisector

Overrides:
bisect in class IVec

bisect

public IVec4 bisect(double vx,
                    double vy,
                    double vz)
Description copied from class: IVec
create a new instance of bisector

Specified by:
bisect in interface IVec4I
Specified by:
bisect in interface IVecI
Overrides:
bisect in class IVec

bisect

public IVec4 bisect(IVecI v)
Description copied from class: IVec
create a new instance of bisector

Specified by:
bisect in interface IVec4I
Specified by:
bisect in interface IVecI
Overrides:
bisect in class IVec

sum

public IVec4 sum(IVec v2,
                 double w1,
                 double w2)
Description copied from class: IVec
create a new instance of weighted summation

Overrides:
sum in class IVec

sum

public IVec4 sum(IVec v2,
                 double w2)
Description copied from class: IVec
create a new instance of weighted summation

Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI v2,
                 double w1,
                 double w2)
Description copied from class: IVec
create a new instance of weighted summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI v2,
                 double w2)
Description copied from class: IVec
create a new instance of weighted summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI v2,
                 IDoubleI w1,
                 IDoubleI w2)
Description copied from class: IVec
create a new instance of weighted summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

sum

public IVec4 sum(IVecI v2,
                 IDoubleI w2)
Description copied from class: IVec
create a new instance of weighted summation

Specified by:
sum in interface IVec4I
Specified by:
sum in interface IVecI
Overrides:
sum in class IVec

nml

public IVec4 nml(IVec v)
alias of cross. (not unitized ... )

Overrides:
nml in class IVec

nml

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

Specified by:
nml in interface IVec4I
Specified by:
nml in interface IVecI
Overrides:
nml in class IVec

nml

public IVec4 nml(double vx,
                 double vy,
                 double vz)
alias of cross. (not unitized ... )

Specified by:
nml in interface IVec4I
Specified by:
nml in interface IVecI
Overrides:
nml in class IVec

nml

public IVec4 nml(IVec pt1,
                 IVec pt2)
create normal vector from 3 points of self, pt1 and pt2, not unitized

Overrides:
nml in class IVec

nml

public IVec4 nml(double vx1,
                 double vy1,
                 double vz1,
                 double vx2,
                 double vy2,
                 double vz2)
create normal vector from 3 points of self, pt1 and pt2, not unitized

Specified by:
nml in interface IVec4I
Specified by:
nml in interface IVecI
Overrides:
nml in class IVec

nml

public IVec4 nml(IVecI pt1,
                 IVecI pt2)
create normal vector from 3 points of self, pt1 and pt2, not unitized

Specified by:
nml in interface IVec4I
Specified by:
nml in interface IVecI
Overrides:
nml in class IVec

isValid

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

Specified by:
isValid in interface IVecI
Overrides:
isValid in class IVec

toString

public java.lang.String toString()
Overrides:
toString in class IVec