#ifndef SMESH_Pattern_HeaderFile
#define SMESH_Pattern_HeaderFile
+#include "SMESH_SMESH.hxx"
+
#include <vector>
#include <list>
#include <map>
// of 6 faces.
//
-class SMESH_Pattern {
+class SMESH_EXPORT SMESH_Pattern {
public:
SMESH_Pattern ();
bool Load (SMESH_Mesh* theMesh,
const TopoDS_Face& theFace,
- bool theProject);
+ bool theProject = false);
// Create a pattern from the mesh built on <theFace>.
// <theProject>==true makes override nodes positions
// on <theFace> computed by mesher
// Create nodes and elements in <theMesh> using nodes
// coordinates computed by either of Apply...() methods
-
+ // ----------
// Inquiries
+ // ----------
enum ErrorCode {
ERR_OK,
void DumpPoints() const;
// Debug
+ // -----------------------------
+ // Utilities for advanced usage
+ // -----------------------------
- private:
+ TopoDS_Shape GetSubShape( const int i ) const {
+ if ( i < 1 || i > myShapeIDMap.Extent() ) return TopoDS_Shape();
+ return myShapeIDMap( i );
+ }
+ // Return a shape from myShapeIDMap where shapes are indexed so that first go
+ // ordered vertices, then ordered edge, then faces and maybe a shell
+
+private:
// private methods
struct TPoint {