Class SurfaceFactory
Defined in File SurfaceFactory.h
Class Documentation
-
class SurfaceFactory
Factory class to generate different types of basic shapes.
Public Static Functions
-
static SurfaceMesh tetrahedron()
Generate tetrahedron.
-
static SurfaceMesh hexahedron()
Generate hexahedron.
-
static SurfaceMesh octahedron()
Generate octahedron.
-
static SurfaceMesh dodecahedron()
Generate dodecahedron.
-
static SurfaceMesh icosahedron()
Generate icosahedron.
-
static SurfaceMesh icosphere(size_t n_subdivisions = 3)
Generate icosphere refined by
n_subdivisions.Uses Loop subdivision to refine the initial icosahedron.
See also
-
static SurfaceMesh quad_sphere(size_t n_subdivisions = 3)
Generate quad sphere refined by
n_subdivisions.Uses Catmull-Clark subdivision to refine the initial hexahedron.
See also
-
static SurfaceMesh uv_sphere(const Point ¢er = Point(0, 0, 0), Scalar radius = 1.0, size_t n_slices = 15, size_t n_stacks = 15)
Generate UV sphere with given
center,radius,n_slices, andn_stacks.
-
static SurfaceMesh plane(size_t resolution = 4)
Generate a plane mesh.
Generates a pure quad mesh in the x-y plane with origin (0,0,0) and side length 1.
- Parameters:
resolution – Number of faces in each direction. Needs to be >= 1. Default: 4.
-
static SurfaceMesh cone(size_t n_subdivisions = 30, Scalar radius = 1.0, Scalar height = 2.5)
Generate a cone mesh.
Generates a polygonal mesh of a cone. The circular base lies in the x-y-plane and the tip points in positive z-direction.
- Parameters:
n_subdivisions – Number of subdivisions of the base circle. Needs to be >= 3. Default: 30.
radius – Radius of the base circle. Default: 1.
height – Height of the the cone. Default: 2.5.
-
static SurfaceMesh cylinder(size_t n_subdivisions = 30, Scalar radius = 1.0, Scalar height = 2.5)
Generate a cylinder mesh.
Generates a polygonal mesh of a cylinder. The cylinder is oriented in z-direction.
- Parameters:
n_subdivisions – Number of subdivisions of the cylinder. Needs to be >= 3. Default: 30.
radius – Radius of the cylinder. Default: 1.
height – Height of the cylinder. Default: 2.5.
-
static SurfaceMesh torus(size_t radial_resolution = 20, size_t tubular_resolution = 40, Scalar radius = 1.0, Scalar thickness = 0.4)
Generate a torus mesh.
Generates a quad mesh of a torus with its major circle in the x-y plane.
- Parameters:
radial_resolution – Number of subdivisions of the major circle. Needs to be >= 3. Default: 20.
tubular_resolution – Number of subdivisions of along the tube. Needs to be >= 3. Default: 40.
radius – Radius of the major circle. Default: 1.
thickness – Thickness of the tube. Default: 0.4.
-
static SurfaceMesh tetrahedron()