diff --git a/utils/meshView/meshView.cpp b/utils/meshView/meshView.cpp new file mode 100644 index 0000000..0190c9e --- /dev/null +++ b/utils/meshView/meshView.cpp @@ -0,0 +1,28 @@ +#include "mfem.hpp" +#include +#include +#include + +#include "probe.h" +#include "meshIO.h" +#include "config.h" + +int main(int argv, char **argc) { + std::string CONFIG_FILENAME = std::string(getenv("MESON_SOURCE_ROOT")) + "/tests/testsConfig.yaml"; + Config& config = Config::getInstance(); + config.loadConfig(CONFIG_FILENAME); + // Read the mesh from the given mesh file + std::string meshFile = argc[1]; + MeshIO meshIO(meshFile); + mfem::Mesh& mesh = meshIO.GetMesh(); + mfem::H1_FECollection feCollection(1, mesh.SpaceDimension()); + mfem::FiniteElementSpace feSpace(&mesh, &feCollection); + mfem::GridFunction u(&feSpace); + mfem::FunctionCoefficient initCoeff ( + [&mesh](const mfem::Vector &x) { + return 1.0; + } + ); + u.ProjectCoefficient(initCoeff); + Probe::glVisView(u, mesh, meshFile); +} \ No newline at end of file diff --git a/utils/meshView/meson.build b/utils/meshView/meson.build new file mode 100644 index 0000000..5815967 --- /dev/null +++ b/utils/meshView/meson.build @@ -0,0 +1,8 @@ +sources = files('meshView.cpp') + +meshView_exe = executable( + 'meshView', + sources, + dependencies: [probe_dep, quill_dep, config_dep, mfem_dep, meshio_dep], + install_rpath: '@loader_path/../../src' # Ensure runtime library path resolves correctly +) \ No newline at end of file