Version: 8.3.0
SMESH_MeshEditor.cxx File Reference
#include "SMESH_MeshEditor.hxx"
#include "SMDS_Downward.hxx"
#include "SMDS_EdgePosition.hxx"
#include "SMDS_FaceOfNodes.hxx"
#include "SMDS_FacePosition.hxx"
#include "SMDS_LinearEdge.hxx"
#include "SMDS_MeshGroup.hxx"
#include "SMDS_SetIterator.hxx"
#include "SMDS_SpacePosition.hxx"
#include "SMDS_VolumeTool.hxx"
#include "SMESHDS_Group.hxx"
#include "SMESHDS_Mesh.hxx"
#include "SMESH_Algo.hxx"
#include "SMESH_ControlsDef.hxx"
#include "SMESH_Group.hxx"
#include "SMESH_Mesh.hxx"
#include "SMESH_MeshAlgos.hxx"
#include "SMESH_MesherHelper.hxx"
#include "SMESH_OctreeNode.hxx"
#include "SMESH_subMesh.hxx"
#include <Basics_OCCTVersion.hxx>
#include "utilities.h"
#include "chrono.hxx"
#include <BRepAdaptor_Surface.hxx>
#include <BRepBuilderAPI_MakeEdge.hxx>
#include <BRepClass3d_SolidClassifier.hxx>
#include <BRep_Tool.hxx>
#include <ElCLib.hxx>
#include <Extrema_GenExtPS.hxx>
#include <Extrema_POnCurv.hxx>
#include <Extrema_POnSurf.hxx>
#include <Geom2d_Curve.hxx>
#include <GeomAdaptor_Surface.hxx>
#include <Geom_Curve.hxx>
#include <Geom_Surface.hxx>
#include <Precision.hxx>
#include <TColStd_ListOfInteger.hxx>
#include <TopAbs_State.hxx>
#include <TopExp.hxx>
#include <TopExp_Explorer.hxx>
#include <TopTools_ListIteratorOfListOfShape.hxx>
#include <TopTools_ListOfShape.hxx>
#include <TopTools_SequenceOfShape.hxx>
#include <TopoDS.hxx>
#include <TopoDS_Edge.hxx>
#include <TopoDS_Face.hxx>
#include <TopoDS_Solid.hxx>
#include <gp.hxx>
#include <gp_Ax1.hxx>
#include <gp_Dir.hxx>
#include <gp_Lin.hxx>
#include <gp_Pln.hxx>
#include <gp_Trsf.hxx>
#include <gp_Vec.hxx>
#include <gp_XY.hxx>
#include <gp_XYZ.hxx>
#include <cmath>
#include <map>
#include <set>
#include <numeric>
#include <limits>
#include <algorithm>
#include <sstream>
#include <boost/tuple/tuple.hpp>
#include <Standard_Failure.hxx>
#include <Standard_ErrorHandler.hxx>

Data Structures

class  LinkID_Gen
 
class  SortableElement
 

Macros

#define cast2Node(elem)   static_cast<const SMDS_MeshNode*>( elem )
 
#define THIS_METHOD   "SMESH_MeshEditor::GetHexaFacetsToSplit(): "
 
#define ControlFreeBorder   SMESH::Controls::FreeEdges::IsFreeEdge
 

Functions

static void shiftNodesQuadTria (vector< const SMDS_MeshNode * > &aNodes)
 
static int nbEdgeConnectivity (const SMDS_MeshNode *theNode)
 
static bool getNodesFromTwoTria (const SMDS_MeshElement *theTria1, const SMDS_MeshElement *theTria2, vector< const SMDS_MeshNode * > &N1, vector< const SMDS_MeshNode * > &N2)
 
static bool findTriangles (const SMDS_MeshNode *theNode1, const SMDS_MeshNode *theNode2, const SMDS_MeshElement *&theTria1, const SMDS_MeshElement *&theTria2)
 
bool getQuadrangleNodes (const SMDS_MeshNode *theQuadNodes[], const SMDS_MeshNode *theNode1, const SMDS_MeshNode *theNode2, const SMDS_MeshElement *tr1, const SMDS_MeshElement *tr2)
 
static double getBadRate (const SMDS_MeshElement *theElem, SMESH::Controls::NumericalFunctorPtr &theCrit)
 
double getAngle (const SMDS_MeshElement *tr1, const SMDS_MeshElement *tr2, const SMDS_MeshNode *n1, const SMDS_MeshNode *n2)
 
void laplacianSmooth (const SMDS_MeshNode *theNode, const Handle(Geom_Surface)&theSurface, map< const SMDS_MeshNode *, gp_XY * > &theUVMap)
 
void centroidalSmooth (const SMDS_MeshNode *theNode, const Handle(Geom_Surface)&theSurface, map< const SMDS_MeshNode *, gp_XY * > &theUVMap)
 
static bool getClosestUV (Extrema_GenExtPS &projector, const gp_Pnt &point, gp_XY &result)
 
static const SMDS_MeshElementfindAdjacentFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshElement *elem)
 
static const SMDS_MeshElementfindSegment (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2)
 

Macro Definition Documentation

#define ControlFreeBorder   SMESH::Controls::FreeEdges::IsFreeEdge
#define THIS_METHOD   "SMESH_MeshEditor::GetHexaFacetsToSplit(): "

Function Documentation

static const SMDS_MeshElement* findAdjacentFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshElement elem 
)
static
static bool findTriangles ( const SMDS_MeshNode theNode1,
const SMDS_MeshNode theNode2,
const SMDS_MeshElement *&  theTria1,
const SMDS_MeshElement *&  theTria2 
)
static
static double getBadRate ( const SMDS_MeshElement theElem,
SMESH::Controls::NumericalFunctorPtr theCrit 
)
static
static bool getClosestUV ( Extrema_GenExtPS &  projector,
const gp_Pnt &  point,
gp_XY &  result 
)
static
static bool getNodesFromTwoTria ( const SMDS_MeshElement theTria1,
const SMDS_MeshElement theTria2,
vector< const SMDS_MeshNode * > &  N1,
vector< const SMDS_MeshNode * > &  N2 
)
static
bool getQuadrangleNodes ( const SMDS_MeshNode theQuadNodes[],
const SMDS_MeshNode theNode1,
const SMDS_MeshNode theNode2,
const SMDS_MeshElement tr1,
const SMDS_MeshElement tr2 
)
void laplacianSmooth ( const SMDS_MeshNode theNode,
const Handle(Geom_Surface)&  theSurface,
map< const SMDS_MeshNode *, gp_XY * > &  theUVMap 
)
static int nbEdgeConnectivity ( const SMDS_MeshNode theNode)
static
static void shiftNodesQuadTria ( vector< const SMDS_MeshNode * > &  aNodes)
static

Referenced by getNodesFromTwoTria().