Loading [MathJax]/extensions/MathZoom.js
OGS
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
VTK2OGS.cpp File Reference

Detailed Description

Converts VTK mesh into OGS mesh.

Author
Norihiro Watanabe
Date
Aug 07, 2013

Definition in file VTK2OGS.cpp.

#include <tclap/CmdLine.h>
#include <string>
#include "BaseLib/MPI.h"
#include "InfoLib/GitInfo.h"
#include "MeshLib/IO/Legacy/MeshIO.h"
#include "MeshLib/IO/VtkIO/VtuInterface.h"
#include "MeshLib/Mesh.h"
Include dependency graph for VTK2OGS.cpp:

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int argc,
char * argv[] )

Definition at line 25 of file VTK2OGS.cpp.

26{
27 TCLAP::CmdLine cmd(
28 "Converts VTK mesh into OGS mesh.\n\n"
29 "OpenGeoSys-6 software, version " +
31 ".\n"
32 "Copyright (c) 2012-2025, OpenGeoSys Community "
33 "(http://www.opengeosys.org)",
35 TCLAP::ValueArg<std::string> mesh_in(
36 "i", "mesh-input-file",
37 "the name of the file containing the input mesh", true, "",
38 "file name of input mesh");
39 cmd.add(mesh_in);
40 TCLAP::ValueArg<std::string> mesh_out(
41 "o", "mesh-output-file",
42 "the name of the file the mesh will be written to", true, "",
43 "file name of output mesh");
44 cmd.add(mesh_out);
45 cmd.parse(argc, argv);
46
47 BaseLib::MPI::Setup mpi_setup(argc, argv);
48
49 MeshLib::Mesh* mesh(
50 MeshLib::IO::VtuInterface::readVTUFile(mesh_in.getValue()));
51 INFO("Mesh read: {:d} nodes, {:d} elements.", mesh->getNumberOfNodes(),
52 mesh->getNumberOfElements());
53
55 meshIO.setMesh(mesh);
56 BaseLib::IO::writeStringToFile(meshIO.writeToString(), mesh_out.getValue());
57
58 return EXIT_SUCCESS;
59}
void INFO(fmt::format_string< Args... > fmt, Args &&... args)
Definition Logging.h:35
std::string writeToString()
Writes the object to a string.
Definition Writer.cpp:31
Interface for handling mesh files from OGS-5 and below. (*.msh files)
Definition MeshIO.h:37
void setMesh(const MeshLib::Mesh *mesh)
Set mesh for writing.
Definition MeshIO.cpp:437
static MeshLib::Mesh * readVTUFile(std::string const &file_name, bool const compute_element_neighbors=false)
int writeStringToFile(std::string_view content, std::filesystem::path const &file_path)
Definition Writer.cpp:45
GITINFOLIB_EXPORT const std::string ogs_version

References MeshLib::Mesh::getNumberOfElements(), MeshLib::Mesh::getNumberOfNodes(), INFO(), GitInfoLib::GitInfo::ogs_version, MeshLib::IO::VtuInterface::readVTUFile(), MeshLib::IO::Legacy::MeshIO::setMesh(), BaseLib::IO::writeStringToFile(), and BaseLib::IO::Writer::writeToString().