46 template < index_t DIMENSION >
47 std::unique_ptr< PointSetMeshBuilder< DIMENSION > >
54 template < index_t DIMENSION >
55 std::unique_ptr< LineMeshBuilder< DIMENSION > > create_line_mesh_builder(
62 template < index_t DIMENSION >
63 std::unique_ptr< SurfaceMeshBuilder< DIMENSION > >
70 template < index_t DIMENSION >
71 std::unique_ptr< VolumeMeshBuilder< DIMENSION > >
78 template < index_t DIMENSION >
79 std::unique_ptr< MeshBaseBuilder< DIMENSION > > create_pointset_builder(
85 return create_point_mesh_builder( *point_set );
92 return create_line_mesh_builder( *line );
100 return create_surface_mesh_builder( *surface );
111 std::unique_ptr< MeshBaseBuilder< 2 > >
114 auto builder = create_pointset_builder( mesh );
118 "Could not create mesh builder of data structure: ",
125 std::unique_ptr< MeshBaseBuilder< 3 > >
128 auto builder = create_pointset_builder( mesh );
134 builder = create_volume_mesh_builder( *volume );
140 "Could not create mesh builder of data structure: ",
146 template < index_t DIMENSION >
147 std::unique_ptr< PointSetMeshBuilder< DIMENSION > >
151 auto builder = create_point_mesh_builder( mesh );
155 "Could not create mesh builder of data structure: ",
161 template < index_t DIMENSION >
162 std::unique_ptr< LineMeshBuilder< DIMENSION > >
166 auto builder = create_line_mesh_builder( mesh );
170 "Could not create mesh builder of data structure: ",
176 template < index_t DIMENSION >
177 std::unique_ptr< SurfaceMeshBuilder< DIMENSION > >
181 auto builder = create_surface_mesh_builder( mesh );
185 "Could not create mesh builder of data structure: ",
191 template < index_t DIMENSION >
192 std::unique_ptr< VolumeMeshBuilder< DIMENSION > >
196 auto builder = create_volume_mesh_builder( mesh );
200 "Could not create mesh builder of data structure: ",
206 template std::unique_ptr< PointSetMeshBuilder< 2 > > RINGMESH_API
208 template std::unique_ptr< LineMeshBuilder< 2 > >
210 template std::unique_ptr< SurfaceMeshBuilder< 2 > > RINGMESH_API
213 template std::unique_ptr< PointSetMeshBuilder< 3 > > RINGMESH_API
215 template std::unique_ptr< LineMeshBuilder< 3 > >
217 template std::unique_ptr< SurfaceMeshBuilder< 3 > > RINGMESH_API
219 template std::unique_ptr< VolumeMeshBuilder< 3 > >
static std::unique_ptr< LineMeshBuilder > create_builder(LineMesh< DIMENSION > &mesh)
static std::unique_ptr< BaseClass > create(const Key &key, const Args &... args)
static std::unique_ptr< PointSetMeshBuilder< DIMENSION > > create_builder(PointSetMesh< DIMENSION > &mesh)
static void warn(const std::string &feature, const Args &... args)
static std::unique_ptr< VolumeMeshBuilder< DIMENSION > > create_builder(VolumeMesh< DIMENSION > &mesh)
static std::unique_ptr< MeshBaseBuilder< DIMENSION > > create_builder(MeshBase< DIMENSION > &mesh)
virtual MeshType type_name() const =0
encapsulate adimensional mesh functionalities in order to provide an API on which we base the RINGMes...
Classes to build GeoModel from various inputs.
static std::unique_ptr< SurfaceMeshBuilder< DIMENSION > > create_builder(SurfaceMesh< DIMENSION > &mesh)