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, parentprotected 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 IReferenceParameterpublic IVec2R dup()
public IVec2R zero()
public IVec2R add(IDoubleI f, IVec2I v)
IVec2Ipublic double dot(double ux,
double uy)
IVec2Ipublic IVecR cross(IVec2I u)
IVec2Ipublic IVecR cross(double ux, double uy)
IVec2Ipublic double len()
IVec2Ipublic double len2()
IVec2Ipublic double len2(ISwitchE e)
IVec2Ipublic IDoubleR len2(ISwitchR r)
IVec2Ipublic double dist(double vx,
double vy)
IVec2Ipublic double dist2(double vx,
double vy)
IVec2Ipublic double dist2(ISwitchE e, IVec2I v)
IVec2Ipublic IDoubleR dist2(ISwitchR r, IVec2I v)
IVec2Ipublic boolean eq(double vx,
double vy)
IVec2Ipublic boolean eq(ISwitchE e, IVec2I v)
IVec2Ipublic IBoolR eq(ISwitchR r, IVec2I v)
IVec2Ipublic boolean eq(IVec2I v, double tolerance)
IVec2Ipublic boolean eq(double vx,
double vy,
double tolerance)
IVec2Ipublic boolean eq(ISwitchE e, IVec2I v, double tolerance)
IVec2Ipublic IBoolR eq(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2Ipublic boolean eqX(double vx)
IVec2Ipublic boolean eqY(double vy)
IVec2Ipublic boolean eqX(ISwitchE e, IVec2I v)
IVec2Ipublic boolean eqY(ISwitchE e, IVec2I v)
IVec2Ipublic IBoolR eqX(ISwitchR r, IVec2I v)
IVec2Ipublic IBoolR eqY(ISwitchR r, IVec2I v)
IVec2Ipublic boolean eqX(IVec2I v, double tolerance)
IVec2Ipublic boolean eqY(IVec2I v, double tolerance)
IVec2Ipublic boolean eqX(double vx,
double tolerance)
IVec2Ipublic boolean eqY(double vy,
double tolerance)
IVec2Ipublic boolean eqX(ISwitchE e, IVec2I v, double tolerance)
IVec2Ipublic boolean eqY(ISwitchE e, IVec2I v, double tolerance)
IVec2Ipublic IBoolR eqX(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2Ipublic IBoolR eqY(ISwitchR r, IVec2I v, IDoubleI tolerance)
IVec2Ipublic double angle(IVec2I u)
IVec2Ipublic double angle(double ux,
double uy)
IVec2Ipublic double angle(ISwitchE e, IVec2I u)
IVec2Ipublic IDoubleR angle(ISwitchR r, IVec2I u)
IVec2Ipublic IVec2R rot(IVec2I center, double angle)
IVec2Ipublic IVec2R rot(double centerX, double centerY, double angle)
IVec2Ipublic IVec2R rot(IVec2I center, IDoubleI angle)
IVec2Ipublic IVec2R rot(IVec2I destDir)
IVec2Ipublic IVec2R rot(IVec2I center, IVec2I destPt)
IVec2Ipublic IVec2R scale(IVec2I center, double f)
IVec2Ipublic IVec2R scale(double centerX, double centerY, double f)
IVec2Ipublic IVec2R scale(IVec2I center, IDoubleI f)
IVec2Ipublic IVec2R scale1d(double axisX, double axisY, double f)
IVec2Ipublic IVec2R scale1d(IVec2I axis, IDoubleI f)
IVec2Ipublic IVec2R scale1d(IVec2I center, IVec2I axis, double f)
IVec2Ipublic IVec2R scale1d(double centerX, double centerY, double axisX, double axisY, double f)
IVec2Ipublic IVec2R scale1d(IVec2I center, IVec2I axis, IDoubleI f)
IVec2Ipublic IVec2R ref(IVec2I lineDir)
public IVec2R ref(double lineX, double lineY)
IVec2Ipublic IVec2R ref(IVec2I linePt, IVec2I lineDir)
IVec2Ipublic IVec2R ref(double linePtX, double linePtY, double lineDirX, double lineDirY)
IVec2Ipublic IVec2R mirror(IVec2I lineDir)
IVec2Ipublic IVec2R mirror(double lineX, double lineY)
IVec2Ipublic IVec2R mirror(IVec2I linePt, IVec2I lineDir)
IVec2Ipublic IVec2R mirror(double linePtX, double linePtY, double lineDirX, double lineDirY)
IVec2Ipublic IVec2R shear(double sxy, double syx)
public IVec2R translate(double x, double y)
public IVec2R transform(IMatrix2I mat)
IVec2Ipublic IVec2R transform(IMatrix3I mat)
IVec2Ipublic IVec2R transform(IVec2I xvec, IVec2I yvec)
IVec2Ipublic IVec2R transform(IVec2I xvec, IVec2I yvec, IVec2I translate)
IVec2Ipublic IVec2R cp()
public IVec2R cp(double x, double y)
public IVec2R dif(IVec2I v)
IVec2Ipublic IVec2R dif(double vx, double vy)
IVec2Ipublic IVec2R diff(double vx, double vy)
IVec2Ipublic IVec2R mid(IVec2I v)
IVec2Ipublic IVec2R mid(double vx, double vy)
IVec2Ipublic IVec2R sum(IVec2I v)
IVec2Ipublic IVec2R sum(double vx, double vy)
IVec2Ipublic IVec2R sum(IVec2I... v)
IVec2Ipublic IVec2R bisect(IVec2I v)
IVec2Ipublic IVec2R bisect(double vx, double vy)
IVec2Ipublic IVec2R sum(IVec2I v2, double w2)
IVec2Ipublic IVec2R sum(IVec2I v2, IDoubleI w1, IDoubleI w2)
IVec2Ipublic IVec2R sum(IVec2I v2, IDoubleI w2)
IVec2Ipublic IVecR nml(IVec2I pt1, IVec2I pt2)
public IVecR nml(double vx1, double vy1, double vx2, double vy2)