Salome HOME
IMP 23373: [CEA 1170] Optimization of a 3D mesh using MG-Tetra
[modules/smesh.git] / resources / StdMeshers.xml.in
1 <?xml version='1.0' encoding='us-ascii'?>
2 <!DOCTYPE meshers PUBLIC "" "desktop.dtd">
3 <!--
4   Copyright (C) 2007-2016  CEA/DEN, EDF R&D, OPEN CASCADE
5
6   Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
7   CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
8
9   This library is free software; you can redistribute it and/or
10   modify it under the terms of the GNU Lesser General Public
11   License as published by the Free Software Foundation; either
12   version 2.1 of the License, or (at your option) any later version.
13
14   This library is distributed in the hope that it will be useful,
15   but WITHOUT ANY WARRANTY; without even the implied warranty of
16   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17   Lesser General Public License for more details.
18
19   You should have received a copy of the GNU Lesser General Public
20   License along with this library; if not, write to the Free Software
21   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
22
23   See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
24
25 -->
26
27 <!--  GUI customization for MESH component  -->
28
29 <!-- Attributes of hypotheses/algorithms:
30
31      type - string identifier of a hyp.
32      label-id - hypothesis type name in Create Mesh dialog.
33      icon-id - not used.
34      group-id - (optional) integer ID of a group the hyp belongs to in Create Mesh dialog;
35                 by default the hyp is in the last group.
36      priority - (optional) priority within the group; by default the hyp is last in group.
37      dim - dimension; defines a tab page in Create Mesh dialog.
38      context - (optional) allowed context: [LOCAL, GLOBAL, ANY(default)]. LOCAL - the hyp 
39                can be only local (on sub-mesh). GLOBAL - the hyp can be only GLOBAL (on mesh).
40      auxiliary - (optional) Boolean. Is additional hyp or not. Default is "false".
41      hypos - list of types of compatible hyps of the algorithm.
42      opt-hypos = (optional) list of types of compatible ADDITIONAL hyps of the algorithm.
43      output - geometry of elements generated by the algo. Used to define compatible algos of
44               different dimensions. Compatible algos have equal geometries in "input" and "output".
45      input - geometry of elements accepted by algorithm input. Used to define compatible algos of
46              different dimensions. Compatible algos have equal geometries in "input" and "output".
47      need-hyp - (optional) Boolean. Does the algo require a hypothesis or not. Default is "false".
48      need-geom - (optional) [true, fasle, never]. Can the algo work w/o geometry or not.
49              Default is "true" "never" means that the algo can't work with geometry.
50      support-submeshes - (optional) Boolean. Does an multi-dimensional algo support sub-meshes.
51                          Default is "false".
52      
53   -->
54
55 <meshers>
56
57 <meshers-group name      ="Standard Meshers"
58                resources ="StdMeshers"
59                idl-module="StdMeshers"
60                server-lib="StdMeshersEngine"
61                gui-lib   ="StdMeshersGUI">
62   <hypotheses>
63
64     <hypothesis type     ="SegmentLengthAroundVertex"
65                 label-id ="Length Near Vertex"
66                 icon-id  ="mesh_hypo_length.png"
67                 dim      ="0"/>
68
69     <hypothesis type     ="LocalLength"
70                 label-id ="Local Length"
71                 icon-id  ="mesh_hypo_length.png"
72                 group-id ="0"
73                 priority ="20"
74                 dim      ="1"/>
75
76     <hypothesis type     ="MaxLength"
77                 label-id ="Max Size"
78                 icon-id  ="mesh_hypo_length.png"
79                 group-id ="2"
80                 priority ="50"
81                 dim      ="1"/>
82
83     <hypothesis type     ="Arithmetic1D"
84                 label-id ="Arithmetic Progression"
85                 icon-id  ="mesh_hypo_length.png"
86                 group-id ="1"
87                 priority ="10"
88                 dim      ="1"/>
89
90     <hypothesis type     ="GeometricProgression"
91                 label-id ="Geometric Progression"
92                 icon-id  ="mesh_hypo_length.png"
93                 group-id ="1"
94                 priority ="20"
95                 dim      ="1"/>
96
97     <hypothesis type     ="FixedPoints1D"
98                 label-id ="Fixed Points"
99                 icon-id  ="mesh_hypo_length.png"
100                 group-id ="2"
101                 priority ="10"
102                 dim      ="1"/>
103
104     <hypothesis type     ="StartEndLength"
105                 label-id ="Start and End Length"
106                 icon-id  ="mesh_hypo_length.png"
107                 group-id ="1"
108                 priority ="30"
109                 dim      ="1"/>
110
111     <hypothesis type     ="NumberOfSegments"
112                 label-id ="Number of Segments"
113                 icon-id  ="mesh_hypo_segment.png"
114                 group-id ="0"
115                 priority ="10"
116                 dim      ="1"/>
117
118     <hypothesis type     ="Deflection1D"
119                 label-id ="Deflection"
120                 icon-id  ="mesh_hypo_length.png"
121                 group-id ="2"
122                 priority ="20"
123                 dim      ="1"/>
124
125     <hypothesis type     ="Adaptive1D"
126                 label-id ="Adaptive"
127                 icon-id  ="mesh_hypo_length.png"
128                 group-id ="2"
129                 priority ="30"
130                 dim      ="1"/>
131
132     <hypothesis type     ="Propagation"
133                 label-id ="Propagation of 1D Hyp. on Opposite Edges"
134                 icon-id  ="mesh_hypo_length.png"
135                 dim      ="1"
136                 context  ="LOCAL"
137                 auxiliary="true"/>
138
139     <hypothesis type     ="PropagOfDistribution"
140                 label-id ="Propagation of Node Distribution on Opposite Edges"
141                 icon-id  ="mesh_hypo_length.png"
142                 dim      ="1"
143                 context  ="LOCAL"
144                 auxiliary="true"/>
145
146     <hypothesis type     ="AutomaticLength"
147                 label-id ="Automatic Length"
148                 icon-id  ="mesh_hypo_length.png"
149                 group-id ="2"
150                 priority ="40"
151                 dim      ="1"/>
152
153     <hypothesis type     ="LengthFromEdges"
154                 label-id ="Length From Edges"
155                 icon-id  ="mesh_hypo_length.png"
156                 dim      ="2"/>
157
158     <hypothesis type     ="QuadranglePreference"
159                 label-id ="Quadrangle Preference"
160                 icon-id  ="mesh_algo_quad.png"
161                 auxiliary="true"
162                 dim      ="2"/>
163
164     <hypothesis type     ="QuadraticMesh"
165                 label-id ="Quadratic Mesh"
166                 icon-id  ="mesh_algo_quad.png"
167                 dim      ="1"
168                 context  ="GLOBAL"
169                 auxiliary="true"/>                
170
171     <hypothesis type     ="MaxElementArea"
172                 label-id ="Max. Element Area"
173                 icon-id  ="mesh_hypo_area.png"
174                 dim      ="2"/>
175                 
176     <hypothesis type     ="NotConformAllowed"
177                 label-id ="Not Conform Mesh Allowed"
178                 icon-id  ="mesh_hypo_length.png"
179                 dim      ="1,2,3"
180                 context  ="GLOBAL"
181                 auxiliary="true"/>                
182
183     <hypothesis type     ="MaxElementVolume"
184                 label-id ="Max. Element Volume"
185                 icon-id  ="mesh_hypo_volume.png"
186                 dim      ="3"/>
187
188     <hypothesis type     ="ProjectionSource3D"
189                 label-id ="Source Shape 3D"
190                 icon-id  ="mesh_hypo_volume.png"
191                 dim      ="3"/>
192
193     <hypothesis type     ="ProjectionSource2D"
194                 label-id ="Source Face"
195                 icon-id  ="mesh_hypo_area.png"
196                 dim      ="2"/>
197
198     <hypothesis type     ="ProjectionSource1D"
199                 label-id ="Source Edge"
200                 icon-id  ="mesh_hypo_length.png"
201                 dim      ="1"/>
202
203     <hypothesis type     ="ImportSource2D"
204                 label-id ="Source Faces"
205                 icon-id  ="mesh_hypo_area.png"
206                 dim      ="2"/>
207
208     <hypothesis type     ="ImportSource1D"
209                 label-id ="Source Edges"
210                 icon-id  ="mesh_hypo_length.png"
211                 dim      ="1"/>
212
213     <hypothesis type     ="NumberOfLayers"
214                 label-id ="Number of Layers"
215                 icon-id  ="mesh_hypo_length.png"
216                 dim      ="3"/>
217
218     <hypothesis type     ="LayerDistribution"
219                 label-id ="Distribution of Layers"
220                 icon-id  ="mesh_hypo_length.png"
221                 dim      ="3"/>
222
223     <hypothesis type     ="ViscousLayers2D"
224                 label-id ="Viscous Layers 2D"
225                 icon-id  ="mesh_algo_quad.png"
226                 auxiliary="true"
227                 dim      ="2"/>
228
229     <hypothesis type     ="ViscousLayers"
230                 label-id ="Viscous Layers"
231                 icon-id  ="mesh_algo_quad.png"
232                 auxiliary="true"
233                 dim      ="3"/>
234
235     <hypothesis type     ="NumberOfLayers2D"
236                 label-id ="Number of Layers"
237                 icon-id  ="mesh_hypo_length.png"
238                 dim      ="2"/>
239
240     <hypothesis type     ="LayerDistribution2D"
241                 label-id ="Distribution of Layers"
242                 icon-id  ="mesh_hypo_length.png"
243                 dim      ="2"/>
244
245     <hypothesis type     ="QuadrangleParams"
246                 label-id ="Quadrangle Parameters"
247                 icon-id  ="mesh_hypo_length.png"
248                 dim      ="2"/>
249
250     <hypothesis type     ="CartesianParameters3D"
251                 label-id ="Body Fitting Parameters"
252                 icon-id  ="mesh_hypo_length.png"
253                 context  ="GLOBAL"
254                 dim      ="3"/>
255
256   </hypotheses>
257
258   <algorithms>
259
260     <algorithm type     ="SegmentAroundVertex_0D"
261                label-id ="Segments around Vertex"
262                icon-id  ="mesh_algo_regular.png"
263                hypos    ="SegmentLengthAroundVertex"
264                output   ="NODE"
265                need-hyp ="true"
266                dim      ="0"/>
267
268     <algorithm type     ="Regular_1D"
269                label-id ="Wire Discretisation"
270                icon-id  ="mesh_algo_regular.png"
271                group-id ="0"
272                priority ="10"
273                hypos    ="Adaptive1D,LocalLength,MaxLength,Arithmetic1D,GeometricProgression,StartEndLength,NumberOfSegments,Deflection1D,AutomaticLength,FixedPoints1D"
274                opt-hypos="Propagation,PropagOfDistribution,QuadraticMesh"
275                input    ="NODE"
276                output   ="EDGE"
277                need-hyp ="true"
278                dim      ="1">
279       <python-wrap>
280         <algo>Regular_1D=Segment()</algo>
281         <hypo>LocalLength=LocalLength(SetLength(1),,SetPrecision(1))</hypo>
282         <hypo>MaxLength=MaxSize(SetLength(1))</hypo>
283         <hypo>Arithmetic1D=Arithmetic1D(SetStartLength(),SetEndLength(),SetReversedEdges())</hypo>
284         <hypo>GeometricProgression=GeometricProgression(SetStartLength(),SetCommonRatio(),SetReversedEdges())</hypo>
285         <hypo>StartEndLength=StartEndLength(SetStartLength(),SetEndLength(),SetReversedEdges())</hypo>
286         <hypo>Deflection1D=Deflection1D(SetDeflection())</hypo>
287         <hypo>Adaptive1D=Adaptive(SetMinSize(),SetMaxSize(),SetDeflection())</hypo>
288         <hypo>AutomaticLength=AutomaticLength(SetFineness())</hypo>
289         <hypo>FixedPoints1D=FixedPoints1D(SetPoints(),SetNbSegments(),SetReversedEdges())</hypo>
290         <hypo>Propagation=Propagation()</hypo>
291         <hypo>PropagOfDistribution=PropagationOfDistribution()</hypo>
292         <hypo>QuadraticMesh=QuadraticMesh()</hypo>
293       </python-wrap>
294     </algorithm>
295
296     <algorithm type     ="CompositeSegment_1D"
297                label-id ="Composite Side Discretisation"
298                icon-id  ="mesh_algo_regular.png"
299                group-id ="0"
300                priority ="20"
301                hypos    ="Adaptive1D,LocalLength,MaxLength,Arithmetic1D,GeometricProgression,StartEndLength,NumberOfSegments,Deflection1D,AutomaticLength,FixedPoints1D"
302                opt-hypos="Propagation,PropagOfDistribution,QuadraticMesh"
303                input    ="NODE"
304                output   ="EDGE"
305                need-hyp ="true"
306                dim      ="1">
307       <python-wrap>
308         <algo>CompositeSegment_1D=Segment(algo=smeshBuilder.COMPOSITE)</algo>
309         <hypo>LocalLength=LocalLength(SetLength(), ,SetPrecision())</hypo>
310         <hypo>MaxLength=MaxSize(SetLength())</hypo>
311         <hypo>Arithmetic1D=Arithmetic1D(SetStartLength(),SetEndLength(),SetReversedEdges())</hypo>
312         <hypo>GeometricProgression=GeometricProgression(SetStartLength(),SetCommonRatio(),SetReversedEdges())</hypo>
313         <hypo>StartEndLength=StartEndLength(SetStartLength(),SetEndLength(),SetReversedEdges())</hypo>
314         <hypo>Deflection1D=Deflection1D(SetDeflection())</hypo>
315         <hypo>Adaptive1D=Adaptive(SetMinSize(),SetMaxSize(),SetDeflection())</hypo>
316         <hypo>AutomaticLength=AutomaticLength(SetFineness())</hypo>
317         <hypo>FixedPoints1D=FixedPoints1D(SetPoints(),SetNbSegments(),SetReversedEdges())</hypo>
318         <hypo>Propagation=Propagation()</hypo>
319         <hypo>PropagOfDistribution=PropagationOfDistribution()</hypo>
320         <hypo>QuadraticMesh=QuadraticMesh()</hypo>
321       </python-wrap>
322     </algorithm>
323
324     <algorithm type="Python_1D"
325                output="EDGE"
326                dim="1">
327       <python-wrap>
328         <algo>Python_1D=Segment(algo=smeshBuilder.PYTHON)</algo>
329         <hypo>PythonSplit1D=PythonSplit1D(SetNumberOfSegments(),SetPythonLog10RatioFunction())</hypo>
330       </python-wrap>
331     </algorithm>
332
333     <algorithm type      ="@MEFISTO2D_NAME@"
334                label-id  ="Triangle: Mefisto"
335                icon-id   ="mesh_algo_mefisto.png"
336                group-id ="1"
337                priority ="40"
338                hypos     ="LengthFromEdges,MaxElementArea"
339                opt-hypos ="ViscousLayers2D"
340                input     ="EDGE"
341                output    ="TRIA"
342                dim       ="2">
343       <python-wrap>
344         <algo>MEFISTO_2D=Triangle(algo=smeshBuilder.MEFISTO)</algo>
345         <hypo>LengthFromEdges=LengthFromEdges()</hypo>
346         <hypo>MaxElementArea=MaxElementArea(SetMaxElementArea())</hypo>
347         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetEdges(1),SetEdges(2))</hypo>
348       </python-wrap>
349     </algorithm>
350
351     <algorithm type     ="Quadrangle_2D"
352                label-id ="Quadrangle: Mapping"
353                icon-id  ="mesh_algo_quad.png"
354                group-id ="0"
355                priority ="10"
356                hypos    ="QuadrangleParams"
357                opt-hypos="ViscousLayers2D"
358                input    ="EDGE"
359                output   ="QUAD"
360                dim      ="2">
361       <python-wrap>
362         <algo>Quadrangle_2D=Quadrangle(algo=smeshBuilder.QUADRANGLE)</algo>
363         <hypo>QuadrangleParams=QuadrangleParameters(SetQuadType(),SetTriaVertex(),SetEnforcedNodes(1),SetEnforcedNodes(2))</hypo>
364         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
365       </python-wrap>
366     </algorithm>
367
368     <algorithm type     ="QuadFromMedialAxis_1D2D"
369                label-id ="Quadrangle: Medial Axis Projection"
370                icon-id  ="mesh_algo_quad.png"
371                group-id ="0"
372                priority ="20"
373                hypos    ="NumberOfLayers2D, LayerDistribution2D"
374                opt-hypos="ViscousLayers2D"
375                input    ="EDGE"
376                output   ="QUAD"
377                dim      ="2">
378       <python-wrap>
379         <algo>QuadFromMedialAxis_1D2D=Quadrangle(algo=smeshBuilder.QUAD_MA_PROJ)</algo>
380         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
381         <hypo>NumberOfLayers2D=NumberOfLayers(SetNumberOfLayers())</hypo>
382       </python-wrap>
383     </algorithm>
384
385     <algorithm type     ="PolygonPerFace_2D"
386                label-id ="Polygon per Face"
387                icon-id  ="mesh_algo_polygon.png"
388                group-id ="2"
389                priority ="40"
390                opt-hypos="ViscousLayers2D"
391                input    ="EDGE"
392                output   ="POLYGON,QUAD,TRIA"
393                dim      ="2">
394       <python-wrap>
395         <algo>PolygonPerFace_2D=Polygon()</algo>
396         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
397       </python-wrap>
398     </algorithm>
399
400     <algorithm type     ="Hexa_3D"
401                label-id ="Hexahedron (i,j,k)"
402                icon-id  ="mesh_algo_hexa.png"
403                group-id ="0"
404                priority ="10"
405                input    ="QUAD"
406                output   ="HEXA,PENTA"
407                need-geom="false"
408                opt-hypos="ViscousLayers"
409                dim      ="3">
410       <python-wrap>
411         <algo>Hexa_3D=Hexahedron(algo=smeshBuilder.Hexa)</algo>
412         <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetFaces(1),SetFaces(2),SetMethod())</hypo>
413       </python-wrap>
414     </algorithm>
415
416     <algorithm type    ="Projection_1D"
417                label-id="Projection 1D"
418                icon-id ="mesh_algo_regular.png"
419                group-id="1"
420                priority="10"
421                hypos   ="ProjectionSource1D"
422                output  ="EDGE"
423                need-hyp="true"
424                dim     ="1">
425       <python-wrap>
426         <algo>Projection_1D=Projection1D()</algo>
427         <hypo>ProjectionSource1D=SourceEdge(SetSourceEdge(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(2))</hypo>
428       </python-wrap>
429     </algorithm>
430
431     <algorithm type    ="Projection_2D"
432                label-id="Projection 2D"
433                icon-id ="mesh_algo_quad.png"
434                group-id="2"
435                priority="30"
436                input   ="EDGE"
437                hypos   ="ProjectionSource2D"
438                output  ="QUAD,TRIA"
439                need-hyp="true"
440                dim     ="2">
441       <python-wrap>
442         <algo>Projection_2D=Projection2D()</algo>
443         <hypo>ProjectionSource2D=SourceFace(SetSourceFace(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(3),SetVertexAssociation(2),SetVertexAssociation(4))</hypo>
444       </python-wrap>
445     </algorithm>
446
447     <algorithm type    ="Projection_1D2D"
448                label-id="Projection 1D-2D"
449                icon-id ="mesh_algo_quad.png"
450                group-id="2"
451                priority="20"
452                hypos   ="ProjectionSource2D"
453                output  ="QUAD,TRIA"
454                need-hyp="true"
455                dim     ="2">
456       <python-wrap>
457         <algo>Projection_1D2D=Projection1D2D()</algo>
458         <hypo>ProjectionSource2D=SourceFace(SetSourceFace(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(2),SetVertexAssociation(3),SetVertexAssociation(4))</hypo>
459       </python-wrap>
460     </algorithm>
461
462     <algorithm type    ="Projection_3D"
463                label-id="Projection 3D"
464                icon-id ="mesh_algo_hexa.png"
465                group-id="2"
466                priority="20"
467                hypos   ="ProjectionSource3D"
468                input   ="QUAD,TRIA"
469                need-hyp="true"
470                dim     ="3">
471       <python-wrap>
472         <algo>Projection_3D=Projection3D()</algo>
473         <hypo>ProjectionSource3D=SourceShape3D(SetSource3DShape(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(3),SetVertexAssociation(2),SetVertexAssociation(4))</hypo>
474       </python-wrap>
475     </algorithm>
476
477     <algorithm type    ="Import_1D"
478                label-id="Import 1D Elements from Another Mesh"
479                icon-id ="mesh_algo_regular.png"
480                group-id="1"
481                priority="20"
482                hypos   ="ImportSource1D"
483                output  ="EDGE"
484                need-hyp="true"
485                dim     ="1">
486       <python-wrap>
487         <algo>Import_1D=UseExisting1DElements()</algo>
488         <hypo>ImportSource1D=SourceEdges(SetSourceEdges(),SetCopySourceMesh(1),SetCopySourceMesh(2))</hypo>
489       </python-wrap>
490     </algorithm>
491
492     <algorithm type             ="Import_1D2D"
493                label-id         ="Import 1D-2D Elements from Another Mesh"
494                icon-id          ="mesh_algo_quad.png"
495                group-id         ="2"
496                priority         ="50"
497                hypos            ="ImportSource2D"
498                output           ="QUAD,TRIA"
499                support-submeshes="false"
500                need-hyp         ="true"
501                dim              ="2">
502       <python-wrap>
503         <algo>Import_1D2D=UseExisting2DElements()</algo>
504         <hypo>ImportSource2D=SourceFaces(SetSourceFaces(),SetCopySourceMesh(1),SetCopySourceMesh(2))</hypo>
505       </python-wrap>
506     </algorithm>
507
508     <algorithm type    ="Prism_3D"
509                label-id="Extrusion 3D"
510                icon-id ="mesh_algo_hexa.png"
511                group-id="2"
512                priority="10"
513                input   ="QUAD,TRIA"
514                output  ="HEXA,PENTA,OCTA,POLYHEDRON"
515                dim     ="3">
516       <python-wrap>
517         <algo>Prism_3D=Prism()</algo>
518       </python-wrap>
519     </algorithm>
520
521     <algorithm type    ="RadialPrism_3D"
522                label-id="Radial Prism"
523                icon-id ="mesh_algo_hexa.png"
524                group-id="2"
525                priority="30"
526                hypos   ="NumberOfLayers, LayerDistribution"
527                input   ="QUAD,TRIA"
528                output  ="HEXA,PENTA,OCTA,POLYHEDRON"
529                need-hyp="true"
530                dim     ="3">
531       <python-wrap>
532         <algo>RadialPrism_3D=Prism('RadialPrism_3D')</algo>
533         <hypo>NumberOfLayers=NumberOfLayers(SetNumberOfLayers())</hypo>
534       </python-wrap>
535     </algorithm>
536
537     <algorithm type    ="UseExisting_1D"
538                label-id="Use Edges to be Created Manually"
539                icon-id ="mesh_algo_regular.png"
540                group-id="1"
541                priority="30"
542                input   ="NODE"
543                output  ="EDGE"
544                dim     ="1">
545       <python-wrap>
546         <algo>UseExisting_1D=UseExistingSegments()</algo>
547       </python-wrap>
548     </algorithm>
549
550     <algorithm type    ="UseExisting_2D"
551                label-id="Use Faces to be Created Manually"
552                icon-id ="mesh_algo_quad.png"
553                group-id="2"
554                priority="60"
555                input   ="EDGE"
556                output  ="QUAD,TRIA"
557                dim     ="2">
558       <python-wrap>
559         <algo>UseExisting_2D=UseExistingFaces()</algo>
560       </python-wrap>
561     </algorithm>
562
563     <algorithm type    ="RadialQuadrangle_1D2D"
564                label-id="Radial Quadrangle 1D-2D"
565                icon-id ="mesh_algo_quad.png"
566                group-id="2"
567                priority="10"
568                hypos   ="NumberOfLayers2D, LayerDistribution2D"
569                input   ="EDGE"
570                output  ="QUAD"
571                dim     ="2">
572       <python-wrap>
573         <algo>RadialQuadrangle_1D2D=Quadrangle(algo=smeshBuilder.RADIAL_QUAD)</algo>
574         <hypo>NumberOfLayers2D=NumberOfLayers(SetNumberOfLayers())</hypo>
575       </python-wrap>
576     </algorithm>
577
578     <algorithm type             ="Cartesian_3D"
579                label-id         ="Body Fitting"
580                icon-id          ="mesh_algo_hexa.png"
581                group-id         ="0"
582                priority         ="20"
583                hypos            ="CartesianParameters3D"
584                support-submeshes="false"
585                output           ="HEXA"
586                need-hyp         ="true"
587                context          ="GLOBAL"
588                dim              ="3">
589       <python-wrap>
590         <algo>Cartesian_3D=BodyFitted()</algo>
591       </python-wrap>
592     </algorithm>
593
594   </algorithms>
595 </meshers-group>
596
597 <meshers-group name="Your Meshers Group"
598                resources=""
599                server-lib=""
600                gui-lib="">
601   <hypotheses>
602
603     <hypothesis type=""
604                 label-id=""
605                 icon-id=""/>
606   </hypotheses>
607
608   <algorithms>
609
610     <algorithm type=""
611                label-id=""
612                icon-id=""/>
613   </algorithms>
614 </meshers-group>
615
616
617 <hypotheses-set-group>
618
619     <hypotheses-set name="Automatic Tetrahedralization"
620                     hypos="MaxLength"
621                     algos="Regular_1D, @MEFISTO2D_NAME@, NETGEN_3D"/>
622
623     <hypotheses-set name="Automatic Hexahedralization"
624                     hypos="NumberOfSegments"
625                     algos="Regular_1D, Quadrangle_2D, Hexa_3D"/>
626
627     <hypotheses-set name="Automatic Triangulation"
628                     hypos="MaxLength"
629                     algos="Regular_1D, @MEFISTO2D_NAME@"/>
630
631     <hypotheses-set name="Automatic Quadrangulation"
632                     hypos="NumberOfSegments"
633                     algos="Regular_1D, Quadrangle_2D"/>
634
635 </hypotheses-set-group>
636
637 </meshers>