|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectigeo.IParameterObject
igeo.IVec
public class IVec
Class of 3 dimensional vector.
Field Summary | |
---|---|
static IVec |
origin
|
double |
x
|
static IVec |
xaxis
|
double |
y
|
static IVec |
yaxis
|
double |
z
|
static IVec |
zaxis
|
Fields inherited from class igeo.IParameterObject |
---|
parent |
Constructor Summary | |
---|---|
IVec()
|
|
IVec(double x,
double y)
|
|
IVec(double x,
double y,
double z)
|
|
IVec(IDoubleI x,
IDoubleI y,
IDoubleI z)
|
|
IVec(IServerI s)
|
|
IVec(IServerI s,
double x,
double y)
|
|
IVec(IServerI s,
double x,
double y,
double z)
|
|
IVec(IServerI s,
IDoubleI x,
IDoubleI y,
IDoubleI z)
|
|
IVec(IServerI s,
IVec v)
|
|
IVec(IServerI s,
IVec2I v)
|
|
IVec(IServerI s,
IVecI v)
|
|
IVec(IVec v)
|
|
IVec(IVec2I v)
|
|
IVec(IVecI v)
|
Method Summary | |
---|---|
IVec |
add(double x,
double y,
double z)
|
IVec |
add(double f,
IVec v)
scale add; alias of add(IVec,double) |
IVec |
add(double f,
IVecI v)
scale add; alias of add(IVecI,double) |
IVec |
add(IDoubleI x,
IDoubleI y,
IDoubleI z)
|
IVec |
add(IDoubleI f,
IVecI v)
scale add; alias of add(IVec,IDouble) |
IVec |
add(IVec v)
|
IVec |
add(IVec v,
double f)
scale add |
IVec |
add(IVecI v)
|
IVec |
add(IVecI v,
double f)
scale add |
IVec |
add(IVecI v,
IDoubleI f)
scale add |
double |
angle(double vx,
double vy,
double vz)
angle in radian, ranging from 0 to Pi |
double |
angle(double vx,
double vy,
double vz,
double axisX,
double axisY,
double axisZ)
angle in radian, with reference axis to decide which is negative direction, ranging from -Pi to Pi angle is not measured on the plane of axis. |
double |
angle(ISwitchE e,
IVecI v)
angle in radian, ranging from 0 to Pi |
double |
angle(ISwitchE e,
IVecI v,
IVecI axis)
angle in radian, with reference axis to decide which is negative direction, ranging from -Pi to Pi angle is not measured on the plane of axis. |
IDouble |
angle(ISwitchR r,
IVecI v)
angle in radian, ranging from 0 to Pi |
IDouble |
angle(ISwitchR r,
IVecI v,
IVecI axis)
angle in radian, with reference axis to decide which is negative direction, ranging from -Pi to Pi angle is not measured on the plane of axis. |
double |
angle(IVec v)
angle in radian, ranging from 0 to Pi |
double |
angle(IVecI v)
angle in radian, ranging from 0 to Pi |
double |
angle(IVecI v,
IVecI axis)
angle in radian, with reference axis to decide which is negative direction, ranging from -Pi to Pi angle is not measured on the plane of axis. |
static double |
angle(IVecI pt1,
IVecI pt2,
IVecI pt3)
measure angle of polyline of pt1, pt2 and pt3 at pt2, which is equivalent to measure angle between vectors from pt2 to pt1 and pt2 to pt3. |
double |
angle(IVec v,
IVec axis)
angle in radian, with reference axis to decide which is negative direction, ranging from -Pi to Pi angle is not measured on the plane of axis. |
static IVec |
averageNormal(IVecI[] pts)
average normal of point array in form of a polyline. |
static IVec |
averageNormal(IVecI[][] pts)
average normal of point array in form of a matrix. |
IVec |
bisect(double vx,
double vy,
double vz)
create a new instance of bisector |
IVec |
bisect(IVec v)
create a new instance of bisector |
IVec |
bisect(IVecI v)
create a new instance of bisector |
static IVec[] |
bisectPlane(IVec planeDir1,
IVec planePt1,
IVec planeDir2,
IVec planePt2)
bisector plane of two planes |
static IVec |
center(IVecI... v)
calculating centetr of multiple points |
IVec |
cp()
cp() is alias of dup() |
IVec |
cp(double vx,
double vy,
double vz)
cp() is alias of dup().add() |
IVec |
cp(IDoubleI vx,
IDoubleI vy,
IDoubleI vz)
cp() is alias of dup().add() |
IVec |
cp(IVec v)
cp() is alias of dup().add() |
IVec |
cp(IVecI v)
cp() is alias of dup().add() |
IVec |
cross(double vx,
double vy,
double vz)
cross product. |
IVec |
cross(IVec v)
cross product. |
IVec |
cross(IVecI v)
cross product, creating a new instance |
IVec[] |
decompose(IVecI uaxis,
IVecI vaxis)
decompose the vector to two input vectors and another perpendicular vector of those two and returns three decomposed vector. |
IVec |
dif(double vx,
double vy,
double vz)
create a new instance of difference |
IVec |
dif(IVec v)
create a new instance of difference |
IVec |
dif(IVecI v)
create a new instance of difference |
IVec |
diff(double vx,
double vy,
double vz)
create a new instance of difference |
IVec |
diff(IVec v)
create a new instance of difference |
IVec |
diff(IVecI v)
create a new instance of difference |
double |
dist(double vx,
double vy,
double vz)
get distance between two vectors |
double |
dist(ISwitchE e,
IVecI v)
get distance between two vectors |
IDouble |
dist(ISwitchR r,
IVecI v)
get distance between two vectors |
double |
dist(IVec v)
get distance between two vectors |
double |
dist(IVecI v)
get distance between two vectors |
double |
dist2(double vx,
double vy,
double vz)
get squared distance between two vectors |
double |
dist2(ISwitchE e,
IVecI v)
get squared distance between two vectors |
IDouble |
dist2(ISwitchR r,
IVecI v)
get squared distance between two vectors |
double |
dist2(IVec v)
get squared distance between two vectors |
double |
dist2(IVecI v)
get squared distance between two vectors |
double |
distToLine(IVecI lineDir)
distance to a line dir |
double |
distToLine(IVecI lineDir,
IVecI linePt)
distance to an infinite line |
double |
distToPlane(IVecI planeDir,
IVecI planePt)
distance to a plane |
double |
distToSegment(IVecI linePt1,
IVecI linePt2)
distance to a line segment |
double |
distToTriangle(IVecI pt1,
IVecI pt2,
IVecI pt3)
distance to a triangle |
IVec |
div(double v)
|
IVec |
div(IDouble v)
|
IVec |
div(IDoubleI v)
|
double |
dot(double vx,
double vy,
double vz)
dot product in double |
double |
dot(ISwitchE e,
IVecI v)
dot product in double |
IDouble |
dot(ISwitchR r,
IVecI v)
dot product in IDouble |
double |
dot(IVec v)
dot product in double |
double |
dot(IVecI v)
dot product in double |
IVec |
dup()
duplicate the instance |
boolean |
eq(double vx,
double vy,
double vz)
check if 2 vectors are same by distance |
boolean |
eq(double vx,
double vy,
double vz,
double tolerance)
check if 2 vectors are same by distance with tolerace |
boolean |
eq(ISwitchE e,
IVecI v)
check if 2 vectors are same by distance |
boolean |
eq(ISwitchE e,
IVecI v,
double tolerance)
check if 2 vectors are same by distance with tolerace |
IBool |
eq(ISwitchR r,
IVecI v)
check if 2 vectors are same by distance |
IBool |
eq(ISwitchR r,
IVecI v,
IDoubleI tolerance)
check if 2 vectors are same by distance with tolerace |
boolean |
eq(IVec v)
check if 2 vectors are same by distance |
boolean |
eq(IVec v,
double tolerance)
check if 2 vectors are same by distance with tolerace |
boolean |
eq(IVecI v)
check if 2 vectors are same by distance |
boolean |
eq(IVecI v,
double tolerance)
check if 2 vectors are same by distance with tolerace |
boolean |
eqX(double vx)
check if 2 vectors are same in X |
boolean |
eqX(double vx,
double tolerance)
check if same in X with tolerance |
boolean |
eqX(ISwitchE e,
IVecI v)
check if 2 vectors are same in X |
boolean |
eqX(ISwitchE e,
IVecI v,
double tolerance)
check if same in X with tolerance |
IBool |
eqX(ISwitchR r,
IVecI v)
check if 2 vectors are same in X |
IBool |
eqX(ISwitchR r,
IVecI v,
IDoubleI tolerance)
check if same in X with tolerance |
boolean |
eqX(IVec v)
check if 2 vectors are same in X |
boolean |
eqX(IVec v,
double tolerance)
|
boolean |
eqX(IVecI v)
check if 2 vectors are same in X |
boolean |
eqX(IVecI v,
double tolerance)
check if same in X with tolerance |
boolean |
eqY(double vy)
check if 2 vectors are same in Y |
boolean |
eqY(double vy,
double tolerance)
check if same in Y with tolerance |
boolean |
eqY(ISwitchE e,
IVecI v)
check if 2 vectors are same in Y |
boolean |
eqY(ISwitchE e,
IVecI v,
double tolerance)
check if same in Y with tolerance |
IBool |
eqY(ISwitchR r,
IVecI v)
check if 2 vectors are same in Y |
IBool |
eqY(ISwitchR r,
IVecI v,
IDoubleI tolerance)
check if same in Y with tolerance |
boolean |
eqY(IVec v)
check if 2 vectors are same in Y |
boolean |
eqY(IVec v,
double tolerance)
|
boolean |
eqY(IVecI v)
check if 2 vectors are same in Y |
boolean |
eqY(IVecI v,
double tolerance)
check if same in Y with tolerance |
boolean |
eqZ(double vz)
check if 2 vectors are same in Z |
boolean |
eqZ(double vz,
double tolerance)
check if same in Z with tolerance |
boolean |
eqZ(ISwitchE e,
IVecI v)
check if 2 vectors are same in Z |
boolean |
eqZ(ISwitchE e,
IVecI v,
double tolerance)
check if same in Z with tolerance |
IBool |
eqZ(ISwitchR r,
IVecI v)
check if 2 vectors are same in Z |
IBool |
eqZ(ISwitchR r,
IVecI v,
IDoubleI tolerance)
check if same in Z with tolerance |
boolean |
eqZ(IVec v)
check if 2 vectors are same in Z |
boolean |
eqZ(IVec v,
double tolerance)
|
boolean |
eqZ(IVecI v)
check if 2 vectors are same in Z |
boolean |
eqZ(IVecI v,
double tolerance)
check if same in Z with tolerance |
IVec |
flip()
alias of neg() |
IVec |
get()
|
static IVec |
getNormal(double vx1,
double vy1,
double vz1,
double vx2,
double vy2,
double vz2,
double vx3,
double vy3,
double vz3)
|
IVecI |
getNormal(IVecI pt2,
IVecI pt3)
alias of nml |
static IVecI |
getNormal(IVecI pt1,
IVecI pt2,
IVecI pt3)
create normal vector from 3 points |
IVec |
getNormal(IVec pt2,
IVec pt3)
alias of nml |
static IVec |
getNormal(IVec pt1,
IVec pt2,
IVec pt3)
create normal vector from 3 points |
IDouble |
getX()
|
IDouble |
getY()
|
IDouble |
getZ()
|
IVec |
icross(double vx,
double vy,
double vz)
cross product, changing its values by itself. |
IVec |
icross(IVec v)
cross product, changing its values by itself. |
IVec |
icross(IVecI v)
cross product, changing its values by itself. |
static IVec |
intersect(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersection of two infinite lines. |
static IVec |
intersect(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
intersection of two infinite lines. |
static IVec |
intersect(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersection of two infinite lines. |
static IVec |
intersect(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersection of two infinite lines. |
static IVec[] |
intersectCircle(IVec circleNormal1,
IVec circleCenter1,
double radius1,
IVec circleNormal2,
IVec circleCenter2,
double radius2)
|
static IVec[] |
intersectCircleAndSphere(IVec circleNormal,
IVec circleCenter,
double circleRadius,
IVec sphereCenter,
double sphereRadius)
|
static IVec |
intersectInfiniteLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfiniteLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersect infinite lines; alias of intersect() |
static IVec |
intersectInfLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersect infinite lines; alias of intersect() |
static IVec |
intersectLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersection of line segments; alias of intersectSegment |
static IVec |
intersectLine(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
|
static IVec |
intersectLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
|
static IVec |
intersectLine(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
|
static IVec |
intersectLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersection of line segments; alias of intersectSegment |
static IVec |
intersectLines(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
|
static IVec |
intersectLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
|
static IVec |
intersectLines(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
|
static IVec |
intersectPlane(IVec plane1Dir,
IVec plane2Dir)
intersection of two planes at the origin. |
static IVec[] |
intersectPlane(IVec plane1Dir,
IVec plane1Pt,
IVec plane2Dir,
IVec plane2Pt)
intersection of two planes. |
static IVec[] |
intersectPlane(IVec plane1Pt1,
IVec plane1Pt2,
IVec plane1Pt3,
IVec plane2Pt1,
IVec plane2Pt2,
IVec plane2Pt3)
intersection of two planes |
static IVec |
intersectPlaneAndLine(IVec planeDir,
IVec lineDir,
IVec linePt)
intersection of one plane at the origin and one infinite line |
static IVec |
intersectPlaneAndLine(IVec planeDir,
IVec planePt,
IVec lineDir,
IVec linePt)
intersection of one plane and one infinite line |
static IVec |
intersectPlaneAndLine(IVec planePt1,
IVec planePt2,
IVec planePt3,
IVec linePt1,
IVec linePt2)
intersection of one plane and one infinite line |
static IVec |
intersectPlaneAndSegment(IVec planeDir,
IVec linePt1,
IVec linePt2)
intersection of one plane at the origin and one line segment. |
static IVec |
intersectPlaneAndSegment(IVec planeDir,
IVec planePt,
IVec linePt1,
IVec linePt2)
intersection of one plane and one line segment. |
static IVec[] |
intersectPlaneAndSphere(IVec planeDir,
IVec planePt,
IVec sphereCenter,
double sphereRadius)
intersection circle of a plane and a sphere. |
static IVec |
intersectSeg(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersection of line segments; alias of intersectSegment |
static IVec |
intersectSeg(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
|
static IVec |
intersectSeg(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
|
static IVec |
intersectSeg(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
|
static IVec |
intersectSegment(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
|
static IVec |
intersectSegment(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
|
static IVec |
intersectSegment(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
intersection of line segments. |
static IVec |
intersectSegment(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
intersection of line segments. |
static IVec |
intersectSegments(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2)
intersection of line segments; alias of intersectSegment |
static IVec |
intersectSegments(IVecI line1Pt1,
IVecI line1Pt2,
IVecI line2Pt1,
IVecI line2Pt2,
double tolerance)
|
static IVec |
intersectSegments(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2)
|
static IVec |
intersectSegments(IVec line1Pt1,
IVec line1Pt2,
IVec line2Pt1,
IVec line2Pt2,
double tolerance)
|
static IVec[] |
intersectSphere(IVec sphereCenter1,
double radius1,
IVec sphereCenter2,
double radius2)
intersection circle of two spheres |
static boolean |
isArrayEqual(IVec[] pts1,
IVec[] pts2,
boolean cyclic,
boolean reverse)
|
static boolean |
isArrayEqual(IVec[] pts1,
IVec[] pts2,
boolean cyclic,
boolean reverse,
double tolerance)
|
static boolean |
isFlat(IVecI[] pts)
|
static boolean |
isFlat(IVecI[] pts,
double tolerance)
|
static boolean |
isFlat(IVecI pt1,
IVecI pt2,
IVecI pt3,
IVecI pt4)
|
static boolean |
isFlat(IVecI pt1,
IVecI pt2,
IVecI pt3,
IVecI pt4,
double tolerance)
|
boolean |
isOnLine(IVecI v1,
IVecI v2)
determine if it's on & inside the line |
boolean |
isOnLine(IVecI v1,
IVecI v2,
double tolerance)
determine if it's on & inside the line |
boolean |
isOnPlane(IVecI planeDir,
IVecI planePt)
|
boolean |
isOnPlane(IVecI planeDir,
IVecI planePt,
double tolerance)
|
boolean |
isOnPlane(IVecI planePt1,
IVecI planePt2,
IVecI planePt3)
|
boolean |
isOnPlane(IVecI planePt1,
IVecI planePt2,
IVecI planePt3,
double tolerance)
|
boolean |
isOnSegment(IVecI v1,
IVecI v2)
alias of isOnLine |
boolean |
isOnSegment(IVecI v1,
IVecI v2,
double tolerance)
alias of isOnLine |
boolean |
isOnTriangle(IVecI pt1,
IVecI pt2,
IVecI pt3)
|
boolean |
isOnTriangle(IVecI pt1,
IVecI pt2,
IVecI pt3,
double tolerance)
|
boolean |
isParallel(IVecI v)
|
boolean |
isParallel(IVecI v,
double angleTolerance)
|
boolean |
isPerpendicular(IVecI v)
|
boolean |
isPerpendicular(IVecI v,
double angleTolerance)
|
static boolean |
isStraight(IVecI[] pts)
|
static boolean |
isStraight(IVecI[] pts,
double tolerance)
static methods |
boolean |
isStraight(IVecI v1,
IVecI v2)
|
boolean |
isStraight(IVecI v1,
IVecI v2,
double tolerance)
|
boolean |
isValid()
checking x, y, and z is valid number (not Infinite, nor NaN). |
double |
len()
get length of the vector |
IVec |
len(double l)
set length of the vector |
IVec |
len(IDoubleI l)
set length of the vector |
double |
len(ISwitchE e)
get length of the vector |
IDouble |
len(ISwitchR r)
get length of the vector |
double |
len2()
get squared length of the vector |
double |
len2(ISwitchE e)
get squared length of the vector |
IDouble |
len2(ISwitchR r)
get squared length of the vector |
IVec |
mid(double vx,
double vy,
double vz)
create a new instance of midpoint |
IVec |
mid(IVec v)
create a new instance of midpoint |
IVec |
mid(IVecI v)
create a new instance of midpoint |
IVec |
mirror(double planeX,
double planeY,
double planeZ)
alias of ref |
IVec |
mirror(double centerX,
double centerY,
double centerZ,
double planeX,
double planeY,
double planeZ)
alias of ref |
IVec |
mirror(IVec planeDir)
alias of ref |
IVec |
mirror(IVecI planeDir)
alias of ref |
IVec |
mirror(IVecI center,
IVecI planeDir)
alias of ref |
IVec |
mirror(IVec center,
IVec planeDir)
alias of ref |
IVec |
mul(double v)
|
IVec |
mul(IDouble v)
|
IVec |
mul(IDoubleI v)
|
IVec |
mv(double vx,
double vy,
double vz)
mv() is alias of add() |
IVec |
mv(IDoubleI vx,
IDoubleI vy,
IDoubleI vz)
mv() is alias of add() |
IVec |
mv(IVecI v)
mv() is alias of add() |
IVec |
neg()
|
IVec |
nml(double vx,
double vy,
double vz)
alias of cross. |
IVec |
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) |
static IVec |
nml(double vx1,
double vy1,
double vz1,
double vx2,
double vy2,
double vz2,
double vx3,
double vy3,
double vz3)
create normal vector from 3 points |
IVec |
nml(IVec v)
alias of cross. |
IVec |
nml(IVecI v)
alias of cross. |
IVec |
nml(IVecI pt1,
IVecI pt2)
create normal vector from 3 points of self, pt1 and pt2 (not unitized) |
static IVecI |
nml(IVecI pt1,
IVecI pt2,
IVecI pt3)
create normal vector from 3 points |
IVec |
nml(IVec pt1,
IVec pt2)
create normal vector from 3 points of self, pt1 and pt2 (not unitized) |
static IVec |
nml(IVec pt1,
IVec pt2,
IVec pt3)
create normal vector from 3 points |
static IVec[] |
offset(IVec[] pts,
double width)
|
static IVec[] |
offset(IVec[] pts,
double width,
boolean close)
|
static IVec[] |
offset(IVec[] pts,
double width,
IVecI planeNormal)
|
static IVec[] |
offset(IVec[] pts,
double width,
IVecI planeNormal,
boolean close)
|
static IVecI[] |
offset(IVecI[] pts,
double width)
|
static IVecI[] |
offset(IVecI[] pts,
double width,
boolean close)
|
static IVecI[] |
offset(IVecI[] pts,
double width,
IVecI planeNormal)
|
static IVecI[] |
offset(IVecI[] pts,
double width,
IVecI planeNormal,
boolean close)
|
static IVecI[] |
offset(IVecI[] pts,
IDoubleI width)
|
static IVecI[] |
offset(IVecI[] pts,
IDoubleI width,
boolean close)
|
static IVecI[] |
offset(IVecI[] pts,
IDoubleI width,
IVecI planeNormal)
|
static IVecI[] |
offset(IVecI[] pts,
IDoubleI width,
IVecI planeNormal,
boolean close)
|
static IVecI[] |
offset(IVecI[] pts,
IVecI[] normal,
double width)
|
static IVecI[] |
offset(IVecI[] pts,
IVecI[] normal,
IDoubleI width)
|
IVec |
perpendicularVecToLine(IVecI lineDir)
create a new vector from line to this point perpendicular to the line dir |
IVec |
perpendicularVecToLine(IVecI lineDir,
IVecI linePt)
create a new vector from this point to the line in parpendicular direction. |
double[] |
projectTo2Vec(IVecI v1,
IVecI v2)
project the vector to the plane defined by two input vector and decompose vector to two vector and another perpendicular vector and returns coefficient of them. |
IVec |
projectToLine(IVecI linePt,
IVecI lineDir)
project to an infinite line. |
IVec |
projectToPlane(IVecI planeNormal)
|
static void |
projectToPlane(IVecI[] pts)
project point array to a plane. |
static void |
projectToPlane(IVecI[][] pts)
project point array to a plane. |
static void |
projectToPlane(IVecI[][] pts,
IVecI planeNormal)
project point array to a plane. |
static void |
projectToPlane(IVecI[][] pts,
IVecI planeNormal,
IVecI planePt)
project point array to a plane. |
static void |
projectToPlane(IVecI[][] pts,
IVecI projectDir,
IVecI planeNormal,
IVecI planePt)
project point array to a plane. |
static void |
projectToPlane(IVecI[] pts,
IVecI planeNormal)
project point array to a plane. |
static void |
projectToPlane(IVecI[] pts,
IVecI planeNormal,
IVecI planePt)
project point array to a plane. |
static void |
projectToPlane(IVecI[] pts,
IVecI projectDir,
IVecI planeNormal,
IVecI planePt)
project point array to a plane. |
IVec |
projectToPlane(IVecI projectDir,
IVecI planeNormal)
|
IVec |
projectToPlane(IVecI projectDir,
IVecI planeNormal,
IVecI planePoint)
|
static IVecI |
projectToPlane(IVecI pt,
IVecI projectDir,
IVecI planeNormal,
IVecI planePt)
project point a plane. |
IVec |
projectToSegment(IVecI linePt1,
IVecI linePt2)
project to a line segment. |
IVec |
projectToTriangle(IVecI pt1,
IVecI pt2,
IVecI pt3)
|
double |
projectToVec(IVecI v)
project this vector to the input vector and returns projection coefficient. |
double |
ratioOnSegment(IVecI linePt1,
IVecI linePt2)
ratio of projected point between two points (line segment). |
IVec |
ref(double planeX,
double planeY,
double planeZ)
reflect (mirror) 3 dimensionally to the other side of the plane |
IVec |
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 |
IVec |
ref(IVec planeDir)
reflect (mirror) 3 dimensionally to the other side of the plane |
IVec |
ref(IVecI planeDir)
reflect (mirror) 3 dimensionally to the other side of the plane |
IVec |
ref(IVecI center,
IVecI planeDir)
reflect (mirror) 3 dimensionally to the other side of the plane at the center |
IVec |
ref(IVec center,
IVec planeDir)
reflect (mirror) 3 dimensionally to the other side of the plane at the center |
IVec |
rev()
alias of neg() |
IVec |
rot(double angle)
rotation on xy-plane |
IVec |
rot(double axisX,
double axisY,
double axisZ,
double angle)
rotate the vector around the axis |
IVec |
rot(double centerX,
double centerY,
double centerZ,
double axisX,
double axisY,
double axisZ,
double angle)
rotation around axis vector and center point |
IVec |
rot(IDoubleI angle)
rotation on xy-plane |
IVec |
rot(IVec axis,
double angle)
rotate the vector around the axis |
IVec |
rot(IVecI axis,
double angle)
rotation around axis vector |
IVec |
rot(IVecI axis,
IDoubleI angle)
rotation around axis vector |
IVec |
rot(IVecI axis,
IVecI destDir)
rotation around axis towards destination direction |
IVec |
rot(IVecI center,
IVecI axis,
double angle)
rotation around axis vector and center point |
IVec |
rot(IVecI center,
IVecI axis,
IDoubleI angle)
rotation around axis vector and center |
IVec |
rot(IVecI center,
IVecI axis,
IVecI destPt)
rotation around axis and center towards destination point |
IVec |
rot(IVec axis,
IVec destDir)
rotation around axis towards destination direction |
IVec |
rot(IVec center,
IVec axis,
double angle)
|
IVec |
rot(IVec center,
IVec axis,
IVec destPt)
rotation around axis and center towards destination point |
IVec |
rot2(double angle)
rotation on xy-plane; alias of rot(double) |
IVec |
rot2(double centerX,
double centerY,
double angle)
rotation on xy-plane |
IVec |
rot2(IDoubleI angle)
rotation on xy-plane; alias of rot(IDoubleI) |
IVec |
rot2(IVec destDir)
rotation on xy-plane towards destDir |
IVec |
rot2(IVec center,
double angle)
rotation on xy-plane |
IVec |
rot2(IVecI destDir)
rotation on xy-plane towards destDir |
IVec |
rot2(IVecI center,
double angle)
rotation on xy-plane |
IVec |
rot2(IVecI center,
IDoubleI angle)
rotation on xy-plane |
IVec |
rot2(IVecI center,
IVecI destPt)
rotation on xy-plane towards destPt |
IVec |
rot2(IVec center,
IVec destPt)
rotation on xy-plane towards destPt |
IVec |
scale(double f)
alias of mul |
IVec |
scale(double centerX,
double centerY,
double centerZ,
double f)
scale from the center |
IVec |
scale(IDoubleI f)
alias of mul |
IVec |
scale(IVec center,
double f)
scale from the center |
IVec |
scale(IVecI center,
double f)
scale from the center |
IVec |
scale(IVecI center,
IDoubleI f)
scale from the center |
IVec |
scale1d(double axisX,
double axisY,
double axisZ,
double f)
scale only in 1 direction |
IVec |
scale1d(double centerX,
double centerY,
double centerZ,
double axisX,
double axisY,
double axisZ,
double f)
scale only in 1 direction |
IVec |
scale1d(IVec axis,
double f)
scale only in 1 direction |
IVec |
scale1d(IVecI axis,
double f)
scale only in 1 direction |
IVec |
scale1d(IVecI axis,
IDoubleI f)
scale only in 1 direction |
IVec |
scale1d(IVecI center,
IVecI axis,
double f)
scale only in 1 direction |
IVec |
scale1d(IVecI center,
IVecI axis,
IDoubleI f)
scale only in 1 direction |
IVec |
scale1d(IVec center,
IVec axis,
double f)
scale only in 1 direction |
IVec |
set(double x,
double y,
double z)
|
IVec |
set(IDoubleI x,
IDoubleI y,
IDoubleI z)
|
IVec |
set(IVec v)
|
IVec |
set(IVecI v)
|
IVec |
shear(double sxy,
double syx,
double syz,
double szy,
double szx,
double sxz)
shear operation |
IVec |
shear(IDoubleI sxy,
IDoubleI syx,
IDoubleI syz,
IDoubleI szy,
IDoubleI szx,
IDoubleI sxz)
shear operation |
IVec |
shear(IVecI center,
double sxy,
double syx,
double syz,
double szy,
double szx,
double sxz)
shear operation |
IVec |
shear(IVecI center,
IDoubleI sxy,
IDoubleI syx,
IDoubleI syz,
IDoubleI szy,
IDoubleI szx,
IDoubleI sxz)
shear operation |
IVec |
shearXY(double sxy,
double syx)
shear operation on XY |
IVec |
shearXY(IDoubleI sxy,
IDoubleI syx)
shear operation on XY |
IVec |
shearXY(IVecI center,
double sxy,
double syx)
shear operation on XY |
IVec |
shearXY(IVecI center,
IDoubleI sxy,
IDoubleI syx)
shear operation on XY |
IVec |
shearYZ(double syz,
double szy)
shear operation on YZ |
IVec |
shearYZ(IDoubleI syz,
IDoubleI szy)
shear operation on YZ |
IVec |
shearYZ(IVecI center,
double syz,
double szy)
shear operation on YZ |
IVec |
shearYZ(IVecI center,
IDoubleI syz,
IDoubleI szy)
shear operation on YZ |
IVec |
shearZX(double szx,
double sxz)
shear operation on ZX |
IVec |
shearZX(IDoubleI szx,
IDoubleI sxz)
shear operation on ZX |
IVec |
shearZX(IVecI center,
double szx,
double sxz)
shear operation on ZX |
IVec |
shearZX(IVecI center,
IDoubleI szx,
IDoubleI sxz)
shear operation on ZX |
IVectorObject |
show()
visualize a vector as an arrow. |
IVectorObject |
show(IServerI s)
visualize a vector as an arrow. |
IVectorObject |
show(IServerI s,
IVecI root)
visualize a vector as an arrow. |
IVectorObject |
show(IVecI root)
visualize a vector as an arrow. |
IVec |
sub(double x,
double y,
double z)
|
IVec |
sub(IDoubleI x,
IDoubleI y,
IDoubleI z)
|
IVec |
sub(IVec v)
|
IVec |
sub(IVecI v)
|
IVec |
sum(double vx,
double vy,
double vz)
create a new instance of summation |
IVec |
sum(IVec... v)
create a new instance of summation |
IVec |
sum(IVec v)
create a new instance of summation |
IVec |
sum(IVec v2,
double w2)
create a new instance of weighted summation |
IVec |
sum(IVec v2,
double w1,
double w2)
create a new instance of weighted summation |
IVec |
sum(IVecI... v)
create a new instance of summation |
IVec |
sum(IVecI v)
create a new instance of summation |
IVec |
sum(IVecI v2,
double w2)
create a new instance of weighted summation |
IVec |
sum(IVecI v2,
double w1,
double w2)
create a new instance of weighted summation |
IVec |
sum(IVecI v2,
IDoubleI w2)
create a new instance of weighted summation |
IVec |
sum(IVecI v2,
IDoubleI w1,
IDoubleI w2)
create a new instance of weighted summation |
IVec2 |
to2d()
|
IVec4 |
to4d()
|
IVec4 |
to4d(double w)
|
IVec4 |
to4d(IDoubleI w)
|
java.lang.String |
toString()
|
IVec |
transform(IMatrix3I mat)
transform with a transformation matrix |
IVec |
transform(IMatrix4I mat)
transform with a transformation matrix |
IVec |
transform(IVecI xvec,
IVecI yvec,
IVecI zvec)
transform with a transformation vectors |
IVec |
transform(IVecI xvec,
IVecI yvec,
IVecI zvec,
IVecI translate)
transform with a transformation vectors |
IVec |
transform(IVec xvec,
IVec yvec,
IVec zvec)
|
IVec |
transform(IVec xvec,
IVec yvec,
IVec zvec,
IVec translate)
|
IVec |
translate(double x,
double y,
double z)
translate() is alias of add() |
IVec |
translate(IDoubleI x,
IDoubleI y,
IDoubleI z)
alias of add() |
IVec |
translate(IVecI v)
alias of add() |
IVec |
unit()
unitize the vector |
double |
x()
getting x component |
IVec |
x(double vx)
setting x component |
IVec |
x(IDoubleI vx)
setting x component |
double |
x(ISwitchE e)
getting x component |
IDouble |
x(ISwitchR r)
getting x component |
double |
y()
getting y component |
IVec |
y(double vy)
setting y component |
IVec |
y(IDoubleI vy)
setting y component |
double |
y(ISwitchE e)
getting y component |
IDouble |
y(ISwitchR r)
getting y component |
double |
z()
getting z component |
IVec |
z(double vz)
setting z component |
IVec |
z(IDoubleI vz)
setting z component |
double |
z(ISwitchE e)
getting z component |
IDouble |
z(ISwitchR r)
getting z component |
IVec |
zero()
setting all zero |
Methods inherited from class igeo.IParameterObject |
---|
createObject, parent, parent |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final IVec origin
public static final IVec xaxis
public static final IVec yaxis
public static final IVec zaxis
public double x
public double y
public double z
Constructor Detail |
---|
public IVec()
public IVec(double x, double y, double z)
public IVec(double x, double y)
public IVec(IVec v)
public IVec(IVecI v)
public IVec(IDoubleI x, IDoubleI y, IDoubleI z)
public IVec(IVec2I v)
public IVec(IServerI s)
public IVec(IServerI s, double x, double y, double z)
public IVec(IServerI s, double x, double y)
public IVec(IServerI s, IVec v)
public IVec(IServerI s, IVecI v)
public IVec(IServerI s, IDoubleI x, IDoubleI y, IDoubleI z)
public IVec(IServerI s, IVec2I v)
Method Detail |
---|
public double x()
IVecI
x
in interface IVecI
public double y()
IVecI
y
in interface IVecI
public double z()
IVecI
z
in interface IVecI
public IVec x(double vx)
x
in interface IVecI
public IVec y(double vy)
y
in interface IVecI
public IVec z(double vz)
z
in interface IVecI
public IVec x(IDoubleI vx)
x
in interface IVecI
public IVec y(IDoubleI vy)
y
in interface IVecI
public IVec z(IDoubleI vz)
z
in interface IVecI
public double x(ISwitchE e)
x
in interface IVecI
public double y(ISwitchE e)
y
in interface IVecI
public double z(ISwitchE e)
z
in interface IVecI
public IDouble x(ISwitchR r)
x
in interface IVecI
public IDouble y(ISwitchR r)
y
in interface IVecI
public IDouble z(ISwitchR r)
z
in interface IVecI
public IVec get()
get
in interface IParameter
get
in interface IVecI
get
in interface IVecOp
public IVec dup()
ITransformable
dup
in interface ITransformable
dup
in interface IVecI
public IVec2 to2d()
to2d
in interface IVecI
public IVec4 to4d()
to4d
in interface IVecI
public IVec4 to4d(double w)
to4d
in interface IVecI
public IVec4 to4d(IDoubleI w)
to4d
in interface IVecI
public IDouble getX()
getX
in interface IVecI
public IDouble getY()
getY
in interface IVecI
public IDouble getZ()
getZ
in interface IVecI
public IVec set(double x, double y, double z)
set
in interface IVecI
public IVec set(IVec v)
public IVec set(IVecI v)
set
in interface IVecI
public IVec set(IDoubleI x, IDoubleI y, IDoubleI z)
set
in interface IVecI
public IVec add(double x, double y, double z)
add
in interface ITransformable
add
in interface IVecI
public IVec add(IDoubleI x, IDoubleI y, IDoubleI z)
add
in interface ITransformable
add
in interface IVecI
public IVec add(IVec v)
public IVec add(IVecI v)
add
in interface ITransformable
add
in interface IVecI
public IVec sub(double x, double y, double z)
sub
in interface ITransformable
sub
in interface IVecI
public IVec sub(IDoubleI x, IDoubleI y, IDoubleI z)
sub
in interface ITransformable
sub
in interface IVecI
public IVec sub(IVec v)
public IVec sub(IVecI v)
sub
in interface ITransformable
sub
in interface IVecI
public IVec mul(double v)
mul
in interface ITransformable
mul
in interface IVecI
public IVec mul(IDouble v)
public IVec mul(IDoubleI v)
mul
in interface ITransformable
mul
in interface IVecI
public IVec div(double v)
div
in interface ITransformable
div
in interface IVecI
public IVec div(IDouble v)
public IVec div(IDoubleI v)
div
in interface ITransformable
div
in interface IVecI
public IVec neg()
neg
in interface ITransformable
neg
in interface IVecI
public IVec rev()
rev
in interface IVecI
public IVec flip()
flip
in interface ITransformable
flip
in interface IVecI
public IVec zero()
zero
in interface IVecI
public IVec add(IVec v, double f)
public IVec add(IVecI v, double f)
add
in interface ITransformable
add
in interface IVecI
public IVec add(IVecI v, IDoubleI f)
add
in interface ITransformable
add
in interface IVecI
public IVec add(double f, IVec v)
public IVec add(double f, IVecI v)
add
in interface ITransformable
add
in interface IVecI
public IVec add(IDoubleI f, IVecI v)
add
in interface ITransformable
add
in interface IVecI
public double dot(IVec v)
public double dot(IVecI v)
dot
in interface IVecI
public double dot(double vx, double vy, double vz)
dot
in interface IVecI
public double dot(ISwitchE e, IVecI v)
dot
in interface IVecI
public IDouble dot(ISwitchR r, IVecI v)
dot
in interface IVecI
public IVec cross(IVec v)
public IVec cross(double vx, double vy, double vz)
cross
in interface IVecI
public IVec cross(IVecI v)
IVecI
cross
in interface IVecI
public IVec icross(IVec v)
public IVec icross(double vx, double vy, double vz)
public IVec icross(IVecI v)
public double len()
len
in interface IVecI
public double len(ISwitchE e)
len
in interface IVecI
public IDouble len(ISwitchR r)
len
in interface IVecI
public double len2()
len2
in interface IVecI
public double len2(ISwitchE e)
len2
in interface IVecI
public IDouble len2(ISwitchR r)
len2
in interface IVecI
public IVec len(double l)
len
in interface IVecI
public IVec len(IDoubleI l)
len
in interface IVecI
public IVec unit()
unit
in interface IVecI
public double dist(IVec v)
public double dist(IVecI v)
dist
in interface IVecI
public double dist(double vx, double vy, double vz)
dist
in interface IVecI
public double dist(ISwitchE e, IVecI v)
dist
in interface IVecI
public IDouble dist(ISwitchR r, IVecI v)
dist
in interface IVecI
public double dist2(IVec v)
public double dist2(double vx, double vy, double vz)
dist2
in interface IVecI
public double dist2(IVecI v)
dist2
in interface IVecI
public double dist2(ISwitchE e, IVecI v)
dist2
in interface IVecI
public IDouble dist2(ISwitchR r, IVecI v)
dist2
in interface IVecI
public boolean eq(IVec v)
public boolean eq(double vx, double vy, double vz)
eq
in interface IVecI
public boolean eq(IVecI v)
eq
in interface IVecI
public boolean eq(ISwitchE e, IVecI v)
eq
in interface IVecI
public IBool eq(ISwitchR r, IVecI v)
eq
in interface IVecI
public boolean eq(IVec v, double tolerance)
public boolean eq(double vx, double vy, double vz, double tolerance)
eq
in interface IVecI
public boolean eq(IVecI v, double tolerance)
eq
in interface IVecI
public boolean eq(ISwitchE e, IVecI v, double tolerance)
eq
in interface IVecI
public IBool eq(ISwitchR r, IVecI v, IDoubleI tolerance)
eq
in interface IVecI
public boolean eqX(IVec v)
public boolean eqY(IVec v)
public boolean eqZ(IVec v)
public boolean eqX(double vx)
eqX
in interface IVecI
public boolean eqY(double vy)
eqY
in interface IVecI
public boolean eqZ(double vz)
eqZ
in interface IVecI
public boolean eqX(IVecI v)
eqX
in interface IVecI
public boolean eqY(IVecI v)
eqY
in interface IVecI
public boolean eqZ(IVecI v)
eqZ
in interface IVecI
public boolean eqX(ISwitchE e, IVecI v)
eqX
in interface IVecI
public boolean eqY(ISwitchE e, IVecI v)
eqY
in interface IVecI
public boolean eqZ(ISwitchE e, IVecI v)
eqZ
in interface IVecI
public IBool eqX(ISwitchR r, IVecI v)
eqX
in interface IVecI
public IBool eqY(ISwitchR r, IVecI v)
eqY
in interface IVecI
public IBool eqZ(ISwitchR r, IVecI v)
eqZ
in interface IVecI
public boolean eqX(IVec v, double tolerance)
public boolean eqY(IVec v, double tolerance)
public boolean eqZ(IVec v, double tolerance)
public boolean eqX(double vx, double tolerance)
IVecI
eqX
in interface IVecI
public boolean eqY(double vy, double tolerance)
IVecI
eqY
in interface IVecI
public boolean eqZ(double vz, double tolerance)
IVecI
eqZ
in interface IVecI
public boolean eqX(IVecI v, double tolerance)
IVecI
eqX
in interface IVecI
public boolean eqY(IVecI v, double tolerance)
IVecI
eqY
in interface IVecI
public boolean eqZ(IVecI v, double tolerance)
IVecI
eqZ
in interface IVecI
public boolean eqX(ISwitchE e, IVecI v, double tolerance)
IVecI
eqX
in interface IVecI
public boolean eqY(ISwitchE e, IVecI v, double tolerance)
IVecI
eqY
in interface IVecI
public boolean eqZ(ISwitchE e, IVecI v, double tolerance)
IVecI
eqZ
in interface IVecI
public IBool eqX(ISwitchR r, IVecI v, IDoubleI tolerance)
IVecI
eqX
in interface IVecI
public IBool eqY(ISwitchR r, IVecI v, IDoubleI tolerance)
IVecI
eqY
in interface IVecI
public IBool eqZ(ISwitchR r, IVecI v, IDoubleI tolerance)
IVecI
eqZ
in interface IVecI
public double angle(IVec v)
public double angle(double vx, double vy, double vz)
angle
in interface IVecI
public double angle(IVecI v)
angle
in interface IVecI
public double angle(ISwitchE e, IVecI v)
angle
in interface IVecI
public IDouble angle(ISwitchR r, IVecI v)
angle
in interface IVecI
public double angle(IVec v, IVec axis)
public double angle(double vx, double vy, double vz, double axisX, double axisY, double axisZ)
angle
in interface IVecI
public double angle(IVecI v, IVecI axis)
angle
in interface IVecI
axis
- axis to determin sign of angle following right-handed screw rule.
public double angle(ISwitchE e, IVecI v, IVecI axis)
angle
in interface IVecI
axis
- axis to determin sign of angle following right-handed screw rule.
public IDouble angle(ISwitchR r, IVecI v, IVecI axis)
angle
in interface IVecI
axis
- axis to determin sign of angle following right-handed screw rule.
public IVec rot(IVec axis, double angle)
public IVec rot(double axisX, double axisY, double axisZ, double angle)
rot
in interface IVecI
public IVec rot(IVecI axis, double angle)
IVecI
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IVecI axis, IDoubleI angle)
ITransformable
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(double angle)
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IDoubleI angle)
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IVec center, IVec axis, double angle)
public IVec rot(double centerX, double centerY, double centerZ, double axisX, double axisY, double axisZ, double angle)
IVecI
rot
in interface IVecI
public IVec rot(IVecI center, IVecI axis, double angle)
IVecI
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IVecI center, IVecI axis, IDoubleI angle)
ITransformable
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IVec axis, IVec destDir)
public IVec rot(IVecI axis, IVecI destDir)
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot(IVec center, IVec axis, IVec destPt)
public IVec rot(IVecI center, IVecI axis, IVecI destPt)
rot
in interface ITransformable
rot
in interface IVecI
public IVec rot2(double angle)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec rot2(IDoubleI angle)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec rot2(IVec center, double angle)
public IVec rot2(double centerX, double centerY, double angle)
rot2
in interface IVecI
public IVec rot2(IVecI center, double angle)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec rot2(IVecI center, IDoubleI angle)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec rot2(IVec destDir)
public IVec rot2(IVecI destDir)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec rot2(IVec center, IVec destPt)
public IVec rot2(IVecI center, IVecI destPt)
rot2
in interface ITransformable
rot2
in interface IVecI
public IVec scale(IDoubleI f)
scale
in interface ITransformable
scale
in interface IVecI
public IVec scale(double f)
IVecI
scale
in interface ITransformable
scale
in interface IVecI
public IVec scale(IVec center, double f)
public IVec scale(double centerX, double centerY, double centerZ, double f)
scale
in interface IVecI
public IVec scale(IVecI center, double f)
scale
in interface ITransformable
scale
in interface IVecI
public IVec scale(IVecI center, IDoubleI f)
scale
in interface ITransformable
scale
in interface IVecI
public IVec scale1d(IVec axis, double f)
public IVec scale1d(double axisX, double axisY, double axisZ, double f)
scale1d
in interface IVecI
public IVec scale1d(IVecI axis, double f)
scale1d
in interface ITransformable
scale1d
in interface IVecI
public IVec scale1d(IVecI axis, IDoubleI f)
scale1d
in interface ITransformable
scale1d
in interface IVecI
public IVec scale1d(IVec center, IVec axis, double f)
public IVec scale1d(IVecI center, IVecI axis, double f)
scale1d
in interface ITransformable
scale1d
in interface IVecI
public IVec scale1d(double centerX, double centerY, double centerZ, double axisX, double axisY, double axisZ, double f)
scale1d
in interface IVecI
public IVec scale1d(IVecI center, IVecI axis, IDoubleI f)
scale1d
in interface ITransformable
scale1d
in interface IVecI
public IVec ref(IVec planeDir)
public IVec ref(double planeX, double planeY, double planeZ)
ref
in interface IVecI
public IVec ref(IVecI planeDir)
ref
in interface ITransformable
ref
in interface IVecI
public IVec ref(IVec center, IVec planeDir)
public IVec ref(double centerX, double centerY, double centerZ, double planeX, double planeY, double planeZ)
ref
in interface IVecI
public IVec ref(IVecI center, IVecI planeDir)
ref
in interface ITransformable
ref
in interface IVecI
public IVec mirror(IVec planeDir)
public IVec mirror(double planeX, double planeY, double planeZ)
mirror
in interface IVecI
public IVec mirror(IVecI planeDir)
mirror
in interface ITransformable
mirror
in interface IVecI
public IVec mirror(IVec center, IVec planeDir)
public IVec mirror(double centerX, double centerY, double centerZ, double planeX, double planeY, double planeZ)
mirror
in interface IVecI
public IVec mirror(IVecI center, IVecI planeDir)
mirror
in interface ITransformable
mirror
in interface IVecI
public IVec shear(double sxy, double syx, double syz, double szy, double szx, double sxz)
ITransformable
shear
in interface ITransformable
shear
in interface IVecI
public IVec shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
IVecI
shear
in interface ITransformable
shear
in interface IVecI
public IVec shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)
IVecI
shear
in interface ITransformable
shear
in interface IVecI
public IVec shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
IVecI
shear
in interface ITransformable
shear
in interface IVecI
public IVec shearXY(double sxy, double syx)
IVecI
shearXY
in interface ITransformable
shearXY
in interface IVecI
public IVec shearXY(IDoubleI sxy, IDoubleI syx)
IVecI
shearXY
in interface ITransformable
shearXY
in interface IVecI
public IVec shearXY(IVecI center, double sxy, double syx)
IVecI
shearXY
in interface ITransformable
shearXY
in interface IVecI
public IVec shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)
IVecI
shearXY
in interface ITransformable
shearXY
in interface IVecI
public IVec shearYZ(double syz, double szy)
IVecI
shearYZ
in interface ITransformable
shearYZ
in interface IVecI
public IVec shearYZ(IDoubleI syz, IDoubleI szy)
IVecI
shearYZ
in interface ITransformable
shearYZ
in interface IVecI
public IVec shearYZ(IVecI center, double syz, double szy)
IVecI
shearYZ
in interface ITransformable
shearYZ
in interface IVecI
public IVec shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)
IVecI
shearYZ
in interface ITransformable
shearYZ
in interface IVecI
public IVec shearZX(double szx, double sxz)
IVecI
shearZX
in interface ITransformable
shearZX
in interface IVecI
public IVec shearZX(IDoubleI szx, IDoubleI sxz)
IVecI
shearZX
in interface ITransformable
shearZX
in interface IVecI
public IVec shearZX(IVecI center, double szx, double sxz)
IVecI
shearZX
in interface ITransformable
shearZX
in interface IVecI
public IVec shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)
IVecI
shearZX
in interface ITransformable
shearZX
in interface IVecI
public IVec translate(double x, double y, double z)
ITransformable
translate
in interface ITransformable
translate
in interface IVecI
public IVec translate(IDoubleI x, IDoubleI y, IDoubleI z)
IVecI
translate
in interface ITransformable
translate
in interface IVecI
public IVec translate(IVecI v)
IVecI
translate
in interface ITransformable
translate
in interface IVecI
public IVec transform(IMatrix3I mat)
IVecI
transform
in interface ITransformable
transform
in interface IVecI
public IVec transform(IMatrix4I mat)
IVecI
transform
in interface ITransformable
transform
in interface IVecI
public IVec transform(IVec xvec, IVec yvec, IVec zvec)
public IVec transform(IVecI xvec, IVecI yvec, IVecI zvec)
IVecI
transform
in interface ITransformable
transform
in interface IVecI
public IVec transform(IVec xvec, IVec yvec, IVec zvec, IVec translate)
public IVec transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)
IVecI
transform
in interface ITransformable
transform
in interface IVecI
public IVec mv(double vx, double vy, double vz)
mv
in interface ITransformable
mv
in interface IVecI
public IVec mv(IDoubleI vx, IDoubleI vy, IDoubleI vz)
IVecI
mv
in interface ITransformable
mv
in interface IVecI
public IVec mv(IVecI v)
IVecI
mv
in interface ITransformable
mv
in interface IVecI
public IVec cp()
cp
in interface ITransformable
cp
in interface IVecI
public IVec cp(IVec v)
public IVec cp(double vx, double vy, double vz)
ITransformable
cp
in interface ITransformable
cp
in interface IVecI
public IVec cp(IDoubleI vx, IDoubleI vy, IDoubleI vz)
IVecI
cp
in interface ITransformable
cp
in interface IVecI
public IVec cp(IVecI v)
IVecI
cp
in interface ITransformable
cp
in interface IVecI
public IVec dif(IVec v)
public IVec dif(double vx, double vy, double vz)
dif
in interface IVecI
public IVec dif(IVecI v)
dif
in interface IVecI
public IVec diff(IVec v)
public IVec diff(double vx, double vy, double vz)
diff
in interface IVecI
public IVec diff(IVecI v)
diff
in interface IVecI
public IVec mid(IVec v)
public IVec mid(double vx, double vy, double vz)
mid
in interface IVecI
public IVec mid(IVecI v)
mid
in interface IVecI
public IVec sum(IVec v)
public IVec sum(double vx, double vy, double vz)
sum
in interface IVecI
public IVec sum(IVecI v)
sum
in interface IVecI
public IVec sum(IVec... v)
public IVec sum(IVecI... v)
sum
in interface IVecI
public IVec bisect(IVec v)
public IVec bisect(double vx, double vy, double vz)
bisect
in interface IVecI
public IVec bisect(IVecI v)
bisect
in interface IVecI
public IVec sum(IVec v2, double w1, double w2)
public IVec sum(IVec v2, double w2)
public IVec sum(IVecI v2, double w1, double w2)
sum
in interface IVecI
public IVec sum(IVecI v2, double w2)
sum
in interface IVecI
public IVec sum(IVecI v2, IDoubleI w1, IDoubleI w2)
sum
in interface IVecI
public IVec sum(IVecI v2, IDoubleI w2)
sum
in interface IVecI
public boolean isValid()
isValid
in interface IVecI
public java.lang.String toString()
toString
in class java.lang.Object
public boolean isParallel(IVecI v)
public boolean isParallel(IVecI v, double angleTolerance)
public boolean isPerpendicular(IVecI v)
public boolean isPerpendicular(IVecI v, double angleTolerance)
public boolean isStraight(IVecI v1, IVecI v2)
public boolean isStraight(IVecI v1, IVecI v2, double tolerance)
public boolean isOnLine(IVecI v1, IVecI v2)
public boolean isOnLine(IVecI v1, IVecI v2, double tolerance)
public boolean isOnSegment(IVecI v1, IVecI v2)
public boolean isOnSegment(IVecI v1, IVecI v2, double tolerance)
public IVec nml(IVecI v)
nml
in interface IVecI
public IVec nml(IVec v)
public IVec nml(double vx, double vy, double vz)
nml
in interface IVecI
public IVec nml(IVecI pt1, IVecI pt2)
nml
in interface IVecI
public IVec nml(IVec pt1, IVec pt2)
public IVec nml(double vx1, double vy1, double vz1, double vx2, double vy2, double vz2)
nml
in interface IVecI
public static IVecI nml(IVecI pt1, IVecI pt2, IVecI pt3)
public static IVec nml(IVec pt1, IVec pt2, IVec pt3)
public static IVec nml(double vx1, double vy1, double vz1, double vx2, double vy2, double vz2, double vx3, double vy3, double vz3)
public static IVecI getNormal(IVecI pt1, IVecI pt2, IVecI pt3)
public static IVec getNormal(IVec pt1, IVec pt2, IVec pt3)
public static IVec getNormal(double vx1, double vy1, double vz1, double vx2, double vy2, double vz2, double vx3, double vy3, double vz3)
public IVecI getNormal(IVecI pt2, IVecI pt3)
public IVec getNormal(IVec pt2, IVec pt3)
public IVec projectToPlane(IVecI planeNormal)
public IVec projectToPlane(IVecI projectDir, IVecI planeNormal)
public IVec projectToPlane(IVecI projectDir, IVecI planeNormal, IVecI planePoint)
public IVec projectToTriangle(IVecI pt1, IVecI pt2, IVecI pt3)
public IVec projectToLine(IVecI linePt, IVecI lineDir)
public IVec projectToSegment(IVecI linePt1, IVecI linePt2)
public double[] projectTo2Vec(IVecI v1, IVecI v2)
public double projectToVec(IVecI v)
v
- a vector for this vector to project on.public IVec[] decompose(IVecI uaxis, IVecI vaxis)
public double distToLine(IVecI lineDir, IVecI linePt)
public double distToLine(IVecI lineDir)
public double distToSegment(IVecI linePt1, IVecI linePt2)
public double ratioOnSegment(IVecI linePt1, IVecI linePt2)
public double distToPlane(IVecI planeDir, IVecI planePt)
public double distToTriangle(IVecI pt1, IVecI pt2, IVecI pt3)
public IVec perpendicularVecToLine(IVecI lineDir, IVecI linePt)
public IVec perpendicularVecToLine(IVecI lineDir)
public boolean isOnPlane(IVecI planePt1, IVecI planePt2, IVecI planePt3)
public boolean isOnPlane(IVecI planeDir, IVecI planePt)
public boolean isOnPlane(IVecI planePt1, IVecI planePt2, IVecI planePt3, double tolerance)
public boolean isOnPlane(IVecI planeDir, IVecI planePt, double tolerance)
public boolean isOnTriangle(IVecI pt1, IVecI pt2, IVecI pt3, double tolerance)
public boolean isOnTriangle(IVecI pt1, IVecI pt2, IVecI pt3)
public IVectorObject show(IVecI root)
root
- A root position of the arrow.public IVectorObject show()
public IVectorObject show(IServerI s, IVecI root)
s
- A server to store the object.root
- A root position of the arrow.public IVectorObject show(IServerI s)
s
- A server to store the object.public static boolean isStraight(IVecI[] pts, double tolerance)
public static boolean isStraight(IVecI[] pts)
public static boolean isFlat(IVecI pt1, IVecI pt2, IVecI pt3, IVecI pt4)
public static boolean isFlat(IVecI pt1, IVecI pt2, IVecI pt3, IVecI pt4, double tolerance)
public static boolean isFlat(IVecI[] pts)
public static boolean isFlat(IVecI[] pts, double tolerance)
public static boolean isArrayEqual(IVec[] pts1, IVec[] pts2, boolean cyclic, boolean reverse)
public static boolean isArrayEqual(IVec[] pts1, IVec[] pts2, boolean cyclic, boolean reverse, double tolerance)
public static IVec averageNormal(IVecI[] pts)
public static IVec averageNormal(IVecI[][] pts)
public static IVec center(IVecI... v)
public static IVec[] offset(IVec[] pts, double width, IVecI planeNormal)
public static IVec[] offset(IVec[] pts, double width, IVecI planeNormal, boolean close)
public static IVecI[] offset(IVecI[] pts, double width, IVecI planeNormal, boolean close)
public static IVecI[] offset(IVecI[] pts, double width, IVecI planeNormal)
public static IVecI[] offset(IVecI[] pts, IDoubleI width, IVecI planeNormal, boolean close)
public static IVecI[] offset(IVecI[] pts, IDoubleI width, IVecI planeNormal)
public static IVecI[] offset(IVecI[] pts, IVecI[] normal, double width)
public static IVecI[] offset(IVecI[] pts, IVecI[] normal, IDoubleI width)
public static IVec[] offset(IVec[] pts, double width)
public static IVec[] offset(IVec[] pts, double width, boolean close)
public static IVecI[] offset(IVecI[] pts, double width, boolean close)
public static IVecI[] offset(IVecI[] pts, double width)
public static IVecI[] offset(IVecI[] pts, IDoubleI width, boolean close)
public static IVecI[] offset(IVecI[] pts, IDoubleI width)
public static IVecI projectToPlane(IVecI pt, IVecI projectDir, IVecI planeNormal, IVecI planePt)
public static void projectToPlane(IVecI[] pts, IVecI projectDir, IVecI planeNormal, IVecI planePt)
public static void projectToPlane(IVecI[][] pts, IVecI projectDir, IVecI planeNormal, IVecI planePt)
public static void projectToPlane(IVecI[] pts, IVecI planeNormal, IVecI planePt)
public static void projectToPlane(IVecI[][] pts, IVecI planeNormal, IVecI planePt)
public static void projectToPlane(IVecI[] pts, IVecI planeNormal)
public static void projectToPlane(IVecI[][] pts, IVecI planeNormal)
public static void projectToPlane(IVecI[] pts)
public static void projectToPlane(IVecI[][] pts)
public static IVec intersect(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersect(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersect(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersect(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectInfiniteLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectInfiniteLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectInfiniteLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectInfiniteLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectInfiniteLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectInfiniteLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectInfiniteLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectInfiniteLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectInfLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectInfLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectInfLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectInfLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectInfLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectInfLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectInfLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectInfLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectSegment(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectSegment(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectSegment(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectSegment(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectSegments(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectSegments(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectSegments(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectSegments(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectSeg(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectSeg(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectSeg(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectSeg(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectLines(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectLines(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec intersectLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2)
public static IVec intersectLine(IVecI line1Pt1, IVecI line1Pt2, IVecI line2Pt1, IVecI line2Pt2, double tolerance)
public static IVec intersectLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2)
public static IVec intersectLine(IVec line1Pt1, IVec line1Pt2, IVec line2Pt1, IVec line2Pt2, double tolerance)
public static IVec[] intersectPlane(IVec plane1Dir, IVec plane1Pt, IVec plane2Dir, IVec plane2Pt)
public static IVec intersectPlane(IVec plane1Dir, IVec plane2Dir)
public static IVec[] intersectPlane(IVec plane1Pt1, IVec plane1Pt2, IVec plane1Pt3, IVec plane2Pt1, IVec plane2Pt2, IVec plane2Pt3)
public static IVec intersectPlaneAndLine(IVec planeDir, IVec planePt, IVec lineDir, IVec linePt)
public static IVec intersectPlaneAndLine(IVec planeDir, IVec lineDir, IVec linePt)
public static IVec intersectPlaneAndLine(IVec planePt1, IVec planePt2, IVec planePt3, IVec linePt1, IVec linePt2)
public static IVec intersectPlaneAndSegment(IVec planeDir, IVec planePt, IVec linePt1, IVec linePt2)
public static IVec intersectPlaneAndSegment(IVec planeDir, IVec linePt1, IVec linePt2)
public static IVec[] bisectPlane(IVec planeDir1, IVec planePt1, IVec planeDir2, IVec planePt2)
public static IVec[] intersectPlaneAndSphere(IVec planeDir, IVec planePt, IVec sphereCenter, double sphereRadius)
public static IVec[] intersectCircleAndSphere(IVec circleNormal, IVec circleCenter, double circleRadius, IVec sphereCenter, double sphereRadius)
public static IVec[] intersectSphere(IVec sphereCenter1, double radius1, IVec sphereCenter2, double radius2)
public static IVec[] intersectCircle(IVec circleNormal1, IVec circleCenter1, double radius1, IVec circleNormal2, IVec circleCenter2, double radius2)
public static double angle(IVecI pt1, IVecI pt2, IVecI pt3)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |