X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=idl%2FSMESH_BasicHypothesis.idl;h=565d189ef5d2ac11a65ab05a4bd95d13399043f0;hp=72d1b1a2d2817cd9e7cd4bc128332ffe3a182ff2;hb=d1bb1f5d44a2566316419a238a615bc4a69e7028;hpb=b0a908c0d20341651771d0249fb10882f54b2aad diff --git a/idl/SMESH_BasicHypothesis.idl b/idl/SMESH_BasicHypothesis.idl index 72d1b1a2d..565d189ef 100644 --- a/idl/SMESH_BasicHypothesis.idl +++ b/idl/SMESH_BasicHypothesis.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 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 @@ -857,11 +857,26 @@ module StdMeshers void GetCopySourceMesh(out boolean toCopyMesh,out boolean toCopyGroups); }; + /*! + * Method of computing translation of a node at Viscous Layers construction + */ + enum VLExtrusionMethod { + // node is translated along normal to a surface with possible further smoothing + SURF_OFFSET_SMOOTH, + // node is translated along the average normal of surrounding faces till + // intersection with a neighbor face translated along its own normal + // by the layers thickness + FACE_OFFSET, + // node is translated along the average normal of surrounding faces + // by the layers thickness + NODE_OFFSET + }; + /*! * interface of "Viscous Layers" hypothesis. * This hypothesis specifies parameters of layers of prisms to build * near mesh boundary. This hypothesis can be used by several 3D algorithms: - * NETGEN 3D, GHS3D, Hexahedron(i,j,k) + * NETGEN 3D, Hexahedron(i,j,k), MG_Tetra */ interface StdMeshers_ViscousLayers : SMESH::SMESH_Hypothesis { @@ -892,10 +907,13 @@ module StdMeshers short GetNumberLayers(); /*! - * Set factor (>1.0) of growth of layer thickness towards inside of mesh + * Set factor (>=1.0) of growth of layer thickness towards inside of mesh */ void SetStretchFactor(in double factor) raises (SALOME::SALOME_Exception); double GetStretchFactor(); + + void SetMethod( in VLExtrusionMethod how ); + VLExtrusionMethod GetMethod(); }; /*! @@ -933,7 +951,7 @@ module StdMeshers short GetNumberLayers(); /*! - * Set factor (>1.0) of growth of layer thickness towards inside of mesh + * Set factor (>=1.0) of growth of layer thickness towards inside of mesh */ void SetStretchFactor(in double factor) raises (SALOME::SALOME_Exception); double GetStretchFactor(); @@ -976,8 +994,8 @@ module StdMeshers * \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, @@ -1072,6 +1090,20 @@ module StdMeshers { }; + /*! + * StdMeshers_QuadFromMedialAxis_1D2D: interface of "Quadrangle (Medial Axis Projection)" algorithm + */ + interface StdMeshers_QuadFromMedialAxis_1D2D : SMESH::SMESH_2D_Algo + { + }; + + /*! + * StdMeshers_PolygonPerFace_2D: interface of "Polygon Per Face" 2D algorithm + */ + interface StdMeshers_PolygonPerFace_2D : SMESH::SMESH_2D_Algo + { + }; + /*! * StdMeshers_Hexa_3D: interface of "Hexahedron (i,j,k)" algorithm */