<?xml version='1.0' encoding='us-ascii'?>
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
<!--
  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE

  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA

  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com

-->

<!--  GUI customization for MESH component  -->

<meshers>

<meshers-group name="Standard Meshers"
               resources="StdMeshers"
               server-lib="StdMeshersEngine"
               gui-lib="StdMeshersGUI">
  <hypotheses>

    <hypothesis type="SegmentLengthAroundVertex"
                label-id="Length Near Vertex"
                icon-id="mesh_hypo_length.png"
                dim="0"/>

    <hypothesis type="LocalLength"
                label-id="Average length"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="MaxLength"
                label-id="Max Size"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="Arithmetic1D"
                label-id="Arithmetic 1D"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="FixedPoints1D"
                label-id="Fixed points 1D"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="StartEndLength"
                label-id="Start and End Length"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="NumberOfSegments"
                label-id="Nb. Segments"
                icon-id="mesh_hypo_segment.png"
                dim="1"/>

    <hypothesis type="Deflection1D"
                label-id="Deflection 1D"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="Propagation"
                label-id="Propagation of 1D Hyp. on opposite edges"
                icon-id="mesh_hypo_length.png"
                dim="1"
                auxiliary="true"/>

    <hypothesis type="AutomaticLength"
                label-id="Automatic length"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="LengthFromEdges"
                label-id="Length From Edges (2D Hyp. for Triangulator)"
                icon-id="mesh_hypo_length.png"
                dim="2"/>

    <hypothesis type="QuadranglePreference"
                label-id="Quadrangle Preference"
                icon-id="mesh_algo_quad.png"
                auxiliary="true"
                dim="2"/>

    <hypothesis	type="TrianglePreference"
		label-id="Triangle Preference"
                icon-id="mesh_algo_mefisto.png"
		auxiliary="true"
		dim="2"/>
		
    <hypothesis type="QuadraticMesh"
                label-id="Quadratic Mesh"
                icon-id="mesh_algo_quad.png"
                dim="1"
                auxiliary="true"/>                

    <hypothesis type="MaxElementArea"
                label-id="Max. Element Area"
                icon-id="mesh_hypo_area.png"
                dim="2"/>
                
    <hypothesis type="NotConformAllowed"
                label-id="Not Conform Mesh Allowed"
                icon-id="mesh_hypo_length.png"
                dim="1,2,3"
                auxiliary="true"/>                

    <hypothesis type="MaxElementVolume"
                label-id="Max. Element Volume"
                icon-id="mesh_hypo_volume.png"
		need-geom = "false"
                dim="3"/>

    <hypothesis type="ProjectionSource3D"
                label-id="Source Shape 3D"
                icon-id="mesh_hypo_volume.png"
                dim="3"/>

    <hypothesis type="ProjectionSource2D"
                label-id="Source Face"
                icon-id="mesh_hypo_area.png"
                dim="2"/>

    <hypothesis type="ProjectionSource1D"
                label-id="Source Edge"
                icon-id="mesh_hypo_length.png"
                dim="1"/>

    <hypothesis type="NumberOfLayers"
                label-id="Number of Layers"
                icon-id="mesh_hypo_length.png"
                dim="3"/>

    <hypothesis type="LayerDistribution"
                label-id="Distribution of Layers"
                icon-id="mesh_hypo_length.png"
                dim="3"/>

    <hypothesis type="NumberOfLayers2D"
                label-id="Number of Layers"
                icon-id="mesh_hypo_length.png"
                dim="2"/>

    <hypothesis type="LayerDistribution2D"
                label-id="Distribution of Layers"
                icon-id="mesh_hypo_length.png"
                dim="2"/>

    <hypothesis type="QuadrangleParams"
                label-id="Quadrangle Parameters"
                icon-id="mesh_hypo_length.png"
                dim="2"/>

  </hypotheses>

  <algorithms>

    <algorithm type="SegmentAroundVertex_0D"
	       label-id="Segments around vertex"
	       icon-id="mesh_algo_regular.png"
               hypos="SegmentLengthAroundVertex"
               output="VERTEX"
               dim="0"/>

    <algorithm type="Regular_1D"
	       label-id="Wire discretisation"
	       icon-id="mesh_algo_regular.png"
               hypos="LocalLength,MaxLength,Arithmetic1D,StartEndLength,NumberOfSegments,Deflection1D,AutomaticLength,FixedPoints1D"
               opt-hypos="Propagation,QuadraticMesh"
               input="VERTEX"
               output="EDGE"
               dim="1"/>

    <algorithm type="CompositeSegment_1D"
	       label-id="Composite side discretisation"
	       icon-id="mesh_algo_regular.png"
               hypos="LocalLength,MaxLength,Arithmetic1D,StartEndLength,NumberOfSegments,Deflection1D,AutomaticLength"
               opt-hypos="Propagation,QuadraticMesh"
               input="VERTEX"
               output="EDGE"
               dim="1"/>

    <algorithm type="MEFISTO_2D"
	       label-id="Triangle (Mefisto)"
	       icon-id="mesh_algo_mefisto.png"
               hypos="LengthFromEdges,MaxElementArea"
               input="EDGE"
               output="TRIA"
               dim="2"/>

    <algorithm type="Quadrangle_2D"
               label-id="Quadrangle (Mapping)"
               icon-id="mesh_algo_quad.png"
               hypos="QuadrangleParams"
               opt-hypos="QuadranglePreference,TrianglePreference"
               input="EDGE"
               output="QUAD"
               dim="2"/>

    <algorithm type="Hexa_3D"
               label-id="Hexahedron (i,j,k)"
               icon-id="mesh_algo_hexa.png"
               input="QUAD"
	       need-geom="false"
               dim="3"/>

    <algorithm type="Projection_1D"
               label-id="Projection 1D"
               icon-id="mesh_algo_regular.png"
               hypos="ProjectionSource1D"
               output="EDGE"
               dim="1"/>

    <algorithm type="Projection_2D"
               label-id="Projection 2D"
               icon-id="mesh_algo_quad.png"
               input="EDGE"
               hypos="ProjectionSource2D"
               output="QUAD,TRIA"
               dim="2"/>

    <algorithm type="Projection_3D"
               label-id="Projection 3D"
               icon-id="mesh_algo_hexa.png"
               hypos="ProjectionSource3D"
               input="QUAD,TRIA"
               dim="3"/>

    <algorithm type="Prism_3D"
               label-id="3D extrusion"
               icon-id="mesh_algo_hexa.png"
               input="QUAD,TRIA"
               dim="3"/>

    <algorithm type="RadialPrism_3D"
               label-id="Radial Prism 3D"
               icon-id="mesh_algo_hexa.png"
               hypos="NumberOfLayers, LayerDistribution"
               input="QUAD,TRIA"
               dim="3"/>

    <algorithm type="UseExisting_1D"
               label-id="Use existing edges"
               icon-id="mesh_algo_regular.png"
               input="VERTEX"
               output="EDGE"
               dim="1"/>

    <algorithm type="UseExisting_2D"
               label-id="Use existing faces"
               icon-id="mesh_algo_quad.png"
               input="EDGE"
               output="QUAD,TRIA"
               dim="2"/>

    <algorithm type="RadialQuadrangle_1D2D"
               label-id="Radial quadrangle 1D2D"
               icon-id="mesh_algo_quad.png"
               hypos="NumberOfLayers2D, LayerDistribution2D"
               input="EDGE"
               output="QUAD,TRIA"
               dim="2"/>

  </algorithms>
</meshers-group>

<meshers-group name="Your Meshers Group"
               resources=""
               server-lib=""
               gui-lib="">
  <hypotheses>

    <hypothesis type=""
                label-id=""
                icon-id=""/>
  </hypotheses>

  <algorithms>

    <algorithm type=""
               label-id=""
               icon-id=""/>
  </algorithms>
</meshers-group>


<hypotheses-set-group>

    <hypotheses-set name="Automatic Tetrahedralization"
                    hypos="MaxLength"
                    algos="Regular_1D, MEFISTO_2D, NETGEN_3D"/>

    <hypotheses-set name="Automatic Hexahedralization"
                    hypos="NumberOfSegments"
                    algos="Regular_1D, Quadrangle_2D, Hexa_3D"/>

</hypotheses-set-group>

</meshers>