CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::MeshGenerator::BezierMesh< D0, D1 > Class Template Reference

A bezier patch with D0xD1 control points. More...

#include <CeresEngine/Mesh/Generator/BezierMesh.hpp>

Classes

struct  ArrayWrapper
 

Public Types

using Triangles = typename Impl::Triangles
 
using Vertices = typename Impl::Vertices
 

Public Member Functions

 BezierMesh (const Vector3(&p)[D1][D0], const Vector2i &segments={16, 16})
 
Triangles triangles () const noexcept
 
Vertices vertices () const noexcept
 

Private Types

using Impl = ParametricMesh
 

Private Member Functions

 BezierMesh (const ArrayWrapper &p, const Vector2i &segments)
 

Private Attributes

Impl mParametricMesh
 

Detailed Description

template<int D0, int D1>
class CeresEngine::MeshGenerator::BezierMesh< D0, D1 >

A bezier patch with D0xD1 control points.

Template Parameters
D0Number of control points along the t[0] axis. Must be > 1.
D1Number of control points along the t[1] axis. Must be > 1.

Member Typedef Documentation

◆ Impl

template<int D0, int D1>
using CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::Impl = ParametricMesh
private

◆ Triangles

◆ Vertices

Constructor & Destructor Documentation

◆ BezierMesh() [1/2]

template<int D0, int D1>
CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::BezierMesh ( const ArrayWrapper p,
const Vector2i &  segments 
)
inlineexplicitprivate

◆ BezierMesh() [2/2]

template<int D0, int D1>
CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::BezierMesh ( const Vector3(&)  p[D1][D0],
const Vector2i &  segments = {16, 16} 
)
inlineexplicit
Parameters
pControl points
segmentsNumber of subdivisions along each axis

Member Function Documentation

◆ triangles()

template<int D0, int D1>
Triangles CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::triangles ( ) const
inlinenoexcept

◆ vertices()

template<int D0, int D1>
Vertices CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::vertices ( ) const
inlinenoexcept

Member Data Documentation

◆ mParametricMesh

template<int D0, int D1>
Impl CeresEngine::MeshGenerator::BezierMesh< D0, D1 >::mParametricMesh
private

The documentation for this class was generated from the following file: