Programmer's Documentation

Public Member Functions | Private Member Functions | Private Attributes | List of all members
MeshSections Class Reference

Detailed Description

Compute slices through a triangular surface mesh.


#include <meshsections.h>

Collaboration diagram for MeshSections:

Public Member Functions

 MeshSections (const TriMesh &m)
 initialize section generator with mesh
uint findPolygons (const Plane &pln)
 find set of polygons
uint npolygons () const
 number of current polygons
Real area (const Plane &pln) const
 compute area of all polygons
void areaDistribution (Real alpha, int n, Matrix &xa)
 convenience function: area from n slices
void joinPolygons (Real tol=gmepsilon)
 join multiple open polygons if possible
const PointList< 3 > & polygon (int i) const
 access point set for polygon i
void addViz (MeshFields &mvz) const
 add polygons to visu
void writePlain (std::ostream &os) const
 write sections to plain text file

Private Member Functions

void triangleFromPlane (const Plane &pln)
 construct triangle from plane
bool fintersect (uint ti, Vct3 &ps, Vct3 &pt) const
 test for intersection
uint newPolygon (Indices &tix)
 start new polygon from scratch
uint nextTriangle (uint ti, Indices &tix, const Vct3 &plast, Vct3 &pnext) const
 find next triangle of candidates

Private Attributes

const TriMeshmsh
 reference to mesh
FaceTree ftree
 tree used to quickly find intersection candidates
BndBox bb
 bounding box of the complete mesh
Vct3 ptri [3]
 current triangle vertices
std::vector< PointList< 3 > > pgs
 polygons identified

The documentation for this class was generated from the following files:
Generated on Mon May 23 2022 03:03:17 for libsurf by   doxygen 1.8.5