Salome HOME
Update copyrights
[plugins/netgenplugin.git] / resources / NETGENPlugin.xml
index 3a7409f95c4feae0e5c25cb360bdd6e08937fc4f..5bb393e4b4030815a0604a214b9ab34788f5ce53 100644 (file)
 <?xml version='1.0' encoding='us-ascii'?>
 <!DOCTYPE meshers PUBLIC "" "desktop.dtd">
 
-<!--  GUI customization for MESH component  -->
-
 <meshers>
 
-<meshers-group name="NETGEN"
-               resources="NETGENPlugin"
-               server-lib="libNETGENEngine.so"
-               gui-lib="">
+<meshers-group name      ="NETGEN"
+               resources ="NETGENPlugin"
+               idl-module="NETGENPlugin"
+               server-lib="NETGENEngine"
+               gui-lib   ="NETGENPluginGUI">
+  <hypotheses>
+    <hypothesis type    ="NETGEN_Parameters"
+               label-id="NETGEN 3D Parameters"
+               icon-id ="mesh_hypo_netgen.png"
+               dim     ="3">
+      <python-wrap>
+        <accumulative-methods>
+          SetLocalSizeOnShape,
+          UnsetLocalSizeOnEntry
+        </accumulative-methods>
+      </python-wrap>
+    </hypothesis>
+
+    <hypothesis type    ="NETGEN_Parameters_2D"
+               label-id="NETGEN 2D Parameters"
+               icon-id ="mesh_hypo_netgen_2d.png"
+               dim     ="2">
+      <python-wrap>
+        <accumulative-methods>
+          SetLocalSizeOnShape,
+          UnsetLocalSizeOnEntry
+        </accumulative-methods>
+      </python-wrap>
+    </hypothesis>
+
+    <hypothesis type    ="NETGEN_Parameters_3D"
+               label-id="NETGEN 3D Parameters"
+               icon-id ="mesh_hypo_netgen.png"
+               dim     ="3">
+      <python-wrap>
+        <accumulative-methods>
+          SetLocalSizeOnShape,
+          UnsetLocalSizeOnEntry
+        </accumulative-methods>
+      </python-wrap>
+    </hypothesis>
+
+    <hypothesis type    ="NETGEN_Parameters_2D_ONLY"
+               label-id="NETGEN 2D Parameters"
+               icon-id ="mesh_hypo_netgen_2d.png"
+               dim     ="2">
+      <python-wrap>
+        <accumulative-methods>
+          SetLocalSizeOnShape,
+          UnsetLocalSizeOnEntry
+        </accumulative-methods>
+      </python-wrap>
+    </hypothesis>
+
+    <hypothesis type    ="NETGEN_RemesherParameters_2D"
+               label-id="NETGEN 2D Parameters"
+               icon-id ="mesh_hypo_netgen_2d.png"
+               dim     ="2"/>
+
+    <hypothesis type    ="NETGEN_SimpleParameters_2D"
+               label-id="NETGEN 2D Simple Parameters"
+               icon-id ="mesh_hypo_netgen_2d.png"
+               dim     ="2"/>
+
+    <hypothesis type    ="NETGEN_SimpleParameters_3D"
+               label-id="NETGEN 3D Simple Parameters"
+               icon-id ="mesh_hypo_netgen.png"
+               dim     ="3"/>
+  </hypotheses>
+
   <algorithms>
