public class OutlineExtractor
extends java.lang.Object
polyhedrons sets
outlines.
This class extracts the 2D outlines from {polyhedrons sets
in a specified projection plane.
Modifier and Type | Class and Description |
---|---|
private class |
OutlineExtractor.BoundaryProjector
Visitor projecting the boundary facets on a plane.
|
Modifier and Type | Field and Description |
---|---|
private Vector3D |
u
Abscissa axis of the projection plane.
|
private Vector3D |
v
Ordinate axis of the projection plane.
|
private Vector3D |
w
Normal of the projection plane (viewing direction).
|
Constructor and Description |
---|
OutlineExtractor(Vector3D u,
Vector3D v)
Build an extractor for a specific projection plane.
|
Modifier and Type | Method and Description |
---|---|
Vector2D[][] |
getOutline(PolyhedronsSet polyhedronsSet)
Extract the outline of a polyhedrons set.
|
private boolean |
pointIsBetween(Vector2D[] loop,
int n,
int i)
Check if a point is geometrically between its neighbor in an array.
|
private Vector3D u
private Vector3D v
private Vector3D w
public Vector2D[][] getOutline(PolyhedronsSet polyhedronsSet)
polyhedronsSet
- polyhedrons set whose outline must be extractedprivate boolean pointIsBetween(Vector2D[] loop, int n, int i)
The neighbors are computed considering the array is a loop (i.e. point at index (n-1) is before point at index 0)
loop
- points arrayn
- number of points to consider in the arrayi
- index of the point to check (must be between 0 and n-1)Copyright (c) 2003-2014 Apache Software Foundation