X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=idl%2FBLSURFPlugin_Algorithm.idl;h=113771d8eef1bbea54047ff9e0cbea10f5a328e3;hb=6063373ca22880b042a7a09aa30fd83fe2582130;hp=27b80df1c0031727e13640f90c129335190ab0d2;hpb=2e040d534d8a35f86a3a8a692dd6b02576e29c89;p=plugins%2Fblsurfplugin.git diff --git a/idl/BLSURFPlugin_Algorithm.idl b/idl/BLSURFPlugin_Algorithm.idl index 27b80df..113771d 100644 --- a/idl/BLSURFPlugin_Algorithm.idl +++ b/idl/BLSURFPlugin_Algorithm.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2019 CEA/DEN, EDF R&D +// Copyright (C) 2007-2023 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -26,9 +26,10 @@ #ifndef _SMESH_BLSURFALGORITHM_IDL_ #define _SMESH_BLSURFALGORITHM_IDL_ -#include "SMESH_Hypothesis.idl" #include "GEOM_Gen.idl" #include "SALOME_Exception.idl" +#include "SMESH_Hypothesis.idl" +#include "SMESH_Mesh.idl" /*! * BLSURFPlugin: interfaces to BLSURF related hypotheses and algorithms @@ -37,6 +38,14 @@ module BLSURFPlugin { typedef sequence string_array; + // Enforced 1D Mesh + struct MG_EnforcedMesh1D + { + SMESH::SMESH_IDSource mesh; // mesh, group or sub-mesh + string groupName; // optional name of a group to add mesh edges to + }; + typedef sequence< MG_EnforcedMesh1D > EnforcedMeshesList; + // Enforced vertex name typedef string TEnfName; // Entry @@ -44,12 +53,12 @@ module BLSURFPlugin typedef sequence TEntryList; // Group name typedef string TEnfGroupName; - + // Coordinates of enforced vertex typedef sequence TEnfVertexCoords; // List of coords typedef sequence TEnfVertexCoordsList; - + // Enforced vertex struct TEnfVertex { TEnfName name; @@ -121,8 +130,11 @@ module BLSURFPlugin typedef sequence TPeriodicityList; // Hyper-patches - typedef sequence THyperPatch; - typedef sequence THyperPatchList; + typedef sequence< long > THyperPatch; + typedef sequence< THyperPatch > THyperPatchList; + typedef sequence< string > THyperPatchEntries; + typedef sequence< THyperPatchEntries > THyperPatchEntriesList; + typedef sequence< GEOM::ListOfGO > THyperPatchShapesList; /*! * BLSURFPlugin_BLSURF: interface of BLSURF algorithm @@ -138,7 +150,13 @@ module BLSURFPlugin { /*! - * Sets a way to define size of mesh elements to generate + * Get version of MeshGems suite. + * The version is a string in form .-. Example: "2.9-6". + */ + string GetMeshGemsVersion(); + + /*! + *Set a way to define size of mesh elements to generate * 0 - size is defined automatically * 1 - size is set by SetPhySize() method * 2 - size is set by SetPhySize() method. A sizemap is defined. @@ -147,7 +165,7 @@ module BLSURFPlugin long GetPhysicalMesh(); /*! - * Sets a way to define maximum angular deflection of mesh from CAD model + *Set a way to define maximum angular deflection of mesh from CAD model * 0 - deflection is defined automatically * 1 - deflection is set by SetAngleMesh() method * 2 - deflection is set by SetAngleMesh() method. A sizemap is defined (TODO). @@ -156,7 +174,7 @@ module BLSURFPlugin long GetGeometricMesh(); /*! - * Sets size of mesh elements to generate + *Set size of mesh elements to generate */ void SetPhySize(in double size); void SetPhySizeRel(in double size); @@ -164,7 +182,7 @@ module BLSURFPlugin boolean IsPhySizeRel(); /*! - * Sets lower boundary of mesh element size + *Set lower boundary of mesh element size */ void SetMinSize(in double theMinSize); void SetMinSizeRel(in double theMinSize); @@ -172,7 +190,7 @@ module BLSURFPlugin boolean IsMinSizeRel(); /*! - * Sets upper boundary of mesh element size + *Set upper boundary of mesh element size */ void SetMaxSize(in double theMaxSize); void SetMaxSizeRel(in double theMaxSize); @@ -180,7 +198,7 @@ module BLSURFPlugin boolean IsMaxSizeRel(); /*! - * Sets maximal allowed ratio between the lengths of two adjacent edges + *Set maximal allowed ratio between the lengths of two adjacent edges */ void SetUseGradation(in boolean toUse); boolean GetUseGradation(); @@ -188,7 +206,7 @@ module BLSURFPlugin double GetGradation(); /*! - * Sets maximal allowed ratio between the lengths of two adjacent edges in 3D mesh + *Set maximal allowed ratio between the lengths of two adjacent edges in 3D mesh */ void SetUseVolumeGradation(in boolean toUse); boolean GetUseVolumeGradation(); @@ -196,20 +214,20 @@ module BLSURFPlugin double GetVolumeGradation(); /*! - * Sets to create quadrilateral elements or not + *Set to create quadrilateral elements or not */ void SetQuadAllowed(in boolean allowed); void SetElementType(in long elementType); long GetElementType(); /*! - * Sets angular deflection (in degrees) of a mesh face and edge from CAD surface + *Set angular deflection (in degrees) of a mesh face and edge from CAD surface */ void SetAngleMesh(in double angle); double GetAngleMesh(); /*! - * Sets the maximum desired distance between a triangle and its supporting CAD surface + *Set the maximum desired distance between a triangle and its supporting CAD surface */ void SetChordalError(in double distance); double GetChordalError(); @@ -274,7 +292,7 @@ module BLSURFPlugin double GetCorrectSurfaceIntersectionMaxCost(); /*! - * This patch independent correction option can be activated to remove the bad + * This patch independent correction option can be activated to remove the bad * elements (often called slivers) from the generated mesh, without taking into account * the tags (attributes) specification. */ @@ -283,7 +301,7 @@ module BLSURFPlugin /*! * This parameter defines the aspect ratio triggering the "bad element" - * classification for the force bad surface element removal option. + * classification for the force bad surface element removal option. */ void SetBadElementAspectRatio(in double ratio); double GetBadElementAspectRatio(); @@ -303,7 +321,7 @@ module BLSURFPlugin boolean GetQuadraticMesh(); /*! - * Sets topology usage way defining how mesh conformity is assured + *Set topology usage way defining how mesh conformity is assured * value=0 - mesh conformity is assured by conformity of a shape * value=1,2 - mesh conformity is assured by pre-processing a CAD model (OBSOLETE) * value=3 - mesh conformity is assured by pre-processing a CAD model with Pre-CAD @@ -311,12 +329,55 @@ module BLSURFPlugin void SetTopology(in long way); long GetTopology(); + + /*! + * Activate/deactivate surface proximity computation + */ + void SetSurfaceProximity( in boolean toUse ); + boolean GetSurfaceProximity(); + + /*! + * Set number of surface element layers to be generated due to surface proximity + */ + void SetNbSurfaceProximityLayers( in short nbLayers ); + short GetNbSurfaceProximityLayers(); + + /*! + * Set coefficient by which size of element refined due to surface proximity is increased + */ + void SetSurfaceProximityRatio( in double ratio ); + double GetSurfaceProximityRatio(); + /*! - * Sets verbosity level in the range 0 to 100. + * Activate/deactivate volume proximity computation + */ + void SetVolumeProximity( in boolean toUse ); + boolean GetVolumeProximity(); + + /*! + * Set number of surface element layers to be generated due to volume proximity + */ + void SetNbVolumeProximityLayers( in short nbLayers ); + short GetNbVolumeProximityLayers(); + + /*! + * Set coefficient by which size of element refined due to volume proximity is increased + */ + void SetVolumeProximityRatio( in double ratio ); + double GetVolumeProximityRatio(); + + /*! + * Set verbosity level in the range 0 to 10. */ void SetVerbosity(in short theVal) raises (SALOME::SALOME_Exception); short GetVerbosity(); + /*! + * Set/Get enforced 1D meshes + */ + void SetEnforcedMeshes( in EnforcedMeshesList enforcedMeshes ); + EnforcedMeshesList GetEnforcedMeshes(); + /*! * Set enforce_cad_edge_sizes parameter * @@ -457,7 +518,10 @@ module BLSURFPlugin * Set hyper-patches */ void SetHyperPatches(in THyperPatchList hpl); - THyperPatchList GetHyperPatches(); + THyperPatchList GetHyperPatches( in GEOM::GEOM_Object mainShape ); + void SetHyperPatchShapes(in THyperPatchShapesList hpsl); + THyperPatchEntriesList GetHyperPatchShapes(); + void SetHyperPatchEntries(in THyperPatchEntriesList hpel); /*! * To merges edges. @@ -485,7 +549,7 @@ module BLSURFPlugin boolean GetPreCADDiscardInput(); /*! - * Sets advanced option value + *Set advanced option value */ void SetOptionValue(in string optionName, in string optionValue) raises (SALOME::SALOME_Exception); @@ -672,7 +736,7 @@ module BLSURFPlugin /////////////////////// /*! - * Sets the file for export resulting mesh in GMF format + *Set the file for export resulting mesh in GMF format */ void SetGMFFile(in string theFileName); string GetGMFFile();