|
|
| Bezier (const BezierPatchType type) |
| |
|
void | addControlPoint (const Vertex &point) |
| |
|
void | setControlPoints (const std::vector< Vertex > &points) |
| |
|
const std::vector< Vertex > & | getControlPoints () const |
| |
| void | buildMesh (const BuildMeshInfo ¶ms, BezierMeshType &result) |
| | Build a mesh Bezier surface (using De Casteljau's algorithm)
|
| |
|
template<util::CurveValueConcept T> |
| T | calculateDerivateU (std::span< const T > control_points, const float u, const float v) |
| | Calculate derivative point of the bezier patch along the u coordinate.
|
| |
|
template<util::CurveValueConcept T> |
| T | calculateDerivateV (std::span< const T > control_points, const float u, const float v) |
| | Calculate derivative point of the bezier patch along the u coordinate.
|
| |
|
template<typename T > |
| T | calculatePatch (const std::vector< T > &control_points, const float u, const float v) |
| | Calculate point of the bezier patch along the u and v coordinates.
|
| |
|
constexpr AABB | getPrimitiveBoundingBox (size_t primitive) const noexcept |
| | Generate bounding box for the specified primitive.
|
| |
| template<typename F > |
| constexpr AABB | getPrimitiveBoundingBox (size_t primitive, F &&predicate) const noexcept |
| | Generate bounding box for the specified primitive containing vertices matching a predicate.
|
| |
|
constexpr AABB | getBoundingBox () const noexcept |
| | Generate englobing mesh bounding box.
|
| |
|
constexpr void | flipFaces () |
| |
|
constexpr const std::vector< glm::uvec3 > | getTriangles () const |
| | Get groups of 3 indices that form triangles.
|
| |
|
constexpr void | generateNormals () |
| | Generate mesh normals from vertices positions.
|
| |
|
constexpr void | generateTangents () |
| | Compute Tangents using mikkTSpace.
|
| |