|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcz.cuni.utils.math.M
public class M
This class contains many methods to deal with vertices / lines / planes / etc. in space. It has short name because it's expected to be used frequently.
Field Summary | |
---|---|
static double |
DEG_TO_RAD
|
static long |
DOUBLE_TO_LONG
|
static double |
EPSILON
|
static int |
EPSILON_DIGITS
|
private static double |
LINE_INTERSECTION_EPSILON
|
private static double |
LINE_INTERSECTION_MIN_TO_COMPUTE_WITH
|
static double |
NEAR_ZERO
|
static int |
NEAR_ZERO_DIGITS
|
static double |
PROJECTION_EPSILON
All M.project suffer a big precision error. |
static double |
RAD_TO_DEG
|
static Tuple3DNormalizedComparator |
tuple3DNormalizedComparator
|
static Tuple3DNormalizedComparatorXYZ |
tuple3DNormalizedComparatorXYZ
|
static Tuple3DNormalizedComparatorYZ |
tuple3DNormalizedComparatorYZ
|
static Tuple3DNormalizedComparatorZ |
tuple3DNormalizedComparatorZ
|
static double |
UT_ANGLE_TO_RAD
|
Constructor Summary | |
---|---|
M()
|
Method Summary | |
---|---|
static double |
angle(Tuple2D a,
Tuple2D b)
Returns angle in rad. |
static double |
angle(Tuple3D a,
Tuple3D b)
|
static int |
clockwiseOrder2D(double x1,
double y1,
double x2,
double y2,
double x3,
double y3)
Three points in 2D ... assuming that [X2,Y2] is the right-most (biggest X coordinate) point of all points from polygon Edges exist as follows A1A2, A2A3 ... |
static double |
coeficient(Line2D line,
Tuple2D pointInLine,
Tuple2D anotherPointInLine)
'pointInLine' and 'anotherPointInLine' must lie on a 'line' anotherPointInLine = pointInLine + k * line.direction returns k |
static java.lang.Object[] |
copyVertices2D(java.util.AbstractCollection vertices)
|
static java.lang.Object[] |
copyVertices3D(java.util.AbstractCollection vertices)
|
static java.lang.Object[] |
copyVertices4D(java.util.AbstractCollection vertices)
|
static double |
deg(double rad)
|
static double |
distance(Line3D line,
Tuple3D point)
|
static double |
distance(Tuple2D a,
Line2D l)
|
static double |
distance(Tuple2D a,
Tuple2D b)
|
static double |
distance(Tuple3D a,
Plane3D p)
|
static double |
distance(Tuple3D a,
Tuple3D b)
|
static double |
distanceSigned(Tuple2D a,
Line2D l)
|
static double |
distanceSigned(Tuple3D a,
Plane3D p)
|
static long |
doubleToLong(double x)
|
static boolean |
equals(double x,
double y)
|
static boolean |
equals(double x,
double y,
double precision)
|
static boolean |
equals(Plane3D a,
Plane3D b)
|
static boolean |
equals(Plane3D a,
Plane3D b,
double precision)
|
static boolean |
equals(Tuple2D a,
Tuple2D b)
|
static boolean |
equals(Tuple2D a,
Tuple2D b,
double precision)
|
static boolean |
equals(Tuple3D a,
Tuple3D b)
|
static boolean |
equals(Tuple3D a,
Tuple3D b,
double precision)
|
static boolean |
equalsSafe(Tuple3D a,
Tuple3D b)
|
static boolean |
equalsSafe(Tuple3D a,
Tuple3D b,
double precision)
|
static boolean |
inSegment(Segment2D s,
Tuple2D point)
|
static boolean |
inSegment(Segment2D s,
Tuple2D point,
double precision)
|
static boolean |
inSegment(Segment3D s,
Tuple3D point)
|
static boolean |
inSegment(Segment3D s,
Tuple3D point,
double precision)
|
static boolean |
inSegment(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Line2D segmentLine,
Tuple2D point)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Line2D segmentLine,
Tuple2D point,
double precision)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Tuple2D point)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Tuple2D point,
double precision)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Line3D segmentLine,
Tuple3D point)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Line3D segmentLine,
Tuple3D point,
double precision)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Tuple3D point)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegment(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Tuple3D point,
double precision)
Retuns null == false, precise point in line which is created in evaluation. |
static boolean |
inSegmentNotEnd(Segment2D s,
Tuple2D point)
|
static boolean |
inSegmentNotEnd(Segment2D s,
Tuple2D point,
double precision)
|
static boolean |
inSegmentNotEnd(Segment3D s,
Tuple3D point)
|
static boolean |
inSegmentNotEnd(Segment3D s,
Tuple3D point,
double precision)
|
static boolean |
inSegmentNotEnd(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Line2D segmentLine,
Tuple2D point)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Line2D segmentLine,
Tuple2D point,
double precision)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Tuple2D point)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple2D firstEndOfSegment,
Tuple2D secondEndOfSegment,
Tuple2D point,
double precision)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Line3D segmentLine,
Tuple3D point)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Line3D segmentLine,
Tuple3D point,
double precision)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Tuple3D point)
e.g. inSegment but point ! |
static boolean |
inSegmentNotEnd(Tuple3D firstEndOfSegment,
Tuple3D secondEndOfSegment,
Tuple3D point,
double precision)
e.g. inSegment but point ! |
static Tuple2D |
intersection(Line2D line1,
Line2D line2)
|
static Tuple3D |
intersection(Line3D line1,
Line3D line2)
line1 == vector(nx, ny, nz), point(a, b, c) line2 == vector(mx, my, mz), point(u, v, w) Trying to solve problem for t, r from R: a + nx * t = u + mx * r b + ny * t = u + my * r c + nz * t = u + mz * r Robust implementation -> trying to compute with the biggest nA / mA |
static Tuple3D |
intersection(Plane3D plane,
Line3D line)
Null if parallel or line completely in plane. |
static Line3D |
intersection(Plane3D a,
Plane3D b)
From http://geometryalgorithms.com/Archive/algorithm_0104/algorithm_0104B.htm#intersect3D_2Planes() |
static boolean |
intersectSegment(HalfLine2D line,
Segment2D segment)
True if line crosses the segment |
static boolean |
intersectSegment(Line2D line,
Segment2D segment)
True if line crosses the segment |
static boolean |
inTriangle(Tuple2D point,
Triangle2D triangle)
|
static Tuple2D |
inverse(double x,
double y)
|
static Tuple3D |
inverse(double x,
double y,
double z)
|
static Tuple2D |
inverse(Tuple2D a)
|
static Tuple3D |
inverse(Tuple3D a)
|
static boolean |
isCollinear(Tuple2D a,
Tuple2D b,
Tuple2D c)
|
static boolean |
isCollinear(Tuple2D a,
Tuple2D b,
Tuple2D c,
double precision)
|
static boolean |
isCollinear(Tuple3D a,
Tuple3D b,
Tuple3D c)
|
static boolean |
isCollinear(Tuple3D a,
Tuple3D b,
Tuple3D c,
double precision)
|
static boolean |
isTriangle(Tuple2D a,
Tuple2D b,
Tuple2D c)
|
static boolean |
isTriangle(Tuple3D a,
Tuple3D b,
Tuple3D c)
|
static double |
linearEq(double a,
double b)
aX + b = 0 |
static double |
linearEq(double a,
double b,
double c)
aX + b = c |
static double[] |
linearEq2(double a1,
double b1,
double c1,
double a2,
double b2,
double c2)
a1X + b1Y = c1 a2X + b2Y = c2 |
static void |
main(java.lang.String[] args)
|
static Tuple2D |
multi(double x,
double y,
double ratio)
|
static Tuple3D |
multi(double x,
double y,
double z,
double ratio)
|
static Tuple2D |
multi(Tuple2D a,
double ratio)
|
static Tuple3D |
multi(Tuple3D a,
double ratio)
|
static Tuple3D |
multi(Tuple3D a,
double x,
double y,
double z)
|
static Tuple3D |
multi(Tuple3D a,
Tuple3D b)
|
static double |
multiScalar(Tuple2D a,
Tuple2D b)
|
static double |
multiScalar(Tuple3D a,
Tuple3D b)
|
static void |
normalizedAdaptiveSort(java.lang.Object[] array)
Check wether some coords aren't almost the same... |
static Tuple2D |
normalizedNormal(Tuple2D normal)
Special kind of vector satisfying this constrain on (X, Y): vector is normalized and if (X ! |
static Tuple2D |
normalizedNormal(Tuple2D normal,
double precision)
|
static Tuple3D |
normalizedNormal(Tuple3D normal)
Special kind of vector satisfying this constrain on (X, Y, Z): vector is normalized and if (X ! |
static Tuple3D |
normalizedNormal(Tuple3D normal,
double precision)
|
static Tuple3D |
normalizedNormalTestZero(Tuple3D normal)
|
static Tuple3D |
normalizedNormalTestZero(Tuple3D normal,
double precision)
|
static Tuple2D[] |
normalizedOrder(Tuple2D a,
Tuple2D b)
Used to sort vertexes for hash codes. |
static Tuple3D[] |
normalizedOrder(Tuple3D a,
Tuple3D b)
Used to sort vertexes for hash codes. |
static Vertex2D[] |
normalizedOrder(Vertex2D a,
Vertex2D b)
Used to sort vertexes for hash codes. |
static Vertex3D[] |
normalizedOrder(Vertex3D a,
Vertex3D b)
Used to sort vertexes for hash codes. |
static Tuple3D |
outsideVector(Triangle3D t,
Segment3D s)
Segment must be formed of two triangles vertices! |
static Tuple2D |
perpendicular(Tuple2D a)
|
static Tuple3D |
perpendicular2DYZ(Tuple3D v)
Returns vector perpendicular to a vector projected into YZ plane. |
static boolean |
planeIntersect(Plane3D a,
Plane3D b)
|
static Tuple2D |
plus(double x,
double y,
double amount)
|
static Tuple3D |
plus(double x,
double y,
double z,
double amount)
|
static Tuple2D |
plus(Tuple2D a,
double amount)
|
static Tuple2D |
plus(Tuple2D a,
Tuple2D b)
|
static Tuple3D |
plus(Tuple3D a,
double amount)
|
static Tuple3D |
plus(Tuple3D a,
Tuple3D b)
|
static Tuple3D |
project(Tuple3D point,
Line3D line)
Projects a point into a line 3D. |
static Tuple3D |
project(Tuple3D pointInPlane,
Line3D lineInPlane,
Plane3D plane)
Project 'pointInPlane' (which is in 'plane') to the 'lineInPlane' (which is also in 'plane'). |
static Tuple3D |
project(Tuple3D point,
Plane3D plane)
Project a point into a plane 3D. |
static double[] |
quadraticEq(double a,
double b,
double c)
aX^2 + bX + c = 0 |
static double |
rad(double deg)
|
static Tuple3D |
rotateX(double x,
double y,
double z,
double rad)
|
static Tuple3D |
rotateX(Tuple3D a,
double rad)
|
static Tuple3D |
rotateY(double x,
double y,
double z,
double rad)
|
static Tuple3D |
rotateY(Tuple3D a,
double rad)
|
static Tuple3D |
rotateYawPitchRoll(double x,
double y,
double z,
double yawRad,
double pitchRad,
double rollRad)
|
static Tuple3D |
rotateYawPitchRoll(Tuple3D a,
double yawRad,
double pitchRad,
double rollRad)
|
static Tuple3D |
rotateYawPitchRoll(Tuple3D a,
Tuple3D yawPitchRollRad)
|
static Tuple3D |
rotateZ(double x,
double y,
double z,
double rad)
|
static Tuple3D |
rotateZ(Tuple3D a,
double rad)
|
static double |
round(double x,
int precision)
|
static boolean |
sameSide(Tuple3D vertex1,
Tuple3D vertex2,
Plane3D plane)
|
static boolean |
sameSign(double x,
double y)
If y == 0 returns false, x == 0 && y > 0 -> false, x == 0 && y == 0 -> true |
static boolean |
sameWay(Tuple2D vector1,
Tuple2D vector2)
CALL IFF vector1.equals(vector2) || vector1.equals(vector2.inverse()) |
static boolean |
sameWay(Tuple3D vector1,
Tuple3D vector2)
CALL IFF vector1.equals(vector2) || vector1.equals(vector2.inverse()) |
static double |
smallerAngle(double angle)
Returns smaller angle in rad. |
static double |
smallerAngle(Tuple2D a,
Tuple2D b)
Returns smaller angle in rad. |
static double |
utAngleToRad(double utAngleDegree)
|
static Tuple2D |
vector(Tuple2D a,
Tuple2D b)
|
static Tuple3D |
vector(Tuple3D a,
Tuple3D b)
|
static boolean |
vectorEquals(Tuple2D a,
Tuple2D b)
|
static boolean |
vectorEquals(Tuple2D a,
Tuple2D b,
double precision)
|
static boolean |
vectorEquals(Tuple3D a,
Tuple3D b)
|
static boolean |
vectorEquals(Tuple3D a,
Tuple3D b,
double precision)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int EPSILON_DIGITS
public static final double EPSILON
public static final long DOUBLE_TO_LONG
public static final int NEAR_ZERO_DIGITS
public static final double NEAR_ZERO
public static final double PROJECTION_EPSILON
private static final double LINE_INTERSECTION_EPSILON
private static final double LINE_INTERSECTION_MIN_TO_COMPUTE_WITH
public static final Tuple3DNormalizedComparatorXYZ tuple3DNormalizedComparatorXYZ
public static final Tuple3DNormalizedComparatorYZ tuple3DNormalizedComparatorYZ
public static final Tuple3DNormalizedComparatorZ tuple3DNormalizedComparatorZ
public static final Tuple3DNormalizedComparator tuple3DNormalizedComparator
public static final double DEG_TO_RAD
public static final double RAD_TO_DEG
public static final double UT_ANGLE_TO_RAD
Constructor Detail |
---|
public M()
Method Detail |
---|
public static double rad(double deg)
public static double deg(double rad)
public static double utAngleToRad(double utAngleDegree)
public static boolean sameSign(double x, double y)
x
- y
- public static java.lang.Object[] copyVertices2D(java.util.AbstractCollection vertices)
public static java.lang.Object[] copyVertices3D(java.util.AbstractCollection vertices)
public static java.lang.Object[] copyVertices4D(java.util.AbstractCollection vertices)
public static boolean equals(double x, double y)
public static boolean equals(double x, double y, double precision)
public static double round(double x, int precision)
public static long doubleToLong(double x)
public static double linearEq(double a, double b)
a
- b
-
public static double linearEq(double a, double b, double c)
a
- b
- c
-
public static double[] quadraticEq(double a, double b, double c)
a
- b
- c
-
public static double[] linearEq2(double a1, double b1, double c1, double a2, double b2, double c2)
a1
- b1
- c1
- a2
- b2
- c2
-
public static int clockwiseOrder2D(double x1, double y1, double x2, double y2, double x3, double y3)
x1
- A1.Xy1
- A1.Yx2
- A2.Xy2
- A2.Yx3
- A3.Xy3
- A3.Y
public static void normalizedAdaptiveSort(java.lang.Object[] array)
array
- must consists of Tuple3D instances (or descendants)public static boolean equals(Tuple2D a, Tuple2D b)
public static boolean equals(Tuple2D a, Tuple2D b, double precision)
public static boolean vectorEquals(Tuple2D a, Tuple2D b)
public static boolean vectorEquals(Tuple2D a, Tuple2D b, double precision)
public static Tuple2D vector(Tuple2D a, Tuple2D b)
public static double distance(Tuple2D a, Tuple2D b)
public static double distance(Tuple2D a, Line2D l)
public static double distanceSigned(Tuple2D a, Line2D l)
public static Tuple2D inverse(double x, double y)
public static Tuple2D inverse(Tuple2D a)
public static Tuple2D plus(double x, double y, double amount)
public static Tuple2D plus(Tuple2D a, double amount)
public static Tuple2D plus(Tuple2D a, Tuple2D b)
public static double multiScalar(Tuple2D a, Tuple2D b)
public static Tuple2D multi(double x, double y, double ratio)
public static Tuple2D multi(Tuple2D a, double ratio)
public static Tuple2D perpendicular(Tuple2D a)
public static boolean sameWay(Tuple2D vector1, Tuple2D vector2)
vector1
- vector2
-
public static double angle(Tuple2D a, Tuple2D b)
a
- b
- public static double smallerAngle(double angle)
public static Tuple2D intersection(Line2D line1, Line2D line2)
public static double coeficient(Line2D line, Tuple2D pointInLine, Tuple2D anotherPointInLine)
line
- pointInLine
- anotherPointInLine
-
public static double smallerAngle(Tuple2D a, Tuple2D b)
a
- b
- public static Tuple2D[] normalizedOrder(Tuple2D a, Tuple2D b)
a
- b
-
public static Vertex2D[] normalizedOrder(Vertex2D a, Vertex2D b)
a
- b
-
public static Tuple2D normalizedNormal(Tuple2D normal)
normal
- public static Tuple2D normalizedNormal(Tuple2D normal, double precision)
public static boolean intersectSegment(Line2D line, Segment2D segment)
line
- segment
- public static boolean intersectSegment(HalfLine2D line, Segment2D segment)
line
- segment
- public static boolean isTriangle(Tuple2D a, Tuple2D b, Tuple2D c)
public static boolean equals(Tuple3D a, Tuple3D b)
public static boolean equalsSafe(Tuple3D a, Tuple3D b)
public static boolean equals(Tuple3D a, Tuple3D b, double precision)
public static boolean equalsSafe(Tuple3D a, Tuple3D b, double precision)
public static boolean sameWay(Tuple3D vector1, Tuple3D vector2)
vector1
- vector2
-
public static Tuple3D normalizedNormal(Tuple3D normal)
normal
- public static Tuple3D normalizedNormal(Tuple3D normal, double precision)
public static Tuple3D normalizedNormalTestZero(Tuple3D normal)
public static Tuple3D normalizedNormalTestZero(Tuple3D normal, double precision)
public static boolean equals(Plane3D a, Plane3D b)
public static boolean equals(Plane3D a, Plane3D b, double precision)
public static boolean vectorEquals(Tuple3D a, Tuple3D b)
public static boolean vectorEquals(Tuple3D a, Tuple3D b, double precision)
public static Tuple3D vector(Tuple3D a, Tuple3D b)
public static double distance(Tuple3D a, Tuple3D b)
public static double distance(Tuple3D a, Plane3D p)
public static double distanceSigned(Tuple3D a, Plane3D p)
public static Tuple3D inverse(double x, double y, double z)
public static Tuple3D inverse(Tuple3D a)
public static Tuple3D plus(double x, double y, double z, double amount)
public static Tuple3D plus(Tuple3D a, double amount)
public static Tuple3D plus(Tuple3D a, Tuple3D b)
public static double multiScalar(Tuple3D a, Tuple3D b)
public static Tuple3D multi(double x, double y, double z, double ratio)
public static Tuple3D multi(Tuple3D a, double ratio)
public static Tuple3D multi(Tuple3D a, double x, double y, double z)
public static Tuple3D multi(Tuple3D a, Tuple3D b)
public static double angle(Tuple3D a, Tuple3D b)
public static Tuple3D perpendicular2DYZ(Tuple3D v)
v
- public static Tuple3D rotateX(double x, double y, double z, double rad)
public static Tuple3D rotateX(Tuple3D a, double rad)
public static Tuple3D rotateY(double x, double y, double z, double rad)
public static Tuple3D rotateY(Tuple3D a, double rad)
public static Tuple3D rotateZ(double x, double y, double z, double rad)
public static Tuple3D rotateZ(Tuple3D a, double rad)
public static Tuple3D rotateYawPitchRoll(double x, double y, double z, double yawRad, double pitchRad, double rollRad)
public static Tuple3D rotateYawPitchRoll(Tuple3D a, double yawRad, double pitchRad, double rollRad)
public static Tuple3D rotateYawPitchRoll(Tuple3D a, Tuple3D yawPitchRollRad)
public static boolean isCollinear(Tuple2D a, Tuple2D b, Tuple2D c)
public static boolean isCollinear(Tuple2D a, Tuple2D b, Tuple2D c, double precision)
public static boolean isCollinear(Tuple3D a, Tuple3D b, Tuple3D c)
public static boolean isCollinear(Tuple3D a, Tuple3D b, Tuple3D c, double precision)
public static boolean inSegment(Segment2D s, Tuple2D point)
public static boolean inSegment(Segment2D s, Tuple2D point, double precision)
public static boolean inSegment(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Tuple2D point)
firstEndOfSegment
- secondEndOfSegment
- point
- public static boolean inSegment(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Tuple2D point, double precision)
firstEndOfSegment
- secondEndOfSegment
- point
- precision
- ... used in equals()public static boolean inSegment(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Line2D segmentLine, Tuple2D point)
firstEndOfSegment
- secondEndOfSegment
- segmentLine
- point
- public static boolean inSegment(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Line2D segmentLine, Tuple2D point, double precision)
firstEndOfSegment
- secondEndOfSegment
- segmentLine
- point
- precision
- ... used in equals()public static boolean inSegmentNotEnd(Segment2D s, Tuple2D point)
public static boolean inSegmentNotEnd(Segment2D s, Tuple2D point, double precision)
public static boolean inSegmentNotEnd(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Tuple2D point)
firstEndOfSegment
- secondEndOfSegment
- point
- public static boolean inSegmentNotEnd(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Tuple2D point, double precision)
public static boolean inSegmentNotEnd(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Line2D segmentLine, Tuple2D point)
public static boolean inSegmentNotEnd(Tuple2D firstEndOfSegment, Tuple2D secondEndOfSegment, Line2D segmentLine, Tuple2D point, double precision)
public static boolean inTriangle(Tuple2D point, Triangle2D triangle)
public static boolean inSegment(Segment3D s, Tuple3D point)
s
- point
- public static boolean inSegment(Segment3D s, Tuple3D point, double precision)
public static boolean inSegment(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Tuple3D point)
firstEndOfSegment
- secondEndOfSegment
- point
- public static boolean inSegment(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Tuple3D point, double precision)
firstEndOfSegment
- secondEndOfSegment
- point
- precision
- ... used in equals()public static boolean inSegment(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Line3D segmentLine, Tuple3D point)
firstEndOfSegment
- secondEndOfSegment
- segmentLine
- point
- public static boolean inSegment(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Line3D segmentLine, Tuple3D point, double precision)
firstEndOfSegment
- secondEndOfSegment
- segmentLine
- point
- precision
- ... used in equals()public static boolean inSegmentNotEnd(Segment3D s, Tuple3D point)
public static boolean inSegmentNotEnd(Segment3D s, Tuple3D point, double precision)
public static boolean inSegmentNotEnd(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Tuple3D point)
firstEndOfSegment
- secondEndOfSegment
- point
- public static boolean inSegmentNotEnd(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Tuple3D point, double precision)
public static boolean inSegmentNotEnd(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Line3D segmentLine, Tuple3D point)
public static boolean inSegmentNotEnd(Tuple3D firstEndOfSegment, Tuple3D secondEndOfSegment, Line3D segmentLine, Tuple3D point, double precision)
public static Tuple3D outsideVector(Triangle3D t, Segment3D s)
t
- s
- public static Tuple3D intersection(Line3D line1, Line3D line2)
line1
- line2
- public static boolean isTriangle(Tuple3D a, Tuple3D b, Tuple3D c)
public static boolean planeIntersect(Plane3D a, Plane3D b)
public static Line3D intersection(Plane3D a, Plane3D b)
a
- b
-
public static Tuple3D project(Tuple3D point, Line3D line)
point
- line
- public static Tuple3D project(Tuple3D point, Plane3D plane)
point
- plane
-
public static Tuple3D project(Tuple3D pointInPlane, Line3D lineInPlane, Plane3D plane)
pointInPlane
- plane
- lineInPlane
-
public static Tuple3D[] normalizedOrder(Tuple3D a, Tuple3D b)
a
- b
- public static Vertex3D[] normalizedOrder(Vertex3D a, Vertex3D b)
a
- b
- public static boolean sameSide(Tuple3D vertex1, Tuple3D vertex2, Plane3D plane)
public static double distance(Line3D line, Tuple3D point)
public static Tuple3D intersection(Plane3D plane, Line3D line)
plane
- line
- public static void main(java.lang.String[] args)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |