public class IVec2R extends IParameterObject implements IVec2I, IReferenceParameter
Modifier and Type | Class and Description |
---|---|
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 |
Modifier and Type | Field and Description |
---|---|
protected IVec2Op |
op |
parent
Constructor and Description |
---|
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) |
Modifier and Type | Method and Description |
---|---|
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
|
createObject, parent, parent
protected IVec2Op op
public IVec2R(IVec2Op v)
public IVec2R(double x, double y)
public IVec2R(IServerI s, double x, double y)
public IVec2 get()
public IVec2Op operator()
operator
in interface IReferenceParameter
public IVec2R dup()
public IVec2R zero()
public IVec2R add(IDoubleI f, IVec2I v)
IVec2I
public double dot(double ux, double uy)
IVec2I
public IVecR cross(IVec2I u)
IVec2I
public IVecR cross(double ux, double uy)
IVec2I
public double len()
IVec2I
public double len2()
IVec2I
public double len2(ISwitchE e)
IVec2I
public IDoubleR len2(ISwitchR r)
IVec2I
public double dist(double vx, double vy)
IVec2I
public double dist2(double vx, double vy)
IVec2I
public double dist2(ISwitchE e, IVec2I v)
IVec2I
public IDoubleR dist2(ISwitchR r, IVec2I v)
IVec2I
public boolean eq(double vx, double vy)
IVec2I
public boolean eq(ISwitchE e, IVec2I v)
IVec2I
public IBoolR eq(ISwitchR r, IVec2I v)
IVec2I
public boolean eq(IVec2I v, double tolerance)
IVec2I
public boolean eq(double vx, double vy, double tolerance)
IVec2I
public boolean eq(ISwitchE e, IVec2I v, double tolerance)
IVec2I
public IBoolR eq(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2I
public boolean eqX(double vx)
IVec2I
public boolean eqY(double vy)
IVec2I
public boolean eqX(ISwitchE e, IVec2I v)
IVec2I
public boolean eqY(ISwitchE e, IVec2I v)
IVec2I
public IBoolR eqX(ISwitchR r, IVec2I v)
IVec2I
public IBoolR eqY(ISwitchR r, IVec2I v)
IVec2I
public boolean eqX(IVec2I v, double tolerance)
IVec2I
public boolean eqY(IVec2I v, double tolerance)
IVec2I
public boolean eqX(double vx, double tolerance)
IVec2I
public boolean eqY(double vy, double tolerance)
IVec2I
public boolean eqX(ISwitchE e, IVec2I v, double tolerance)
IVec2I
public boolean eqY(ISwitchE e, IVec2I v, double tolerance)
IVec2I
public IBoolR eqX(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2I
public IBoolR eqY(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2I
public double angle(IVec2I u)
IVec2I
public double angle(double ux, double uy)
IVec2I
public double angle(ISwitchE e, IVec2I u)
IVec2I
public IDoubleR angle(ISwitchR r, IVec2I u)
IVec2I
public IVec2R rot(IVec2I center, double angle)
IVec2I
public IVec2R rot(double centerX, double centerY, double angle)
IVec2I
public IVec2R rot(IVec2I center, IDoubleI angle)
IVec2I
public IVec2R rot(IVec2I destDir)
IVec2I
public IVec2R rot(IVec2I center, IVec2I destPt)
IVec2I
public IVec2R scale(IVec2I center, double f)
IVec2I
public IVec2R scale(double centerX, double centerY, double f)
IVec2I
public IVec2R scale(IVec2I center, IDoubleI f)
IVec2I
public IVec2R scale1d(double axisX, double axisY, double f)
IVec2I
public IVec2R scale1d(IVec2I axis, IDoubleI f)
IVec2I
public IVec2R scale1d(IVec2I center, IVec2I axis, double f)
IVec2I
public IVec2R scale1d(double centerX, double centerY, double axisX, double axisY, double f)
IVec2I
public IVec2R scale1d(IVec2I center, IVec2I axis, IDoubleI f)
IVec2I
public IVec2R ref(IVec2I lineDir)
public IVec2R ref(double lineX, double lineY)
IVec2I
public IVec2R ref(IVec2I linePt, IVec2I lineDir)
IVec2I
public IVec2R ref(double linePtX, double linePtY, double lineDirX, double lineDirY)
IVec2I
public IVec2R mirror(IVec2I lineDir)
IVec2I
public IVec2R mirror(double lineX, double lineY)
IVec2I
public IVec2R mirror(IVec2I linePt, IVec2I lineDir)
IVec2I
public IVec2R mirror(double linePtX, double linePtY, double lineDirX, double lineDirY)
IVec2I
public IVec2R shear(double sxy, double syx)
public IVec2R translate(double x, double y)
public IVec2R transform(IMatrix2I mat)
IVec2I
public IVec2R transform(IMatrix3I mat)
IVec2I
public IVec2R transform(IVec2I xvec, IVec2I yvec)
IVec2I
public IVec2R transform(IVec2I xvec, IVec2I yvec, IVec2I translate)
IVec2I
public IVec2R cp()
public IVec2R cp(double x, double y)
public IVec2R dif(IVec2I v)
IVec2I
public IVec2R dif(double vx, double vy)
IVec2I
public IVec2R diff(double vx, double vy)
IVec2I
public IVec2R mid(IVec2I v)
IVec2I
public IVec2R mid(double vx, double vy)
IVec2I
public IVec2R sum(IVec2I v)
IVec2I
public IVec2R sum(double vx, double vy)
IVec2I
public IVec2R sum(IVec2I... v)
IVec2I
public IVec2R bisect(IVec2I v)
IVec2I
public IVec2R bisect(double vx, double vy)
IVec2I
public IVec2R sum(IVec2I v2, double w2)
IVec2I
public IVec2R sum(IVec2I v2, IDoubleI w1, IDoubleI w2)
IVec2I
public IVec2R sum(IVec2I v2, IDoubleI w2)
IVec2I
public IVecR nml(IVec2I pt1, IVec2I pt2)
public IVecR nml(double vx1, double vy1, double vx2, double vy2)