1#ifndef STRUCTURED_MESH_BUILDER_H
2#define STRUCTURED_MESH_BUILDER_H
4#include "lf/mesh/mesh_factory.h"
25 std::unique_ptr<mesh::MeshFactory> mesh_factory)
29 "TPTriagMeshBuilder can only construct meshes with DimMesh==2");
36 template <
typename VECTOR>
45 template <
typename VECTOR>
73 virtual std::shared_ptr<mesh::Mesh>
Build() = 0;
lf::base::size_type size_type
mesh::Mesh::size_type size_type
Eigen::Vector2d bottom_left_corner_
StructuredMeshBuilder & setTopRightCorner(const VECTOR &&trc)
Eigen::Vector2d top_right_corner_
size_type num_of_x_cells_
StructuredMeshBuilder & setTopRightCorner(double x0, double x1)
virtual std::shared_ptr< mesh::Mesh > Build()=0
Interface for the actual construction of the mesh.
StructuredMeshBuilder & setBottomLeftCorner(const VECTOR &blc)
StructuredMeshBuilder & setNumXCells(size_type nxc)
StructuredMeshBuilder & setBottomLeftCorner(double x0, double x1)
size_type num_of_y_cells_
StructuredMeshBuilder(std::unique_ptr< mesh::MeshFactory > mesh_factory)
StructuredMeshBuilder & setNumYCells(size_type nyc)
std::unique_ptr< mesh::MeshFactory > mesh_factory_
Contains helper functions and classes that all operate on the interface classes defined in lf::mesh.