-// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
-// This library is free software; you can redistribute it and/or
-// modify it under the terms of the GNU Lesser General Public
-// License as published by the Free Software Foundation; either
-// version 2.1 of the License.
-//
-// This library is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-// Lesser General Public License for more details.
-//
-// You should have received a copy of the GNU Lesser General Public
-// License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-//
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+// Copyright (C) 2007-2008 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
//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// File : SMESH_BasicHypothesis.idl
// Author : Paul RASCLE, EDF
-
+//
#ifndef _SMESH_BASICHYPOTHESIS_IDL_
#define _SMESH_BASICHYPOTHESIS_IDL_
#include "SMESH_Hypothesis.idl"
#include "SMESH_Mesh.idl"
-
/*!
* StdMeshers: interfaces to standard hypotheses and algorithms
*/
double GetPrecision();
};
+ /*!
+ * StdMeshers_MaxLength: interface of "Max length" hypothesis
+ */
+ interface StdMeshers_MaxLength : SMESH::SMESH_Hypothesis
+ {
+ /*!
+ * Sets <length> parameter value
+ */
+ void SetLength(in double length)
+ raises (SALOME::SALOME_Exception);
+ /*!
+ * Returns <length> parameter value
+ */
+ double GetLength();
+ /*!
+ * Returns true if preestemated length is defined
+ */
+ boolean HavePreestimatedLength();
+ /*!
+ * Returns preestemated length
+ */
+ double GetPreestimatedLength();
+ /*!
+ * Sets preestemated length
+ */
+ void SetPreestimatedLength(in double length);
+ /*!
+ * Sets boolean parameter enabling/desabling usage of length computed
+ * basing on size of bounding box of shape to mesh
+ */
+ void SetUsePreestimatedLength(in boolean toUse);
+ /*!
+ * Returns value of boolean parameter enabling/desabling usage of length computed
+ * basing on size of bounding box of shape to mesh
+ */
+ boolean GetUsePreestimatedLength();
+ };
+
/*!
* StdMeshers_AutomaticLength: interface of "Automatic length" hypothesis
*/
*/
long ConversionMode()
raises (SALOME::SALOME_Exception);
+
+ /*!
+ * Set list of edges to reverse
+ */
+ void SetReversedEdges( in SMESH::long_array list );
+
+ /*!
+ * Returns list of edges to reverse
+ */
+ SMESH::long_array GetReversedEdges();
+
+ /*!
+ * Set entry of the main object
+ */
+ void SetObjectEntry( in string entry );
+
+ /*!
+ * Get the entry of the main object
+ */
+ string GetObjectEntry();
};
/*!
{
/*!
* Sets <start segment length> or <end segment length> parameter value
+ * * OBSOLETE *. Avoid such a way of interface design
+ * * It is recommended to dedicate a method to each parameter.
*/
void SetLength(in double length, in boolean isStartLength)
raises (SALOME::SALOME_Exception);
+ /*!
+ * Sets <start segment length> parameter value
+ */
+ void SetStartLength(in double length)
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ * Sets <end segment length> parameter value
+ */
+ void SetEndLength(in double length)
+ raises (SALOME::SALOME_Exception);
+
/*!
* Returns <start segment length> or <end segment length> parameter value
*/
double GetLength(in boolean isStartLength);
+
+ /*!
+ * Set list of edges to reverse
+ */
+ void SetReversedEdges( in SMESH::long_array list );
+
+ /*!
+ * Returns list of edges to reverse
+ */
+ SMESH::long_array GetReversedEdges();
+
+ /*!
+ * Set entry of the main object
+ */
+ void SetObjectEntry( in string entry );
+
+ /*!
+ * Get the entry of the main object
+ */
+ string GetObjectEntry();
};
/*!
{
/*!
* Sets <start segment length> or <end segment length> parameter value
+ * * OBSOLETE *. Avoid such a way of interface design.
+ * * It is recommended to dedicate a method to each parameter.
*/
void SetLength(in double length, in boolean isStartLength)
raises (SALOME::SALOME_Exception);
+ /*!
+ * Sets <start segment length> parameter value
+ */
+ void SetStartLength(in double length)
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ * Sets <end segment length> parameter value
+ */
+ void SetEndLength(in double length)
+ raises (SALOME::SALOME_Exception);
+
/*!
* Returns <start segment length> or <end segment length> parameter value
*/
double GetLength(in boolean isStartLength);
+
+ /*!
+ * Set list of edges to reverse
+ */
+ void SetReversedEdges( in SMESH::long_array list );
+
+ /*!
+ * Returns list of edges to reverse
+ */
+ SMESH::long_array GetReversedEdges();
+
+ /*!
+ * Set entry of the main object
+ */
+ void SetObjectEntry( in string entry );
+
+ /*!
+ * Get the entry of the main object
+ */
+ string GetObjectEntry();
};
};
+ /*!
+ * StdMeshers_FixedPoints1D: interface of "Fixed points 1D" hypothesis
+ */
+ interface StdMeshers_FixedPoints1D : SMESH::SMESH_Hypothesis
+ {
+ /*!
+ * Sets some points on edge using parameter on curve from 0 to 1
+ * (additionally it is neecessary to check orientation of edges and
+ * create list of reversed edges if it is needed) and sets numbers
+ * of segments between given points (default values are equals 1)
+ */
+ void SetPoints(in SMESH::double_array listParams)
+ raises (SALOME::SALOME_Exception);
+ void SetNbSegments(in SMESH::long_array listNbSeg)
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ * Returns list of point's parameters
+ */
+ SMESH::double_array GetPoints();
+
+ /*!
+ * Returns list of numbers of segments
+ */
+ SMESH::long_array GetNbSegments();
+
+ /*!
+ * Set list of edges to reverse
+ */
+ void SetReversedEdges( in SMESH::long_array list );
+
+ /*!
+ * Returns list of edges to reverse
+ */
+ SMESH::long_array GetReversedEdges();
+
+ /*!
+ * Set entry of the main object
+ */
+ void SetObjectEntry( in string entry );
+
+ /*!
+ * Get the entry of the main object
+ */
+ string GetObjectEntry();
+ };
+
+
/*!
* StdMeshers_MaxElementVolume: interface of "Max. Hexahedron or Tetrahedron Volume" hypothesis
*/
{
};
+ /*!
+ * StdMeshers_TrianglePreference: interface of "TrianglePreference" hypothesis.
+ * This hypothesis is used by StdMeshers_Quadrangle_2D algorithm.
+ * Presence of this hypothesis forces construction of triangles in the refinement
+ * area if the number of nodes on opposite edges is not the same.
+ */
+ interface StdMeshers_TrianglePreference : SMESH::SMESH_Hypothesis
+ {
+ };
+
/*!
* StdMeshers_QuadraticMesh: interface of "QuadraticMesh" hypothesis.
* This is an auxiliary 1D hypothesis whose presence forces construction
};
+ /*!
+ * StdMeshers_NumberOfLayers2D: interface of "Nb. Layers" hypothesis.
+ * This hypothesis is used by "Radial quadrangle" algorithm.
+ * It specifies number of segments between the internal
+ * and the external surfaces.
+ */
+ interface StdMeshers_NumberOfLayers2D : StdMeshers_NumberOfLayers
+ {
+ };
+
+ /*!
+ * StdMeshers_LayerDistribution2D: interface of "Distribution of Layers" hypothesis.
+ * This hypothesis is used by "Radial quadrangle" algorithm.
+ * It specifies 1D hypothesis defining distribution of segments between the internal
+ * and the external surfaces.
+ */
+ interface StdMeshers_LayerDistribution2D : StdMeshers_LayerDistribution
+ {
+ };
+
/*!
* interface of "ProjectionSource1D" hypothesis.
* This hypothesis specifies a meshed edge to take a mesh pattern from
double GetLength();
};
+ /*!
+ * StdMeshers_QuadrangleParams: interface of "Quadrangle Params" hypothesis
+ */
+ interface StdMeshers_QuadrangleParams : SMESH::SMESH_Hypothesis
+ {
+ /*!
+ * Set base vertex for triangles
+ */
+ void SetTriaVertex( in long vertID );
+
+ /*!
+ * Returns base vertex for triangles
+ */
+ long GetTriaVertex();
+
+ /*!
+ * Set entry of the main object
+ */
+ void SetObjectEntry( in string entry );
+
+ /*!
+ * Get the entry of the main object
+ */
+ string GetObjectEntry();
+ };
+
/*!
* StdMeshers_SegmentAroundVertex_0D: interface of "SegmentAroundVertex" algorithm
*/
{
};
+ /*!
+ * StdMeshers_RadialQuadrangle_1D2D: interface of "Radial quadrangle" algorithm
+ */
+ interface StdMeshers_RadialQuadrangle_1D2D : SMESH::SMESH_2D_Algo
+ {
+ };
+
};
#endif