Chi-Tech
meshcutting.h File Reference
#include "mesh/chi_mesh.h"
#include "mesh/Cell/cell.h"

Go to the source code of this file.

Data Structures

struct  chi_mesh::mesh_cutting::ECI
 

Namespaces

namespace  chi_mesh
 
namespace  chi_mesh::mesh_cutting
 

Typedefs

typedef std::pair< uint64_t, uint64_t > chi_mesh::mesh_cutting::Edge
 

Functions

Edge chi_mesh::mesh_cutting::MakeUniqueEdge (const Edge &edge)
 
Edge chi_mesh::mesh_cutting::MakeEdgeFromPolygonEdgeIndex (const std::vector< uint64_t > &vertex_ids, size_t edge_index)
 
chi_mesh::Vector3 chi_mesh::mesh_cutting::GetEdgeCentroid (const Edge &edge, const chi_mesh::MeshContinuum &grid)
 
void chi_mesh::mesh_cutting::PopulatePolygonFromVertices (const MeshContinuum &mesh, const std::vector< uint64_t > &vertex_ids, chi_mesh::Cell &cell)
 
bool chi_mesh::mesh_cutting::CheckPolygonQuality (const MeshContinuum &mesh, const chi_mesh::Cell &cell, bool check_convexity=false)
 
void chi_mesh::mesh_cutting::CutPolygon (const std::vector< ECI > &cut_edges, const std::set< uint64_t > &cut_vertices, const Vector3 &plane_point, const Vector3 &plane_normal, MeshContinuum &mesh, chi_mesh::Cell &cell)
 
bool chi_mesh::mesh_cutting::CheckPolyhedronQuality (const MeshContinuum &mesh, const chi_mesh::Cell &cell, bool check_convexity=false)
 
std::set< size_t > chi_mesh::mesh_cutting::FindNeighborFaceIndices (const std::vector< std::vector< uint64_t > > &proxy_faces, size_t face_index)
 
std::vector< Edge > chi_mesh::mesh_cutting::FindNonManifoldEdges (const std::vector< std::vector< uint64_t > > &proxy_faces)
 
std::vector< Edge > chi_mesh::mesh_cutting::StitchEdgesEndToEnd (const std::vector< Edge > &edges)
 
void chi_mesh::mesh_cutting::PopulatePolyhedronFromFaces (const MeshContinuum &mesh, const std::vector< std::vector< uint64_t > > &raw_faces, chi_mesh::Cell &cell)
 
void chi_mesh::mesh_cutting::Cut3DCell (const std::vector< ECI > &global_cut_edges, const std::set< uint64_t > &number, const Vector3 &plane_point, const Vector3 &plane_normal, double float_compare, MeshContinuum &mesh, chi_mesh::Cell &cell, bool verbose=false)
 
void chi_mesh::mesh_cutting::CutMeshWithPlane (MeshContinuum &mesh, const Vector3 &plane_point, const Vector3 &plane_normal, double merge_tolerance=1.0e-3, double float_compare=1.0e-10)