-// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// 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
// 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
-//
-//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// File : SMESH_Mesh.idl
// Author : Paul RASCLE, EDF
// $Header$
-
+//
#ifndef _SMESH_MESH_IDL_
#define _SMESH_MESH_IDL_
CHANGE_ELEMENT_NODES,
CHANGE_POLYHEDRON_NODES,
RENUMBER,
+ CLEAR_MESH,
ADD_QUADEDGE,
ADD_QUADTRIANGLE,
ADD_QUADQUADRANGLE,
double vy;
double vz; } ;
+ /*!
+ * Node location on a shape
+ */
+ struct NodePosition {
+ long shapeID;
+ GEOM::shape_type shapeType;
+ double_array params; // [U] on EDGE, [U,V] on FACE, [] on the rest shapes
+ };
/*!
* Enumeration for element type, like in SMDS
HYP_ALREADY_EXIST,// such hypothesis already exist
HYP_BAD_DIM, // bad dimension
HYP_BAD_SUBSHAPE, // shape is neither the main one, nor its subshape, nor a group
- HYP_BAD_GEOMETRY // geometry mismatches algorithm's expectation
+ HYP_BAD_GEOMETRY, // geometry mismatches algorithm's expectation
+ HYP_NEED_SHAPE // algorithm can work on shape only
};
/*!
const long EXTRUSION_FLAG_BOUNDARY = 1;
const long EXTRUSION_FLAG_SEW = 2;
+ /*!
+ * Structure used in mesh edit preview data (MeshPreviewStruct)
+ */
+ struct ElementSubType { ElementType SMDS_ElementType;
+ boolean isPoly;
+ long nbNodesInElement; };
+
+ typedef sequence<ElementSubType> types_array;
+
+ /*!
+ * Structure containing mesh edit preview data
+ */
+ struct MeshPreviewStruct { nodes_array nodesXYZ;
+ long_array elementConnectivities;
+ types_array elementTypes; };
+
interface SMESH_IDSource
{
/*!
GEOM::GEOM_Object GetShapeToMesh()
raises (SALOME::SALOME_Exception);
+ /*!
+ * Remove all nodes and elements
+ */
+ void Clear()
+ raises (SALOME::SALOME_Exception);
/*!
* Get the subMesh object associated to a subShape. The subMesh object
ListOfGroups GetGroups()
raises (SALOME::SALOME_Exception);
+ /*!
+ * Get number of groups existing in the mesh
+ */
+ long NbGroups()
+ raises (SALOME::SALOME_Exception);
+
/*!
* Union of two groups
* New group is created. All mesh elements that are
void ClearLog()
raises (SALOME::SALOME_Exception);
+ /*!
+ * Toggle auto color mode on the object.
+ * @params
+ * - theAutoColor : flag which toggles auto color mode.
+ */
+ void SetAutoColor(in boolean theAutoColor)
+ raises (SALOME::SALOME_Exception);
+
+ /*!
+ * Get flag of object's auto color mode.
+ */
+ boolean GetAutoColor()
+ raises (SALOME::SALOME_Exception);
+
/*!
* Get the internal Id
*/
void ExportMED( in string file, in boolean auto_groups )
raises (SALOME::SALOME_Exception);
+ /*!
+ * Return string representation of a MED file version comprising nbDigits
+ */
+ string GetVersionString(in MED_VERSION version, in short nbDigits);
+
/*!
* Export Mesh to DAT, UNV and STL Formats
* (UNV supported version is I-DEAS 10)
*/
long_array GetNodeInverseElements(in long id);
+ /*!
+ * \brief Return position of a node on shape
+ */
+ NodePosition GetNodePosition(in long NodeID);
+
/*!
* If given element is node returns IDs of shape from position
* If there is not node for given ID - returns -1
*/
double_array BaryCenter(in long id);
+ /*! Gets information about imported MED file */
+ SALOME_MED::MedFileInfo GetMEDFileInfo();
};
interface SMESH_subMesh : SALOME::GenericObj, SMESH_IDSource