-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
};
/*!
- * Common inteface of 1D hypotheses that can be reversed
+ * Common interface of 1D hypotheses that can be reversed
*/
interface Reversible1D
{
/*!
* Builds and returns point distribution according to passed density function
*/
- SMESH::double_array BuildDistributionExpr( in string func, in long nbSeg, in long conv )
+ SMESH::double_array BuildDistributionExpr( in string func, in long nbSeg, in long conv )
raises (SALOME::SALOME_Exception);
- SMESH::double_array BuildDistributionTab( in SMESH::double_array func, in long nbSeg, in long conv )
+ SMESH::double_array BuildDistributionTab( in SMESH::double_array func, in long nbSeg, in long conv )
raises (SALOME::SALOME_Exception);
/*!
* Sets <number of segments> parameter value
*/
- void SetNumberOfSegments(in long segmentsNumber)
+ void SetNumberOfSegments(in SMESH::smIdType segmentsNumber)
raises (SALOME::SALOME_Exception);
/*!
* Returns <number of segments> parameter value
*/
- long GetNumberOfSegments();
+ long GetNumberOfSegments();
/*!
* Sets <distribution type> parameter value
*/
- void SetDistrType(in long typ)
+ void SetDistrType(in long typ)
raises (SALOME::SALOME_Exception);
/*!
* Returns <distribution type> parameter value
*/
- long GetDistrType();
+ long GetDistrType();
/*!
* Sets <scale factor> parameter value
/*!
* Sets <conversion mode> parameter value for functional distributions
*/
- void SetConversionMode(in long conv )
+ void SetConversionMode(in long conv )
raises (SALOME::SALOME_Exception);
/*!
* Returns <conversion mode> parameter value for functional distributions
*/
- long ConversionMode()
+ long ConversionMode()
raises (SALOME::SALOME_Exception);
};
/*!
* Sets <mode> parameter value
*/
- void SetMode(in long mode)
+ void SetMode(in long mode)
raises (SALOME::SALOME_Exception);
/*!
* Returns <mode> parameter value
*/
- long GetMode();
+ long GetMode();
};
/*!
*/
void SetPoints(in SMESH::double_array listParams)
raises (SALOME::SALOME_Exception);
- void SetNbSegments(in SMESH::long_array listNbSeg)
+ void SetNbSegments(in SMESH::smIdType_array listNbSeg)
raises (SALOME::SALOME_Exception);
/*!
/*!
* Returns list of numbers of segments
*/
- SMESH::long_array GetNbSegments();
+ SMESH::smIdType_array GetNbSegments();
};
/*!
* Sets <number of segments> parameter value
*/
- void SetNumberOfLayers(in long numberOfLayers)
+ void SetNumberOfLayers(in long numberOfLayers)
raises (SALOME::SALOME_Exception);
/*!
* Returns <number of layers> parameter value
*/
- long GetNumberOfLayers();
+ long GetNumberOfLayers();
};
* Result may be nil if association not set.
* Valid indices are 1 and 2
*/
- GEOM::GEOM_Object GetSourceVertex(in long i)
+ GEOM::GEOM_Object GetSourceVertex(in long i)
raises (SALOME::SALOME_Exception);
/*!
* Result may be nil if association not set.
* Valid indices are 1 and 2
*/
- GEOM::GEOM_Object GetTargetVertex(in long i)
+ GEOM::GEOM_Object GetTargetVertex(in long i)
raises (SALOME::SALOME_Exception);
};
* Result may be nil if association not set.
* Valid indices are 1 and 2
*/
- GEOM::GEOM_Object GetSourceVertex(in long i)
+ GEOM::GEOM_Object GetSourceVertex(in long i)
raises (SALOME::SALOME_Exception);
/*!
* Result may be nil if association not set.
* Valid indices are 1 and 2
*/
- GEOM::GEOM_Object GetTargetVertex(in long i)
+ GEOM::GEOM_Object GetTargetVertex(in long i)
raises (SALOME::SALOME_Exception);
};
/*!
* Set base vertex for triangles
*/
- void SetTriaVertex( in long vertID );
+ void SetTriaVertex( in long vertID );
/*!
* Returns base vertex for triangles
*/
- long GetTriaVertex();
+ long GetTriaVertex();
/*!
* Set entry of the main object
* Returns entries of shapes defining enforced nodes
*/
SMESH::string_array GetEnfVertices();
+
+ /*!
+ * Set corner vertices
+ */
+ void SetCorners( in SMESH::long_array vertexIDs );
+
+ /*!
+ * Return IDs of corner vertices
+ */
+ SMESH::long_array GetCorners();
};
/*!
void SetMethod( in VLExtrusionMethod how );
VLExtrusionMethod GetMethod();
+
+ void SetGroupName(in string name);
+ string GetGroupName();
};
/*!
*/
void SetStretchFactor(in double factor) raises (SALOME::SALOME_Exception);
double GetStretchFactor();
+
+ void SetGroupName(in string name);
+ string GetGroupName();
};
/*!
* \param internalPoints - points dividing a grid into parts along an axis
* \param axis - index of an axis counterd from zero, i.e. 0==X, 1==Y, 2==Z
*
- * Parameter t of spaceFunction f(t) is a position [0,1] withing bounding box of
- * the shape to mesh or withing an interval defined by internal points
+ * Parameter t of spaceFunction f(t) is a position [0,1] within bounding box of
+ * the shape to mesh or within an interval defined by internal points
*/
void SetGridSpacing(in SMESH::string_array spaceFunctions,
in SMESH::double_array internalPoints,
boolean GetFixedPoint(out SMESH::PointStruct p);
/*!
- * Enables implementation of geometrical edges into the mesh. If this feature
+ * Enable implementation of geometrical edges into the mesh. If this feature
* is disabled, sharp edges of the shape are lost ("smoothed") in the mesh if
* they don't coincide with the grid lines
*/
boolean GetToAddEdges();
/*!
- * Returns axes at which a number of generated hexahedra is maximal
+ * Enable treatment of geom faces, either shared by solids or internal.
+ */
+ void SetToConsiderInternalFaces(in boolean toTreat);
+ boolean GetToConsiderInternalFaces();
+
+ /*!
+ * Enable applying size threshold to grid cells cut by internal geom faces.
+ */
+ void SetToUseThresholdForInternalFaces(in boolean toUse);
+ boolean GetToUseThresholdForInternalFaces();
+
+ /*!
+ * Enable creation of mesh faces.
+ */
+ void SetToCreateFaces(in boolean toCreate);
+ boolean GetToCreateFaces();
+
+ /*!
+ * Return axes at which a number of generated hexahedra is maximal
*/
void ComputeOptimalAxesDirs(in GEOM::GEOM_Object shape,
in boolean isOrthogonal,
out SMESH::DirStruct x,
out SMESH::DirStruct y,
- out SMESH::DirStruct z )
+ out SMESH::DirStruct z )
raises (SALOME::SALOME_Exception);
/*!
- * \brief Computes node coordinates by spacing functions
+ * \brief Compute node coordinates by spacing functions
* \param x0 - lower coordinate
* \param x1 - upper coordinate
* \param spaceFuns - space functions
raises (SALOME::SALOME_Exception);
};
+
+ /*!
+ * interface of "Renumber" hypothesis used by Hexahedron(ijk) algorithm
+ * to renumber mesh of a block to be structured-like
+ */
+ struct BlockCS // Local coordinate system of a block
+ {
+ GEOM::GEOM_Object solid;
+ GEOM::GEOM_Object vertex000;
+ GEOM::GEOM_Object vertex001;
+ };
+ typedef sequence<BlockCS> blockcs_array;
+
+ interface StdMeshers_BlockRenumber : SMESH::SMESH_Hypothesis
+ {
+ void SetBlocksOrientation( in blockcs_array blockCS );
+ blockcs_array GetBlocksOrientation();
+ };
+
/*!
* StdMeshers_SegmentAroundVertex_0D: interface of "SegmentAroundVertex" algorithm
*/
{
};
+ /*!
+ * StdMeshers_PolyhedronPerSolid_3D: interface of "Polyhedron Per Solid" 3D algorithm
+ */
+ interface StdMeshers_PolyhedronPerSolid_3D : SMESH::SMESH_3D_Algo
+ {
+ };
+
/*!
* StdMeshers_Hexa_3D: interface of "Hexahedron (i,j,k)" algorithm
*/