waLBerla 7.2
Loading...
Searching...
No Matches
TriangleMeshIO.cpp File Reference

Detailed Description

Implementation of IO functions for Mesh data structure in OBJ and POV format.

Author
Martin Bauer marti.nosp@m.n.ba.nosp@m.uer@f.nosp@m.au.d.nosp@m.e
#include "TriangleMesh.h"
#include "TriangleMeshComm.h"
#include "TriangleMeshIO.h"
#include "core/Abort.h"
#include "core/logging/Logging.h"
#include "core/math/AABB.h"
#include "core/mpi/Broadcast.h"
#include "core/Regex.h"
#include "core/StringUtility.h"
#include <algorithm>
#include <cmath>
#include <fstream>
#include <map>
#include <sstream>
#include <string>

Namespaces

namespace  walberla
 Storage for detected contacts which can be used to perform actions for all contacts, e.g.
 
namespace  walberla::geometry
 

Enumerations

enum  walberla::geometry::State { walberla::geometry::VERTEX , walberla::geometry::NORMAL , walberla::geometry::FACE }
 

Functions

void walberla::geometry::readMesh (const std::string &meshFilename, TriangleMesh &mesh)
 Reads mesh from file.
 
void walberla::geometry::writeMesh (const std::string &meshFilename, const TriangleMesh &mesh)
 writes a mesh to file
 
void walberla::geometry::readAndBroadcastMesh (const std::string &meshFilename, TriangleMesh &mesh)
 Reads mesh from file on root process and broadcasts it to all other processes.
 
void walberla::geometry::writeMeshOnRoot (const std::string &meshFilename, const TriangleMesh &mesh)
 writes a mesh to file on root process
 
void walberla::geometry::readFaceVertex (std::istream &is, TriangleMesh::index_t &vertexIdx, TriangleMesh::index_t &textureIdx, TriangleMesh::index_t &normalIdx)
 
void walberla::geometry::readMeshObj (std::istream &is, TriangleMesh &mesh)
 Reads mesh from input stream in obj file format.
 
void walberla::geometry::writeMeshObj (std::ostream &os, const TriangleMesh &mesh)
 Writes mesh to output stream in obj format.
 
void walberla::geometry::removeComments (std::istream &is, std::ostream &os)
 
void walberla::geometry::readMeshPov (std::istream &is, TriangleMesh &mesh, bool clear=true)
 Reads mesh from input stream in povray's mesh2 format.
 
void walberla::geometry::writeMeshPov0 (std::ostream &os, const TriangleMesh &mesh, const size_t itemsPerLine)
 
void walberla::geometry::writeMeshPov (std::ostream &os, const TriangleMesh &mesh, size_t itemsPerLine=5u, size_t itemsPerMesh=0u)
 Writes mesh in povray's mesh2 format.
 
static void walberla::geometry::skipComments (std::istream &is)
 
void walberla::geometry::readMeshOff (std::istream &is, TriangleMesh &mesh)
 Reads mesh from input stream in Geomview Object File Format.
 
void walberla::geometry::writeMeshOff (std::ostream &os, const TriangleMesh &mesh)
 Writes a mesh to an output stream in Geomview Object File Format.
 
void walberla::geometry::writeMeshVtp (std::ostream &os, const TriangleMesh &mesh)
 Writes a mesh to an output stream in VTK Poly Data format.