![]() |
NDEVR
API Documentation
|
Logic for writing various basic shapes to a Geometry object. More...
Static Public Member Functions | |
| static void | Circle (Geometry &mesh, const Matrix< fltp08 > &trans=Matrix< fltp08 >(1), uint04 width_segments=128, fltp08 radius=1.0f, Angle< fltp08 > phi_start=Angle< fltp08 >(DEGREES, 0.0f), Angle< fltp08 > phi_length=Angle< fltp08 >(DEGREES, 360.0f), bool join=true) |
| Appends a circle (filled disc or arc) to the mesh. | |
| static void | Cone (Geometry &mesh, const Matrix< fltp08 > &trans=Matrix< fltp08 >(1), uint04 width_segments=44, fltp08 bottom_radius=1.0, fltp08 height=1.0, Angle< fltp08 > phi_start=Angle< fltp08 >(DEGREES, 0.0f), Angle< fltp08 > phi_length=Angle< fltp08 >(DEGREES, 360.0f), bool draw_bottom_circle=true) |
| Appends a cone to the mesh. | |
| static void | Cylinder (Geometry &mesh, const Matrix< fltp08 > &trans=Matrix< fltp08 >(1), uint04 width_segments=44, fltp08 top_radius=1.0f, fltp08 bottom_radius=1.0, fltp08 height=1.0, Angle< fltp08 > phi_start=Angle< fltp08 >(DEGREES, 0.0f), Angle< fltp08 > phi_length=Angle< fltp08 >(DEGREES, 360.0f), bool draw_top_circle=true, bool draw_bottom_circle=true) |
| Appends a cylinder to the mesh with configurable radii and caps. | |
| static void | Quad (Geometry &mesh, const Matrix< fltp08 > &trans, Vertex< 3, fltp08 > p1, Vertex< 3, fltp08 > p2, Vertex< 3, fltp08 > p3, Vertex< 3, fltp08 > p4) |
| Appends a quad (two-triangle face) defined by four vertices to the mesh. | |
| static void | Rectangle (Geometry &mesh, const Matrix< fltp08 > &trans=Matrix< fltp08 >(1), fltp08 top_length=2.0, fltp08 bottom_length=2.0, fltp08 left_length=2.0, fltp08 right_length=2.0, fltp08 vertical_skew=0.0, fltp08 horizontal_skew=0.0) |
| Appends a rectangle to the mesh with configurable edge lengths and skew. | |
| static void | RectangularPrism (Geometry &mesh, const Matrix< fltp08 > &trans=Matrix< fltp08 >(1)) |
| Appends a rectangular prism (box) to the mesh. | |
| static void | Sphere (Geometry &mesh, uint04 width_segments=44, uint04 height_segments=32, Angle< fltp08 > phi_start=Angle< fltp08 >(DEGREES, 0.0f), Angle< fltp08 > phi_length=Angle< fltp08 >(DEGREES, 360.0f), Angle< fltp08 > theta_start=Angle< fltp08 >(DEGREES, 0.0f), Angle< fltp08 > theta_length=Angle< fltp08 >(DEGREES, 180.0f)) |
| Appends a sphere to the mesh using longitude/latitude segmentation. | |
| static Geometry | StaticCircleOutline (Scene &parent) |
| Creates a reusable static circle outline Geometry within the given Scene. | |
| static Geometry | StaticLine (Scene &parent) |
| Creates a reusable static line Geometry within the given Scene. | |
| static Geometry | StaticRectangleFilled (Scene &parent) |
| Creates a reusable static filled rectangle Geometry within the given Scene. | |
| static Geometry | StaticRectangularPrismFilled (Scene &parent) |
| Creates a reusable static filled rectangular prism Geometry within the given Scene. | |
| static Geometry | StaticRectangularPrismOutline (Scene &parent) |
| Creates a reusable static rectangular prism outline Geometry within the given Scene. | |
| static void | ZippedRadialMesh (Geometry &mesh, const ZippedRadialMeshOptions &options) |
| Appends a radial mesh to the Geometry using the "zipped" construction pattern, where adjacent latitude rings share edges for efficient indexing. | |
| static void | ZippedTorus (Geometry &mesh, uint04 width_segments=44, uint04 height_segments=32) |
| Appends a torus to the mesh using the zipped radial mesh construction pattern. | |
Static Protected Member Functions | |
| static void | SetupStaticGeometry (Geometry &geo) |
| Configures a Geometry object with default settings for static (reusable) shapes. | |
Logic for writing various basic shapes to a Geometry object.
Shapes will be appended to the end of the geometry.
Definition at line 98 of file ShapeConstructors.h.
|
static |
Appends a circle (filled disc or arc) to the mesh.
| [in] | mesh | The Geometry to append the circle to. |
| [in] | trans | The transformation matrix applied to the circle. |
| [in] | width_segments | The number of segments around the circumference. |
| [in] | radius | The radius of the circle. |
| [in] | phi_start | The starting angle of the arc. |
| [in] | phi_length | The angular length of the arc. |
| [in] | join | Whether to connect the last segment back to the first. |
References DEGREES.
|
static |
Appends a cone to the mesh.
Equivalent to a cylinder with a zero top radius.
| [in] | mesh | The Geometry to append the cone to. |
| [in] | trans | The transformation matrix applied to the cone. |
| [in] | width_segments | The number of segments around the circumference. |
| [in] | bottom_radius | The radius of the base. |
| [in] | height | The height of the cone along its axis. |
| [in] | phi_start | The starting angle of the arc sweep. |
| [in] | phi_length | The angular length of the arc sweep. |
| [in] | draw_bottom_circle | Whether to draw the base disc. |
References DEGREES.
|
static |
Appends a cylinder to the mesh with configurable radii and caps.
| [in] | mesh | The Geometry to append the cylinder to. |
| [in] | trans | The transformation matrix applied to the cylinder. |
| [in] | width_segments | The number of segments around the circumference. |
| [in] | top_radius | The radius of the top cap. |
| [in] | bottom_radius | The radius of the bottom cap. |
| [in] | height | The height of the cylinder along its axis. |
| [in] | phi_start | The starting angle of the arc sweep. |
| [in] | phi_length | The angular length of the arc sweep. |
| [in] | draw_top_circle | Whether to draw the top cap disc. |
| [in] | draw_bottom_circle | Whether to draw the bottom cap disc. |
References DEGREES.
|
static |
Appends a quad (two-triangle face) defined by four vertices to the mesh.
| [in] | mesh | The Geometry to append the quad to. |
| [in] | trans | The transformation matrix applied to the quad vertices. |
| [in] | p1 | The first vertex of the quad. |
| [in] | p2 | The second vertex of the quad. |
| [in] | p3 | The third vertex of the quad. |
| [in] | p4 | The fourth vertex of the quad. |
|
static |
Appends a rectangle to the mesh with configurable edge lengths and skew.
| [in] | mesh | The Geometry to append the rectangle to. |
| [in] | trans | The transformation matrix applied to the rectangle. |
| [in] | top_length | The length of the top edge. |
| [in] | bottom_length | The length of the bottom edge. |
| [in] | left_length | The length of the left edge. |
| [in] | right_length | The length of the right edge. |
| [in] | vertical_skew | The vertical skew offset applied to the rectangle. |
| [in] | horizontal_skew | The horizontal skew offset applied to the rectangle. |
Referenced by ScenePaintEngine::resetExtraDepth().
|
static |
Appends a rectangular prism (box) to the mesh.
| [in] | mesh | The Geometry to append the rectangular prism to. |
| [in] | trans | The transformation matrix applied to the prism. |
|
staticprotected |
|
static |
Appends a sphere to the mesh using longitude/latitude segmentation.
| [in] | mesh | The Geometry to append the sphere to. |
| [in] | width_segments | The number of longitudinal (phi) segments. |
| [in] | height_segments | The number of latitudinal (theta) segments. |
| [in] | phi_start | The starting longitude angle. |
| [in] | phi_length | The angular sweep of longitude. |
| [in] | theta_start | The starting latitude angle. |
| [in] | theta_length | The angular sweep of latitude. |
References DEGREES.
|
static |
|
static |
Appends a torus to the mesh using the zipped radial mesh construction pattern.
| [in] | mesh | The Geometry to append the torus to. |
| [in] | width_segments | The number of segments around the tube cross-section. |
| [in] | height_segments | The number of segments around the torus ring. |