API Documentation
|
#include <Extruder.h>
Static Public Member Functions | |
static void | ExtrudeRealThickness (Geometry &linework, const Matrix< fltp08 > &transform=Matrix< fltp08 >(1.0)) |
static void | ExtrudePolylineAlongGeo (Geometry &linework, const Polyline< 3, fltp08 > &geo_line, const Matrix< fltp08 > &transform=Matrix< fltp08 >(1.0)) |
template<class t_type > | |
static void | Extrude (Buffer< Vector< 3, uint04 > > &indices, Buffer< Vertex< 3, t_type > > &vertices, const Polyline< 3, t_type > &shape_to_extrude, const Polyline< 3, t_type > &extrude_path, const Vector< 3, t_type > &plane_normal, bool is_path_closed, const Matrix< fltp08 > &transform=Matrix< fltp08 >(1.0)) |
Class: Extruder
Class containing static functions that define logic to extrude shapes along some given polyline
Author: Tyler Parke
|
inlinestatic |
Fn: void Extruder::Extrude(Geometry& mesh, const Buffer<std::pair<Polyline<3, t_type>, bool>>& shape_to_extrude , const Polyline<3, t_type>& extrude_path, const Vector<3, t_type>& plane_normal, bool is_path_closed) const
Given a linework geometry, extrudes a shape along the provided path to create a triangulated solid. Note that the winding of the final shape will be the same as the given shape to extrude. Reversing the vertices of this shape will reverse the winding order of the final solid. Note that passing a path which fully lies in plane whos normal is perpendicular to the given plane normal will result in undefined behavior
Author: Tyler Parke
Date: 2019-01-14
Parameters: mesh - The geometry which will store, in its solid index, the extruded shape. shape_to_extrude - The shape (Be it closed or not) to extrude. extrude_path - The path the shape will be extruded along. It is expected this path is simplified (no 2 neighbor vertices are the same) plane_normal - The 'up' dirrection used to relate the path with the given shape to extrude. Generally this vector is (0,0,1) is_path_closed - If the extrude path is closed (ie the last vertex in path should be connected to the
|
inlinestatic |
Fn: void Extruder::ExtrudeRealThickness(Geometry& mesh) const
Given a linework geometry, extrudes the given polyline along that linework
Author: Tyler Parke
Date: 2019-01-14
Parameters: linework - The linework whos geometrytype must be of type linework and will store the extrusion. Upon completion of this function, the Solid index channel of this object will be filled with
|
inlinestatic |
Fn: void Extruder::ExtrudeRealThickness(Geometry& geo) const
Given a linework geometry, extrudes a flat line alog the path in order to create a "ribbon" with a flat apperence and a thickness defined by geometryproperty Geometry::e_thickness
Author: Tyler Parke
Date: 2019-01-14
Parameters: linework - The linework whos geometrytype must be of type linework, and must have some valid > 0.0 real thickness. Upon completion of this function, the Solid index channel of this object will be filled with