Salome HOME
Update of CheckDone
[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     ="Quadrangle_2D"
312                label-id ="Quadrangle: Mapping"
313                icon-id  ="mesh_algo_quad.png"
314                group-id ="0"
315                priority ="10"
316                hypos    ="QuadrangleParams"
317                opt-hypos="ViscousLayers2D"
318                input    ="EDGE"
319                output   ="QUAD"
320                dim      ="2">
321       <python-wrap>
322         <algo>Quadrangle_2D=Quadrangle(algo=smeshBuilder.QUADRANGLE)</algo>
323         <hypo>QuadrangleParams=QuadrangleParameters(SetQuadType(),SetTriaVertex(),SetEnforcedNodes(1),SetEnforcedNodes(2),SetCorners())</hypo>
324         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetEdges(1),SetEdges(2),SetGroupName())</hypo>
325       </python-wrap>
326     </algorithm>
327
328     <algorithm type     ="QuadFromMedialAxis_1D2D"
329                label-id ="Quadrangle: Medial Axis Projection"
330                icon-id  ="mesh_algo_quad.png"
331                group-id ="0"
332                priority ="20"
333                hypos    ="NumberOfLayers2D, LayerDistribution2D"
334                opt-hypos="ViscousLayers2D"
335                input    ="EDGE"
336                output   ="QUAD"
337                dim      ="2">
338       <python-wrap>
339         <algo>QuadFromMedialAxis_1D2D=Quadrangle(algo=smeshBuilder.QUAD_MA_PROJ)</algo>
340         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetEdges(1),SetEdges(2),SetGroupName())</hypo>
341         <hypo>NumberOfLayers2D=NumberOfLayers(SetNumberOfLayers())</hypo>
342       </python-wrap>
343     </algorithm>
344
345     <algorithm type     ="PolygonPerFace_2D"
346                label-id ="Polygon per Face"
347                icon-id  ="mesh_algo_polygon.png"
348                group-id ="2"
349                priority ="40"
350                opt-hypos="ViscousLayers2D"
351                input    ="EDGE"
352                output   ="POLYGON,QUAD,TRIA"
353                dim      ="2">
354       <python-wrap>
355         <algo>PolygonPerFace_2D=Polygon()</algo>
356         <hypo>ViscousLayers2D=ViscousLayers2D(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetEdges(1),SetEdges(2),SetGroupName())</hypo>
357       </python-wrap>
358     </algorithm>
359
360     <algorithm type     ="PolyhedronPerSolid_3D"
361                label-id ="Polyhedron per Solid"
362                icon-id  ="mesh_algo_polygon.png"
363                opt-hypos="ViscousLayers"
364                input    ="POLYGON,QUAD,TRIA,EDGE"
365                dim      ="3">
366       <python-wrap>
367         <algo>PolyhedronPerSolid_3D=Polyhedron()</algo>
368         <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetIgnoreEdges())</hypo>
369       </python-wrap>
370     </algorithm>
371
372     <algorithm type     ="Hexa_3D"
373                label-id ="Hexahedron (i,j,k)"
374                icon-id  ="mesh_algo_hexa.png"
375                group-id ="0"
376                priority ="10"
377                input    ="QUAD"
378                output   ="HEXA,PENTA"
379                need-geom="false"
380                hypos    ="BlockRenumber"
381                opt-hypos="ViscousLayers"
382                dim      ="3">
383       <python-wrap>
384         <algo>Hexa_3D=Hexahedron(algo=smeshBuilder.Hexa)</algo>
385         <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetFaces(1),SetFaces(2),SetMethod(),SetGroupName())</hypo>
386         <hypo>BlockRenumber=Renumber(GetBlocksOrientation())</hypo>
387       </python-wrap>
388     </algorithm>
389
390     <algorithm type    ="Projection_1D"
391                label-id="Projection 1D"
392                icon-id ="mesh_algo_regular.png"
393                group-id="1"
394                priority="10"
395                hypos   ="ProjectionSource1D"
396                output  ="EDGE"
397                need-hyp="true"
398                dim     ="1">
399       <python-wrap>
400         <algo>Projection_1D=Projection1D()</algo>
401         <hypo>ProjectionSource1D=SourceEdge(SetSourceEdge(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(2))</hypo>
402       </python-wrap>
403     </algorithm>
404
405     <algorithm type    ="Projection_2D"
406                label-id="Projection 2D"
407                icon-id ="mesh_algo_quad.png"
408                group-id="2"
409                priority="30"
410                input   ="EDGE"
411                hypos   ="ProjectionSource2D"
412                output  ="QUAD,TRIA"
413                need-hyp="true"
414                dim     ="2">
415       <python-wrap>
416         <algo>Projection_2D=Projection2D()</algo>
417         <hypo>ProjectionSource2D=SourceFace(SetSourceFace(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(3),SetVertexAssociation(2),SetVertexAssociation(4))</hypo>
418       </python-wrap>
419     </algorithm>
420
421     <algorithm type    ="Projection_1D2D"
422                label-id="Projection 1D-2D"
423                icon-id ="mesh_algo_quad.png"
424                group-id="2"
425                priority="20"
426                hypos   ="ProjectionSource2D"
427                output  ="QUAD,TRIA"
428                need-hyp="true"
429                dim     ="2">
430       <python-wrap>
431         <algo>Projection_1D2D=Projection1D2D()</algo>
432         <hypo>ProjectionSource2D=SourceFace(SetSourceFace(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(2),SetVertexAssociation(3),SetVertexAssociation(4))</hypo>
433       </python-wrap>
434     </algorithm>
435
436     <algorithm type    ="Projection_3D"
437                label-id="Projection 3D"
438                icon-id ="mesh_algo_hexa.png"
439                group-id="2"
440                priority="20"
441                hypos   ="ProjectionSource3D"
442                input   ="QUAD,TRIA"
443                need-hyp="true"
444                dim     ="3">
445       <python-wrap>
446         <algo>Projection_3D=Projection3D()</algo>
447         <hypo>ProjectionSource3D=SourceShape3D(SetSource3DShape(),SetSourceMesh(),SetVertexAssociation(1),SetVertexAssociation(3),SetVertexAssociation(2),SetVertexAssociation(4))</hypo>
448       </python-wrap>
449     </algorithm>
450
451     <algorithm type    ="Import_1D"
452                label-id="Import 1D Elements from Another Mesh"
453                icon-id ="mesh_algo_regular.png"
454                group-id="1"
455                priority="20"
456                hypos   ="ImportSource1D"
457                output  ="EDGE"
458                need-hyp="true"
459                dim     ="1">
460       <python-wrap>
461         <algo>Import_1D=UseExisting1DElements()</algo>
462         <hypo>ImportSource1D=SourceEdges(SetSourceEdges(),SetCopySourceMesh(1),SetCopySourceMesh(2))</hypo>
463       </python-wrap>
464     </algorithm>
465
466     <algorithm type             ="Import_1D2D"
467                label-id         ="Import 1D-2D Elements from Another Mesh"
468                icon-id          ="mesh_algo_quad.png"
469                group-id         ="2"
470                priority         ="50"
471                hypos            ="ImportSource2D"
472                output           ="QUAD,TRIA"
473                support-submeshes="false"
474                need-hyp         ="true"
475                dim              ="2">
476       <python-wrap>
477         <algo>Import_1D2D=UseExisting2DElements()</algo>
478         <hypo>ImportSource2D=SourceFaces(SetSourceFaces(),SetCopySourceMesh(1),SetCopySourceMesh(2))</hypo>
479       </python-wrap>
480     </algorithm>
481
482     <algorithm type    ="Prism_3D"
483                label-id="Extrusion 3D"
484                icon-id ="mesh_algo_hexa.png"
485                group-id="2"
486                priority="10"
487                input   ="EDGE"
488                output  ="HEXA,PENTA,OCTA,POLYHEDRON"
489                dim     ="3">
490       <python-wrap>
491         <algo>Prism_3D=Prism()</algo>
492       </python-wrap>
493     </algorithm>
494
495     <algorithm type    ="RadialPrism_3D"
496                label-id="Radial Prism"
497                icon-id ="mesh_algo_hexa.png"
498                group-id="2"
499                priority="30"
500                hypos   ="NumberOfLayers, LayerDistribution"
501                input   ="QUAD,TRIA"
502                output  ="HEXA,PENTA,OCTA,POLYHEDRON"
503                need-hyp="true"
504                dim     ="3">
505       <python-wrap>
506         <algo>RadialPrism_3D=Prism('RadialPrism_3D')</algo>
507         <hypo>NumberOfLayers=NumberOfLayers(SetNumberOfLayers())</hypo>
508       </python-wrap>
509     </algorithm>
510
511     <algorithm type    ="UseExisting_1D"
512                label-id="Use Edges to be Created Manually"
513                icon-id ="mesh_algo_regular.png"
514                group-id="1"
515                priority="30"
516                input   ="NODE"
517                output  ="EDGE"
518                dim     ="1">
519       <python-wrap>
520         <algo>UseExisting_1D=UseExistingSegments()</algo>
521       </python-wrap>
522     </algorithm>
523
524     <algorithm type    ="UseExisting_2D"
525                label-id="Use Faces to be Created Manually"
526                icon-id ="mesh_algo_quad.png"
527                group-id="2"
528                priority="60"
529                input   ="EDGE"
530                output  ="QUAD,TRIA"
531                dim     ="2">
532       <python-wrap>
533         <algo>UseExisting_2D=UseExistingFaces()</algo>
534       </python-wrap>
535     </algorithm>
536
537     <algorithm type    ="RadialQuadrangle_1D2D"
538                label-id="Radial Quadrangle 1D-2D"
539                icon-id ="mesh_algo_quad.png"
540                group-id="2"
541                priority="10"
542                hypos   ="NumberOfLayers2D, LayerDistribution2D"
543                input   ="EDGE"
544                output  ="QUAD"
545                dim     ="2">
546       <python-wrap>
547         <algo>RadialQuadrangle_1D2D=Quadrangle(algo=smeshBuilder.RADIAL_QUAD)</algo>
548         <hypo>NumberOfLayers2D=NumberOfLayers(SetNumberOfLayers())</hypo>
549       </python-wrap>
550     </algorithm>
551
552     <algorithm type             ="Cartesian_3D"
553                label-id         ="Body Fitting"
554                icon-id          ="mesh_algo_hexa.png"
555                group-id         ="0"
556                priority         ="20"
557                hypos            ="CartesianParameters3D"
558                opt-hypos        ="ViscousLayers"
559                support-submeshes="false"
560                output           ="HEXA"
561                need-hyp         ="true"
562                dim              ="3">
563       <python-wrap>
564         <algo>Cartesian_3D=BodyFitted()</algo>
565         <hypo>ViscousLayers=ViscousLayers(SetTotalThickness(),SetNumberLayers(),SetStretchFactor(),SetFaces(1),SetFaces(2),SetMethod(),SetGroupName())</hypo>
566       </python-wrap>
567     </algorithm>
568
569   </algorithms>
570 </meshers-group>
571
572 <meshers-group name="Your Meshers Group"
573                resources=""
574                server-lib=""
575                gui-lib="">
576   <hypotheses>
577
578     <hypothesis type=""
579                 label-id=""
580                 icon-id=""/>
581   </hypotheses>
582
583   <algorithms>
584
585     <algorithm type=""
586                label-id=""
587                icon-id=""/>
588   </algorithms>
589 </meshers-group>
590
591
592 <hypotheses-set-group>
593
594     <hypotheses-set name="Tetrahedralization"
595                     use-common-size="true"
596                     hypos="MG-CADSurf Parameters"
597                     algos="MG-CADSurf, MG-Tetra"
598                     alt-hypos="NETGEN_Parameters"
599                     alt-algos="NETGEN_2D3D"
600                     intern-edge-hypos="LocalLength"
601                     intern-edge-algos="Regular_1D"/>
602
603     <hypotheses-set name="Mapped Hexahedralization"
604                     hypos="NumberOfSegments"
605                     algos="Regular_1D, Quadrangle_2D, Hexa_3D"/>
606
607     <hypotheses-set name="Free Hexahedralization"
608                     use-common-size="true"
609                     quad-dominated="true"
610                     hypos="MG-CADSurf Parameters"
611                     algos="MG-CADSurf, MG-Hexa"
612                     alt-hypos="None"
613                     alt-algos="None"
614                     intern-edge-hypos="LocalLength"
615                     intern-edge-algos="Regular_1D"/>
616
617     <hypotheses-set name="Triangulation"
618                     use-common-size="true"
619                     hypos="MG-CADSurf Parameters"
620                     algos="MG-CADSurf"
621                     alt-hypos="NETGEN_Parameters_2D"
622                     alt-algos="NETGEN_2D"/>
623
624     <hypotheses-set name="Mapped Quadrangulation"
625                     hypos="NumberOfSegments"
626                     algos="Regular_1D, Quadrangle_2D"/>
627
628     <hypotheses-set name="Free Quadrangulation"
629                     use-common-size="true"
630                     quad-dominated="true"
631                     hypos="MG-CADSurf Parameters"
632                     algos="MG-CADSurf"
633                     alt-hypos="NETGEN_Parameters_2D"
634                     alt-algos="NETGEN_2D"/>
635
636 </hypotheses-set-group>
637
638 </meshers>