JavaCAD
Static Public Member Functions | Private Member Functions | Static Private Member Functions | Static Private Attributes | List of all members
eu.mihosoft.vrl.v3d.Extrude Class Reference
Collaboration diagram for eu.mihosoft.vrl.v3d.Extrude:
Collaboration graph
[legend]

Static Public Member Functions

static CSG polygons (Polygon polygon1, Number zDistance)
 
static CSG polygons (Polygon polygon1, Polygon polygon2)
 
static ArrayList< CSGpolygons (eu.mihosoft.vrl.v3d.Polygon polygon1, ArrayList< Transform > transforms)
 
static ArrayList< CSGpolygons (eu.mihosoft.vrl.v3d.Polygon polygon1, Transform... transformparts)
 
static CSG points (Vector3d dir, List< Vector3d > points)
 
static CSG points (Vector3d dir, Vector3d... points)
 
static List< Vector3dtoCCW (List< Vector3d > points)
 
static boolean isCCW (Polygon polygon)
 
static IExtrusion getExtrusionEngine ()
 
static void setExtrusionEngine (IExtrusion extrusionEngine)
 
static CSG byPath (List< List< Vector3d >> points, double height)
 
static CSG byPath (List< List< Vector3d >> points, double height, int resolution)
 
static ArrayList< TransformpathToTransforms (List< List< Vector3d >> points, int resolution)
 
static ArrayList< CSGmoveAlongProfile (CSG object, List< List< Vector3d >> points, int resolution)
 
static ArrayList< TransformbezierToTransforms (Vector3d controlA, Vector3d controlB, Vector3d endPoint, int iterations)
 
static ArrayList< TransformbezierToTransforms (List< Vector3d > parts, int iterations)
 
static ArrayList< TransformbezierToTransforms (BezierPath pathA, BezierPath pathB, int iterations, Vector3d controlA, Vector3d controlB)
 
static ArrayList< TransformbezierToTransforms (Vector3d start, Vector3d controlA, Vector3d controlB, Vector3d endPoint, int iterations)
 
static ArrayList< CSGrevolve (CSG slice, double radius, int numSlices)
 
static ArrayList< CSGrevolve (Polygon poly, int numSlices)
 
static ArrayList< CSGrevolve (Polygon poly, double radius, int numSlices)
 
static ArrayList< CSGrevolve (CSG slice, double radius, double archLen, int numSlices)
 
static ArrayList< CSGrevolve (CSG slice, double radius, double archLen, List< List< Vector3d >> points, int numSlices)
 
static ArrayList< CSGbezier (CSG slice, ArrayList< Double > controlA, ArrayList< Double > controlB, ArrayList< Double > endPoint, int numSlices)
 
static ArrayList< CSGbezier (ArrayList< CSG > s, ArrayList< Double > controlA, ArrayList< Double > controlB, ArrayList< Double > endPoint)
 
static ArrayList< CSGhull (ArrayList< CSG > s, ArrayList< Transform > p)
 
static ArrayList< CSGhull (CSG c, ArrayList< Transform > p)
 
static ArrayList< CSGlinear (ArrayList< CSG > s, ArrayList< Double > endPoint)
 
static ArrayList< CSGlinear (CSG s, ArrayList< Double > endPoint, int numSlices)
 
static ArrayList< CSGmove (ArrayList< CSG > slice, ArrayList< Transform > p)
 
static ArrayList< CSGmove (CSG slice, ArrayList< Transform > p)
 
static ArrayList< CSGmoveBezier (CSG slice, ArrayList< Double > controlA, ArrayList< Double > controlB, ArrayList< Double > endPoint, int numSlices)
 
static ArrayList< CSGmoveBezier (ArrayList< CSG > slice, ArrayList< Double > controlA, ArrayList< Double > controlB, ArrayList< Double > endPoint)
 
static ArrayList< CSGmoveBezier (CSG slice, BezierPath pathA, int numSlices)
 
static ArrayList< CSGmoveBezier (CSG slice, BezierPath pathA, BezierPath pathB, int iterations)
 
static Polygon toCCW (Polygon concave)
 

Private Member Functions

 Extrude ()
 
Transform toTransform ()
 

Static Private Member Functions

static double normalizedX (Vector3d v1, Vector3d v2)
 
static Vector3d fromDouble (ArrayList< Double > controlA)
 

Static Private Attributes

static IExtrusion extrusionEngine
 

Detailed Description

Extrudes concave and convex polygons.

Author
Michael Hoffer <info@.nosp@m.mich.nosp@m.aelho.nosp@m.ffer.nosp@m..de>

Definition at line 55 of file Extrude.java.

Constructor & Destructor Documentation

◆ Extrude()

eu.mihosoft.vrl.v3d.Extrude.Extrude ( )
private

Instantiates a new extrude.

Definition at line 126 of file Extrude.java.

Member Function Documentation

