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