-    <algorithm type="NETGEN_3D"
-               label-id="Tetrahedron (Netgen)"
-               icon-id="mesh_algo_tetra.png"/>
+    <algorithm type     ="NETGEN_3D"
+               label-id ="NETGEN 3D"
+               icon-id  ="mesh_algo_tetra.png"
+               group-id ="1"
+               priority ="20"
+               hypos    ="MaxElementVolume,NETGEN_Parameters_3D"
+               opt-hypos="ViscousLayers"
+              need-geom="false"
+               input    ="TRIA,QUAD"
+               output   ="TETRA,PYRAMID"
+               dim      ="3">
+      <python-wrap>
+        <algo>NETGEN_3D=Tetrahedron()</algo>
+        <hypo>MaxElementVolume=MaxElementVolume(SetMaxElementVolume())</hypo>
+        <hypo>NETGEN_Parameters_3D=Parameters()</hypo>
+        <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetFaces(1),SetFaces(2),SetMethod())</hypo>
+      </python-wrap>
+    </algorithm>
+
+    <algorithm type     ="NETGEN_2D_ONLY"
+               label-id ="NETGEN 2D"
+               icon-id  ="mesh_algo_netgen_2d.png"
+               group-id ="1"
+               priority ="20"
+               hypos    ="LengthFromEdges,MaxElementArea,NETGEN_Parameters_2D_ONLY"
+               opt-hypos="QuadranglePreference,ViscousLayers2D"
+               input    ="EDGE"
+               output   ="TRIA,QUAD"
+               dim      ="2">
+       <python-wrap>
+        <algo>NETGEN_2D_ONLY=Triangle(algo=smeshBuilder.NETGEN_2D)</algo>
+        <hypo>LengthFromEdges=LengthFromEdges()</hypo>
+        <hypo>MaxElementArea=MaxElementArea(SetMaxElementArea())</hypo>
+        <hypo>NETGEN_Parameters_2D_ONLY=Parameters()</hypo>
+        <hypo>QuadranglePreference=SetQuadAllowed()</hypo>
+        <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
+      </python-wrap>
+    </algorithm>
+
+    <algorithm type             ="NETGEN_2D"
+               label-id         ="NETGEN 1D-2D"
+               icon-id          ="mesh_algo_netgen_2d.png"
+               group-id         ="1"
+               priority         ="10"
+               hypos            ="NETGEN_Parameters_2D, NETGEN_SimpleParameters_2D"
+               opt-hypos        ="ViscousLayers2D"
+               output           ="TRIA,QUAD"
+               dim              ="2"
+               support-submeshes="true">
+      <python-wrap>
+        <algo>NETGEN_2D=Triangle(algo=smeshBuilder.NETGEN_1D2D)</algo>
+        <hypo>NETGEN_Parameters_2D=Parameters()</hypo>
+        <hypo>NETGEN_SimpleParameters_2D=Parameters(smeshBuilder.SIMPLE)</hypo>
+        <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
+      </python-wrap>
+    </algorithm>
+
+    <algorithm type             ="NETGEN_2D3D"
+               label-id         ="NETGEN 1D-2D-3D"
+               icon-id          ="mesh_algo_netgen_2d3d.png"
+               group-id         ="1"
+               priority         ="10"
+               hypos            ="NETGEN_Parameters, NETGEN_SimpleParameters_3D"
+               opt-hypos        ="ViscousLayers"
+               output           ="TETRA,PYRAMID"
+               dim              ="3"
+               support-submeshes="true">
+      <python-wrap>
+        <algo>NETGEN_2D3D=Tetrahedron(algo=smeshBuilder.NETGEN_1D2D3D)</algo>
+        <hypo>NETGEN_Parameters=Parameters()</hypo>
+        <hypo>NETGEN_SimpleParameters_3D=Parameters(smeshBuilder.SIMPLE)</hypo>
+        <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetFaces(1),SetFaces(2),SetMethod())</hypo>
+      </python-wrap>
+    </algorithm>
+
+    <algorithm type      ="NETGEN_Remesher_2D"
+               label-id  ="NETGEN 2D"
+               icon-id   ="mesh_algo_netgen_2d.png"
+               opt-hypos ="NETGEN_RemesherParameters_2D"
+               output    ="TRIA,QUAD"
+               need-geom ="never"
+               dim       ="2">
+      <python-wrap>
+        <algo>NETGEN_Remesher_2D=Triangle(algo=smeshBuilder.NETGEN)</algo>
+        <hypo>NETGEN_RemesherParameters_2D=Parameters()</hypo>
+      </python-wrap>
+    </algorithm>
+
   </algorithms>
 </meshers-group>
 
+<hypotheses-set-group>
+
+    <hypotheses-set name ="Automatic Tetrahedralization"
+                    hypos="NETGEN_Parameters"
+                    algos="NETGEN_2D3D"/>
+
+    <hypotheses-set name ="Automatic Triangulation"
+                    hypos="NETGEN_Parameters_2D"
+                    algos="NETGEN_2D"/>
+
+</hypotheses-set-group>
+
 </meshers>