40 #ifndef H_OGF_MESH_COMMANDS_MESH_GROB_SHAPES_COMMANDS_H
41 #define H_OGF_MESH_COMMANDS_MESH_GROB_SHAPES_COMMANDS_H
76 double x1=0,
double y1=0,
double z1=0,
77 double x2=1,
double y2=0,
double z2=0,
78 double x3=1,
double y3=1,
double z3=0,
79 double x4=0,
double y4=1,
double z4=0
87 double x1=0,
double y1=0,
double z1=0,
88 double x2=1,
double y2=1,
double z2=1
129 bool triangulate =
true
Base class for Commands related with a MeshGrob object.
Commands that create simple shapes.
MeshGrobShapesCommands()
MeshGrobShapesCommands constructor.
void create_cube(double x1=0, double y1=0, double z1=0, double x2=1, double y2=1, double z2=1)
Creates a new cube in the current mesh. \menu /Surface/Shapes.
~MeshGrobShapesCommands() override
MeshGrobShapesCommands destructor.
void create_sphere(index_t precision=4, double radius=1.0, const vec3 ¢er=vec3(0, 0, 0))
Creates a mesh that approximates a sphere.
void create_ngon(const vec3 ¢er=vec3(0, 0, 0), double R=1.0, index_t nb_edges=6, bool triangulate=true)
Creates a new ngon in the current mesh. \menu /Surface/Shapes.
void create_from_bounding_box(const GrobName &grob, index_t nb_split=0)
Creates a surfacic mesh from the bounding box of an object.
void create_cylinder(const vec3 ¢er=vec3(0, 0, 0), const vec3 &X_axis=vec3(0.25, 0, 0), const vec3 &Y_axis=vec3(0, 0.25, 0), const vec3 &Z_axis=vec3(0, 0, 1), index_t precision=10)
Creates a new cylinder in the current mesh. \menu /Surface/Shapes.
void create_icosahedron()
Creates a new icosahedron in the current mesh. \menu /Surface/Shapes.
A template class for strings that need to have a specific type in the GOM system.
Base class for Commands related with a MeshGrob object.
vecng< 3, Numeric::float64 > vec3
Represents points and vectors in 3d.
geo_index_t index_t
The type for storing and manipulating indices.
Global Graphite namespace.
Definitions common to all include files in the mesh library.