+<!--
+Copyright (C) 2014-2017 CEA/DEN, EDF R&D
+
+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, or (at your option) any later version.
+
+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<mailto:webmaster.salome@opencascade.com>
+-->
+
<source>
- <doublevalue id="x" label="X:" max="50" step="1.0" default="0" icon=":pictures/x_point.png" tooltip="Set X"/>
- <doublevalue id="y" label="Y:" min="x" default="1" icon=":pictures/y_point.png" tooltip="Set Y"/>
- <doublevalue id="z" label="Z:" min="-20" step="0.1" default="2" icon=":pictures/z_point.png" tooltip="Set Z"/>
+ <toolbox id="creation_method">
+ <box id="by_xyz"
+ title="By X, Y, Z"
+ tooltip="Point at a given distance from the origin."
+ icon="icons/Construction/point_by_xyz_32x32.png">
+ <doublevalue id="x"
+ label="X "
+ tooltip="X coordinate."
+ icon="icons/Construction/x_size.png"
+ default="0"/>
+ <doublevalue id="y"
+ label="Y "
+ tooltip="Y coordinate."
+ icon="icons/Construction/y_size.png"
+ default="0"/>
+ <doublevalue id="z"
+ label="Z "
+ tooltip="Z coordinate."
+ icon="icons/Construction/z_size.png"
+ default="0"/>
+ </box>
+ <box id="by_distance_on_edge"
+ title="By distance on edge"
+ tooltip="Point on an edge, at a given distance of one of its end."
+ icon="icons/Construction/point_by_distance_on_edge_32x32.png">
+ <shape_selector id="edge"
+ label="Edge"
+ tooltip="Edge for creating point on it."
+ icon="icons/Construction/edge.png"
+ shape_types="edge">
+ <validator id="GeomValidators_Finite"/>
+ </shape_selector>
+ <radiobox id="offset_type">
+ <radio id="offset_type_by_distance"
+ title="Distance on edge by value"
+ tooltip="Point on an edge, at a given distance specified by value."
+ icon="icons/Construction/point_by_distance_on_edge_24x24.png">
+ <doublevalue id="distance"
+ label="Distance"
+ tooltip="Distance value."
+ min="0.0"
+ default="10">
+ </doublevalue>
+ </radio>
+ <radio id="offset_type_by_ratio"
+ title="Distance on edge by ratio"
+ tooltip="Point on an edge, at a given distance specified by ratio."
+ icon="icons/Construction/point_by_ratio_on_edge_24x24.png">
+ <doublevalue id="ratio"
+ label="Ratio"
+ tooltip="Ratio value."
+ min="0.0"
+ max="1.0"
+ default="0.5">
+ </doublevalue>
+ </radio>
+ </radiobox>
+ <boolvalue id="reverse"
+ label="Reverse"
+ tooltip="Distance from edge end point."
+ default="false"/>
+ </box>
+ <box id="by_projection"
+ title="By projection on edge or plane"
+ tooltip="Point on edge or plane by projection selected point."
+ icon="icons/Construction/point_by_projection_32x32.png">
+ <shape_selector id="point_to_project"
+ label="Point"
+ tooltip="Point for projection."
+ icon="icons/Construction/point.png"
+ shape_types="vertex">
+ </shape_selector>
+ <toolbox id="projection_type">
+ <box id="projection_type_on_edge"
+ title="By projection on edge"
+ tooltip="Point on edge by projection selected point."
+ icon="icons/Construction/point_by_projection_on_edge_24x24.png">
+ <shape_selector id="edge_for_point_projection"
+ label="edge"
+ tooltip="Edge for projection."
+ icon="icons/Construction/edge.png"
+ shape_types="edge">
+ </shape_selector>
+ </box>
+ <box id="projection_type_on_face"
+ title="By projection on face"
+ tooltip="Point on face surface by projection selected point."
+ icon="icons/Construction/point_by_projection_on_face_24x24.png">
+ <shape_selector id="face_for_point_projection"
+ label="face"
+ tooltip="Face for projection."
+ icon="icons/Construction/face.png"
+ shape_types="face">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ </shape_selector>
+ </box>
+ </toolbox>
+ </box>
+ <box id="by_intersection"
+ title="By intersection of objects"
+ tooltip="Point on intersection of different objects."
+ icon="icons/Construction/point_by_intersection_32x32.png">
+ <toolbox id="intersection_type">
+ <box id="intersection_type_by_lines"
+ title="By two lines intersection"
+ tooltip="Point by intersection of two coplanar lines."
+ icon="icons/Construction/point_by_lines_intersection_24x24.png">
+ <shape_selector id="intersection_line_1"
+ label="First line"
+ tooltip="First line."
+ icon="icons/Construction/edge.png"
+ shape_types="edge">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ <validator id="ConstructionPlugin_ValidatorPointLines"
+ parameters="intersection_line_2"/>
+ </shape_selector>
+ <shape_selector id="intersection_line_2"
+ label="Second line"
+ tooltip="Second line."
+ icon="icons/Construction/edge.png"
+ shape_types="edge">
+ <validator id="GeomValidators_ShapeType" parameters="line"/>
+ <validator id="ConstructionPlugin_ValidatorPointLines"
+ parameters="intersection_line_1"/>
+ </shape_selector>
+ </box>
+ <box id="intersection_type_by_line_and_plane"
+ title="By line and plane intersection"
+ tooltip="Point by intersection of line and plane."
+ icon="icons/Construction/point_by_line_and_plane_intersection_24x24.png">
+ <shape_selector id="intersection_line"
+ label="Line"
+ tooltip="Line for intersection."
+ icon="icons/Construction/edge.png"
+ shape_types="edge">
+ <validator id="ConstructionPlugin_ValidatorPointEdgeAndPlaneNotParallel"
+ parameters="intersection_plane"/>
+ </shape_selector>
+ <shape_selector id="intersection_plane"
+ label="Plane"
+ tooltip="Plane for intersection."
+ icon="icons/Construction/face.png"
+ shape_types="face">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ <validator id="ConstructionPlugin_ValidatorPointEdgeAndPlaneNotParallel"
+ parameters="intersection_line"/>
+ </shape_selector>
+ <optionalbox id="use_offset" title="Offset from the plane">
+ <doublevalue id="offset"
+ label="Distance "
+ tooltip="Distance from the plane"
+ min="0"
+ default="0"/>
+ <boolvalue id="reverse_offset"
+ label="Reverse"
+ tooltip="Reverse offset value"
+ default="false"/>
+ </optionalbox>
+ </box>
+ <box id="intersection_type_by_planes"
+ title="By three planes intersection"
+ tooltip="Point by intersection of three planes."
+ icon="icons/Construction/point_by_planes_intersection_24x24.png">
+ <shape_selector id="intersection_plane_1"
+ label="1st plane"
+ tooltip="Select a planar face."
+ icon="icons/Construction/face.png"
+ shape_types="face">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ <validator id="ConstructionPlugin_ValidatorPointThreeNonParallelPlanes"
+ parameters="intersection_plane_2, intersection_plane_3"/>
+ </shape_selector>
+ <shape_selector id="intersection_plane_2"
+ label="2nd plane"
+ tooltip="Select a planar face."
+ icon="icons/Construction/face.png"
+ shape_types="face">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ <validator id="ConstructionPlugin_ValidatorPointThreeNonParallelPlanes"
+ parameters="intersection_plane_1, intersection_plane_3"/>
+ </shape_selector>
+ <shape_selector id="intersection_plane_3"
+ label="3rd plane"
+ tooltip="Select a planar face."
+ icon="icons/Construction/face.png"
+ shape_types="face">
+ <validator id="GeomValidators_Face" parameters="plane"/>
+ <validator id="ConstructionPlugin_ValidatorPointThreeNonParallelPlanes"
+ parameters="intersection_plane_1, intersection_plane_2"/>
+ </shape_selector>
+ </box>
+ </toolbox>
+ </box>
+ </toolbox>
</source>