◆ bezier() [1/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.bezier ( ArrayList< CSG s,
ArrayList< Double >  controlA,
ArrayList< Double >  controlB,
ArrayList< Double >  endPoint 
)
static

Definition at line 642 of file Extrude.java.

References eu.mihosoft.vrl.v3d.ext.quickhull3d.HullUtil.hull(), and eu.mihosoft.vrl.v3d.Extrude.moveBezier().

Here is the call graph for this function:

◆ bezier() [2/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.bezier ( CSG  slice,
ArrayList< Double >  controlA,
ArrayList< Double >  controlB,
ArrayList< Double >  endPoint,
int  numSlices 
)
static

Definition at line 632 of file Extrude.java.

References eu.mihosoft.vrl.v3d.CSG.clone().

Referenced by eu.mihosoft.vrl.v3d.Extrude.linear().

Here is the call graph for this function:

◆ bezierToTransforms() [1/4]

static ArrayList<Transform> eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms ( BezierPath  pathA,
BezierPath  pathB,
int  iterations,
Vector3d  controlA,
Vector3d  controlB 
)
static

◆ bezierToTransforms() [2/4]

static ArrayList<Transform> eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms ( List< Vector3d parts,
int  iterations 
)
static

Definition at line 431 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms().

Here is the call graph for this function:

◆ bezierToTransforms() [3/4]

static ArrayList<Transform> eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms ( Vector3d  controlA,
Vector3d  controlB,
Vector3d  endPoint,
int  iterations 
)
static

◆ bezierToTransforms() [4/4]

static ArrayList<Transform> eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms ( Vector3d  start,
Vector3d  controlA,
Vector3d  controlB,
Vector3d  endPoint,
int  iterations 
)
static

◆ byPath() [1/2]

static CSG eu.mihosoft.vrl.v3d.Extrude.byPath ( List< List< Vector3d >>  points,
double  height 
)
static

Definition at line 340 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.points().

Here is the call graph for this function:

◆ byPath() [2/2]

static CSG eu.mihosoft.vrl.v3d.Extrude.byPath ( List< List< Vector3d >>  points,
double  height,
int  resolution 
)
static

Definition at line 346 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.pathToTransforms(), and eu.mihosoft.vrl.v3d.Extrude.points().

Here is the call graph for this function:

◆ fromDouble()

static Vector3d eu.mihosoft.vrl.v3d.Extrude.fromDouble ( ArrayList< Double >  controlA)
staticprivate

Definition at line 716 of file Extrude.java.

Referenced by eu.mihosoft.vrl.v3d.Extrude.moveBezier().

◆ getExtrusionEngine()

static IExtrusion eu.mihosoft.vrl.v3d.Extrude.getExtrusionEngine ( )
static

◆ hull() [1/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.hull ( ArrayList< CSG s,
ArrayList< Transform p 
)
static

Definition at line 657 of file Extrude.java.

References eu.mihosoft.vrl.v3d.ext.quickhull3d.HullUtil.hull(), and eu.mihosoft.vrl.v3d.Extrude.move().

Referenced by eu.mihosoft.vrl.v3d.Extrude.hull().

Here is the call graph for this function:

◆ hull() [2/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.hull ( CSG  c,
ArrayList< Transform p 
)
static

Definition at line 670 of file Extrude.java.

References eu.mihosoft.vrl.v3d.CSG.clone(), and eu.mihosoft.vrl.v3d.Extrude.hull().

Here is the call graph for this function:

◆ isCCW()

static boolean eu.mihosoft.vrl.v3d.Extrude.isCCW ( Polygon  polygon)
static

◆ linear() [1/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.linear ( ArrayList< CSG s,
ArrayList< Double >  endPoint 
)
static

Definition at line 678 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.bezier().

Here is the call graph for this function:

◆ linear() [2/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.linear ( CSG  s,
ArrayList< Double >  endPoint,
int  numSlices 
)
static

Definition at line 683 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.bezier().

Here is the call graph for this function:

◆ move() [1/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.move ( ArrayList< CSG slice,
ArrayList< Transform p 
)
static

Definition at line 689 of file Extrude.java.

References eu.mihosoft.vrl.v3d.CSG.move().

Referenced by eu.mihosoft.vrl.v3d.Extrude.hull(), eu.mihosoft.vrl.v3d.Extrude.moveAlongProfile(), and eu.mihosoft.vrl.v3d.Extrude.moveBezier().

Here is the call graph for this function:

◆ move() [2/2]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.move ( CSG  slice,
ArrayList< Transform p 
)
static

Definition at line 694 of file Extrude.java.

References eu.mihosoft.vrl.v3d.CSG.move().

Here is the call graph for this function:

◆ moveAlongProfile()

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.moveAlongProfile ( CSG  object,
List< List< Vector3d >>  points,
int  resolution 
)
static

Definition at line 414 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.move(), eu.mihosoft.vrl.v3d.Extrude.pathToTransforms(), and eu.mihosoft.vrl.v3d.Extrude.points().

Here is the call graph for this function:

◆ moveBezier() [1/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.moveBezier ( ArrayList< CSG slice,
ArrayList< Double >  controlA,
ArrayList< Double >  controlB,
ArrayList< Double >  endPoint 
)
static

Definition at line 706 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms(), eu.mihosoft.vrl.v3d.Extrude.fromDouble(), and eu.mihosoft.vrl.v3d.Extrude.move().

Here is the call graph for this function:

◆ moveBezier() [2/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.moveBezier ( CSG  slice,
ArrayList< Double >  controlA,
ArrayList< Double >  controlB,
ArrayList< Double >  endPoint,
int  numSlices 
)
static

◆ moveBezier() [3/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.moveBezier ( CSG  slice,
BezierPath  pathA,
BezierPath  pathB,
int  iterations 
)
static

Definition at line 730 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.bezierToTransforms(), and eu.mihosoft.vrl.v3d.Extrude.move().

Here is the call graph for this function:

◆ moveBezier() [4/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.moveBezier ( CSG  slice,
BezierPath  pathA,
int  numSlices 
)
static

◆ normalizedX()

static double eu.mihosoft.vrl.v3d.Extrude.normalizedX ( Vector3d  v1,
Vector3d  v2 
)
staticprivate

◆ pathToTransforms()

static ArrayList<Transform> eu.mihosoft.vrl.v3d.Extrude.pathToTransforms ( List< List< Vector3d >>  points,
int  resolution 
)
static

◆ points() [1/2]

static CSG eu.mihosoft.vrl.v3d.Extrude.points ( Vector3d  dir,
List< Vector3d points 
)
static

◆ points() [2/2]

static CSG eu.mihosoft.vrl.v3d.Extrude.points ( Vector3d  dir,
Vector3d...  points 
)
static

Extrudes the specified path (convex or concave polygon without holes or intersections, specified in CCW) into the specified direction.

Parameters
dirdirection
pointspath (convex or concave polygon without holes or intersections)
Returns
a CSG object that consists of the extruded polygon

Definition at line 213 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.points().

Here is the call graph for this function:

◆ polygons() [1/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.polygons ( eu.mihosoft.vrl.v3d.Polygon  polygon1,
ArrayList< Transform transforms 
)
static

Definition at line 174 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Polygon.fromPoints(), eu.mihosoft.vrl.v3d.Extrude.polygons(), and eu.mihosoft.vrl.v3d.Extrude.toCCW().

Here is the call graph for this function:

◆ polygons() [2/4]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.polygons ( eu.mihosoft.vrl.v3d.Polygon  polygon1,
Transform...  transformparts 
)
static

Definition at line 193 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.polygons().

Here is the call graph for this function:

◆ polygons() [3/4]

static CSG eu.mihosoft.vrl.v3d.Extrude.polygons ( Polygon  polygon1,
Number  zDistance 
)
static

Definition at line 130 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Polygon.transformed().

Referenced by eu.mihosoft.vrl.v3d.Extrude.polygons(), and eu.mihosoft.vrl.v3d.Extrude.revolve().

Here is the call graph for this function:

◆ polygons() [4/4]

static CSG eu.mihosoft.vrl.v3d.Extrude.polygons ( Polygon  polygon1,
Polygon  polygon2 
)
static

◆ revolve() [1/5]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.revolve ( CSG  slice,
double  radius,
double  archLen,
int  numSlices 
)
static

Definition at line 602 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.revolve().

Here is the call graph for this function:

◆ revolve() [2/5]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.revolve ( CSG  slice,
double  radius,
double  archLen,
List< List< Vector3d >>  points,
int  numSlices 
)
static

◆ revolve() [3/5]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.revolve ( CSG  slice,
double  radius,
int  numSlices 
)
static

◆ revolve() [4/5]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.revolve ( Polygon  poly,
double  radius,
int  numSlices 
)
static

◆ revolve() [5/5]

static ArrayList<CSG> eu.mihosoft.vrl.v3d.Extrude.revolve ( Polygon  poly,
int  numSlices 
)
static

Definition at line 579 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.revolve().

Here is the call graph for this function:

◆ setExtrusionEngine()

static void eu.mihosoft.vrl.v3d.Extrude.setExtrusionEngine ( IExtrusion  extrusionEngine)
static

Definition at line 336 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Extrude.extrusionEngine.

◆ toCCW() [1/2]

static List<Vector3d> eu.mihosoft.vrl.v3d.Extrude.toCCW ( List< Vector3d points)
static

To ccw.

Parameters
pointsthe points
Returns
the list

Definition at line 224 of file Extrude.java.

References eu.mihosoft.vrl.v3d.Polygon.fromPoints(), eu.mihosoft.vrl.v3d.Extrude.isCCW(), and eu.mihosoft.vrl.v3d.Extrude.points().

Referenced by eu.mihosoft.vrl.v3d.svg.SVGLoad.loadSingle(), and eu.mihosoft.vrl.v3d.Extrude.polygons().

Here is the call graph for this function:

◆ toCCW() [2/2]

static Polygon eu.mihosoft.vrl.v3d.Extrude.toCCW ( Polygon  concave)
static

◆ toTransform()

Transform eu.mihosoft.vrl.v3d.Extrude.toTransform ( )
private

Definition at line 443 of file Extrude.java.

Member Data Documentation

◆ extrusionEngine

IExtrusion eu.mihosoft.vrl.v3d.Extrude.extrusionEngine
staticprivate

The documentation for this class was generated from the following file: