public class Plane
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
double |
dist
Distance to origin.
|
static double |
EPSILON
EPSILON is the tolerance used by
splitPolygon(eu.mihosoft.vrl.v3d.Polygon, java.util.List, java.util.List, java.util.List, java.util.List) to decide if a point is on the plane. |
static double |
EPSILON_duplicate |
static double |
EPSILON_Point |
Vector3d |
normal
Normal vector.
|
static Plane |
XY_PLANE
XY plane.
|
static Plane |
XZ_PLANE
XZ plane.
|
static Plane |
YZ_PLANE
YZ plane.
|
| Constructor and Description |
|---|
Plane(Vector3d normal,
double dist)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
Plane |
clone() |
static Plane |
createFromPoints(Vector3d a,
Vector3d b,
Vector3d c)
Creates a plane defined by the the specified points.
|
void |
flip()
Flips this plane.
|
static IPolygonDebugger |
getDebugger() |
static boolean |
isUseDebugger() |
static void |
setDebugger(IPolygonDebugger debugger) |
static void |
setUseDebugger(boolean useDebugger) |
void |
splitPolygon(Polygon polygon,
java.util.List<Polygon> coplanarFront,
java.util.List<Polygon> coplanarBack,
java.util.List<Polygon> front,
java.util.List<Polygon> back)
Splits a
Polygon by this plane if needed. |
public static final double EPSILON
splitPolygon(eu.mihosoft.vrl.v3d.Polygon, java.util.List, java.util.List, java.util.List, java.util.List) to decide if a point is on the plane.
public static final double EPSILON = 0.00000001;public static final double EPSILON_Point
public static final double EPSILON_duplicate
public static final Plane XY_PLANE
public static final Plane XZ_PLANE
public static final Plane YZ_PLANE
public Vector3d normal
public double dist
public Plane(Vector3d normal, double dist)
normal - plane normaldist - distance from originpublic static Plane createFromPoints(Vector3d a, Vector3d b, Vector3d c)
a - first pointb - second pointc - third pointpublic Plane clone()
clone in class java.lang.Objectpublic void flip()
public void splitPolygon(Polygon polygon, java.util.List<Polygon> coplanarFront, java.util.List<Polygon> coplanarBack, java.util.List<Polygon> front, java.util.List<Polygon> back)
Polygon by this plane if needed. After that it puts the
polygons or the polygon fragments in the appropriate lists
(front, back). Coplanar polygons go into either
coplanarFront, coplanarBack depending on their
orientation with respect to this plane. Polygons in front or back of this
plane go into either front or back.polygon - polygon to splitcoplanarFront - "coplanar front" polygonscoplanarBack - "coplanar back" polygonsfront - front polygonsback - back polgonspublic static IPolygonDebugger getDebugger()
public static void setDebugger(IPolygonDebugger debugger)
public static boolean isUseDebugger()
public static void setUseDebugger(boolean useDebugger)