axis3d-extrude-geometry
Geometry extrusion for Axis3D.
This modules provides a class that accepts an array of 2D positions and extrudes that shape into 3D. It attempts to compute a simplicial complex from given parameters. Edges, cells, and path can also be provided, otherwise they are computed. This class leverages clean-pslg to remove duplicate vertices and edges from a planar straight line graph using iterated snap rounding. If cells are not given, this class uses Constrained Delaunay triangulation by way of cdt2d to compute them.
Usage
positions: positions
Installation
$ npm install axis3d axis3d-extrude-geometry
Example
const PerspectiveCamera = const ExtrudeGeometry = const Material = const Context = const Frame = const Mesh = const geometry = positions: 05 10 -05const material = ctxconst camera = ctxconst frame = ctxconst mesh = ctx geometry
API
ExtrudeGeometry(opts)
Extends the built-in Geometry
class in Axis3D.
opts
where opts
contains
positions
- An array of 2D vectors that form points in a polygonedges
- An array of 2D vectors of indices ([i, j]
) to compute complex cellscells
- An array of 3D vectors of indices to the complex positionspath
- An array of 3D ([x, y, z]
) or 4D ([x, y, z, r]
) vectors wherer
is the twist angle in radiansclosed
- Indicates a closed path. (Default:true
)
See Also
- https://github.com/mikolalysenko/clean-pslg
- https://github.com/substack/extrude-by-path
- https://github.com/hughsk/extrude-edges
- https://github.com/freeman-lab/extrude
- https://github.com/mikolalysenko/cdt2d
License
MIT