libsurf
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.

Deprecated:

#include <meshsections.h>

Collaboration diagram for MeshSections:
[legend]

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