Tool analyzing and giving access to a prism geometry treating it like a block, i.e. the four side faces are emulated by division/uniting of missing/excess faces. It also manage associations between block sub-shapes and a mesh.
More...
|
void | Clear () |
| Free allocated memory. More...
|
|
SMESH_ComputeErrorPtr | GetError () const |
| Return problem description. More...
|
|
bool | GetLayersTransformation (std::vector< gp_Trsf > &trsf, const Prism_3D::TPrismTopo &prism) const |
| Return transformations to get coordinates of nodes of each internal layer by nodes of the bottom. Layer is a set of nodes at a certain step from bottom to top. More...
|
|
const TNodeColumn * | GetNodeColumn (const SMDS_MeshNode *node) const |
| Return pointer to column of nodes. More...
|
|
const TParam2ColumnMap * | GetParam2ColumnMap (const int baseEdgeID, bool &isReverse) const |
| Return TParam2ColumnMap for a base edge. More...
|
|
bool | HasNotQuadElemOnTop () const |
|
bool | Init (SMESH_MesherHelper *helper, const Prism_3D::TPrismTopo &prism) |
| Initialization. More...
|
|
SMESH_Mesh * | Mesh () const |
| Return pointer to mesh. More...
|
|
SMESHDS_Mesh * | MeshDS () const |
| Return pointer to mesh DS. More...
|
|
const TopoDS_Shape & | Shape (const int shapeID) const |
| Return a in-block shape. More...
|
|
int | ShapeID (const TopoDS_Shape &shape) const |
| Return in-block ID of a shape. More...
|
|
| StdMeshers_PrismAsBlock () |
| Constructor. Initialization is needed. More...
|
|
SMESH_subMesh * | SubMesh (const int shapeID) const |
| Return submesh of a shape. More...
|
|
SMESHDS_SubMesh * | SubMeshDS (const int shapeID) const |
| Return submesh DS of a shape. More...
|
|
int | VerticalSize () const |
| Return number of nodes on every vertical edge. More...
|
|
| ~StdMeshers_PrismAsBlock () |
|
bool | ComputeParameters (const gp_Pnt &thePoint, gp_XYZ &theParams, const int theShapeID=ID_Shell, const gp_XYZ &theParamsHint=gp_XYZ(-1,-1,-1)) |
|
Standard_Boolean | Derivatives (const math_Vector &X, math_Matrix &D) |
|
double | DistanceReached () const |
|
bool | EdgeParameters (const int theEdgeID, const double theU, gp_XYZ &theParams) |
|
bool | EdgePoint (const int theEdgeID, const gp_XYZ &theParams, gp_XYZ &thePoint) const |
|
bool | EdgeU (const int theEdgeID, const gp_XYZ &theParams, double &theU) const |
|
bool | FacePoint (const int theFaceID, const gp_XYZ &theParams, gp_XYZ &thePoint) const |
|
bool | FaceUV (const int theFaceID, const gp_XYZ &theParams, gp_XY &theUV) const |
|
Standard_Integer | GetStateNumber () |
|
double | GetTolerance () const |
|
bool | IsToleranceReached () const |
|
bool | LoadBlockShapes (const TopoDS_Shell &theShell, const TopoDS_Vertex &theVertex000, const TopoDS_Vertex &theVertex001, TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
|
bool | LoadBlockShapes (const TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
| Initialize block geometry with shapes from theShapeIDMap. More...
|
|
bool | LoadFace (const TopoDS_Face &theFace, const int theFaceID, const TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
| Load face geometry. More...
|
|
bool | LoadMeshBlock (const SMDS_MeshVolume *theVolume, const int theNode000Index, const int theNode001Index, std::vector< const SMDS_MeshNode * > &theOrderedNodes) |
|
Standard_Integer | NbEquations () const |
|
Standard_Integer | NbVariables () const |
|
void | SetTolerance (const double tol) |
|
bool | ShellPoint (const gp_XYZ &theParams, gp_XYZ &thePoint) const |
|
| SMESH_Block () |
|
Standard_Boolean | Value (const math_Vector &X, math_Vector &F) |
|
Standard_Boolean | Values (const math_Vector &X, math_Vector &F, math_Matrix &D) |
|
bool | VertexParameters (const int theVertexID, gp_XYZ &theParams) |
|
bool | VertexPoint (const int theVertexID, gp_XYZ &thePoint) const |
|
|
static bool | IsForwardEdge (SMESHDS_Mesh *meshDS, const TParam2ColumnMap &columnsMap, const TopoDS_Edge &bottomEdge, const int sideFaceID) |
| Check curve orientation of a bottom edge. More...
|
|
static std::ostream & | DumpShapeID (const int theBlockShapeID, std::ostream &stream) |
|
static bool | FindBlockShapes (const TopoDS_Shell &theShell, const TopoDS_Vertex &theVertex000, const TopoDS_Vertex &theVertex001, TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
|
static int | GetCoordIndOnEdge (const int theEdgeID) |
|
static void | GetEdgeVertexIDs (const int edgeID, std::vector< int > &vertexVec) |
|
static void | GetFaceEdgesIDs (const int faceID, std::vector< int > &edgeVec) |
|
static int | GetOrderedEdges (const TopoDS_Face &theFace, std::list< TopoDS_Edge > &theEdges, std::list< int > &theNbEdgesInWires, TopoDS_Vertex theFirstVertex=TopoDS_Vertex(), const bool theShapeAnalysisAlgo=false) |
| Return number of wires and a list of oredered edges. More...
|
|
static double * | GetShapeCoef (const int theShapeID) |
|
static int | GetShapeIDByParams (const gp_XYZ &theParams) |
|
static bool | Insert (const TopoDS_Shape &theShape, const int theShapeID, TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
| / Insert theShape into theShapeIDMap with theShapeID More...
|
|
static bool | IsEdgeID (int theShapeID) |
|
static bool | IsFaceID (int theShapeID) |
|
static bool | IsForwardEdge (const TopoDS_Edge &theEdge, const TopTools_IndexedMapOfOrientedShape &theShapeIDMap) |
|
static bool | IsVertexID (int theShapeID) |
|
static int | NbEdges () |
|
static int | NbFaces () |
|
static int | NbSubShapes () |
|
static int | NbVertices () |
|
static int | ShapeIndex (int theShapeID) |
|
static bool | ShellPoint (const gp_XYZ &theParams, const std::vector< gp_XYZ > &thePointOnShape, gp_XYZ &thePoint) |
|
|
enum | TShapeID {
ID_NONE = 0
, ID_V000 = 1
, ID_V100
, ID_V010
,
ID_V110
, ID_V001
, ID_V101
, ID_V011
,
ID_V111
, ID_Ex00
, ID_Ex10
, ID_Ex01
,
ID_Ex11
, ID_E0y0
, ID_E1y0
, ID_E0y1
,
ID_E1y1
, ID_E00z
, ID_E10z
, ID_E01z
,
ID_E11z
, ID_Fxy0
, ID_Fxy1
, ID_Fx0z
,
ID_Fx1z
, ID_F0yz
, ID_F1yz
, ID_Shell
,
ID_FirstV = ID_V000
, ID_FirstE = ID_Ex00
, ID_FirstF = ID_Fxy0
} |
|
enum | { SQUARE_DIST = 0
, DRV_1
, DRV_2
, DRV_3
} |
|
typedef std::pair< gp_XYZ, gp_XYZ > | TxyzPair |
|
bool | computeParameters (const gp_Pnt &thePoint, gp_XYZ &theParams, const gp_XYZ &theParamsHint, int) |
|
double | distance () const |
|
bool | findUVAround (const gp_Pnt &thePoint, const gp_XY &theUV, const TFace &tface, gp_XYZ &theParams, int nbGetWorstLimit) |
| Finds parameters corresponding to a given UV of a given face by searching around the starting solution. More...
|
|
bool | findUVByHalfDivision (const gp_Pnt &thePoint, const gp_XY &theUV, const TFace &tface, gp_XYZ &theParams) |
| Finds parameters corresponding to a given UV of a given face using half-division. More...
|
|
double | funcValue (double sqDist) const |
|
void | init () |
| Call it after geometry initialisation. More...
|
|
void | refineParametersOnFace (const gp_Pnt &thePoint, gp_XYZ &theParams, int theFaceID) |
| Find more precise solution. More...
|
|
bool | saveBetterSolution (const gp_XYZ &theNewParams, gp_XYZ &theParams, double sqDistance) |
| Store a solution if it's better than a previous one. More...
|
|
TxyzPair | my3x3x3GridNodes [1000] |
|
TEdge | myEdge [12] |
|
TFace | myFace [6] |
|
int | myFaceIndex |
|
double | myFaceParam |
|
bool | myGridComputed |
|
int | myNbIterations |
|
gp_XYZ | myParam |
|
gp_XYZ | myPnt [8] |
|
gp_XYZ | myPoint |
|
bool | mySquareFunc |
|
double | mySumDist |
|
double | myTolerance |
|
double | myValues [4] |
|
Tool analyzing and giving access to a prism geometry treating it like a block, i.e. the four side faces are emulated by division/uniting of missing/excess faces. It also manage associations between block sub-shapes and a mesh.