1#ifndef TP_QUAD_MESH_BUILDER_H
2#define TP_QUAD_MESH_BUILDER_H
4#include "lf/mesh/mesh_factory.h"
5#include "structured_mesh_builder.h"
28 "TPQuadMeshBuilder can only construct meshes with DimWorld==2");
35 [[nodiscard]] std::shared_ptr<mesh::Mesh>
Build()
override;
49 static std::shared_ptr<spdlog::logger>&
Logger();
mesh::Mesh::size_type size_type
size_type num_of_x_cells_
std::unique_ptr< mesh::MeshFactory > mesh_factory_
Implements a Builder for a tensor product grid (with rectangular cells)
TPQuadMeshBuilder(std::unique_ptr< mesh::MeshFactory > mesh_factory)
Constructor: set factory object to be used by the builder.
std::shared_ptr< mesh::Mesh > Build() override
actual construction of the mesh
size_type VertexIndex(size_type i, size_type j) const
vertex index from grid position
static std::shared_ptr< spdlog::logger > & Logger()
is used by the Build() method to output additional information.
Contains helper functions and classes that all operate on the interface classes defined in lf::mesh.