X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FConstructionAPI%2FConstructionAPI_Point.h;h=ce20c53990f1018f27ba8f3d52680ecb673e5cee;hb=b7ec3c27f028060b3c42b7da6fa3dfe962fe26e4;hp=5df24daaf754f344d53078716ae3b0ea0e987046;hpb=e65bf14e2ff3cf853884bf8998fadcece6e3b34c;p=modules%2Fshaper.git diff --git a/src/ConstructionAPI/ConstructionAPI_Point.h b/src/ConstructionAPI/ConstructionAPI_Point.h index 5df24daaf..ce20c5399 100644 --- a/src/ConstructionAPI/ConstructionAPI_Point.h +++ b/src/ConstructionAPI/ConstructionAPI_Point.h @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// Copyright (C) 2014-2019 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 @@ -12,10 +12,9 @@ // // 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 +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.salome-platform.org/ or -// email : webmaster.salome@opencascade.com +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // #ifndef SRC_CONSTRUCTIONAPI_CONSTRUCTIONAPI_POINT_H_ @@ -71,41 +70,68 @@ public: const ModelHighAPI_Selection& theObject3); /// Constructor with values: object and circular edge flag. + /// May be used for creation of point by coordinates using selection-vertex. CONSTRUCTIONAPI_EXPORT ConstructionAPI_Point(const std::shared_ptr& theFeature, const ModelHighAPI_Selection& theObject, - const bool theIsCircularEdge = false); + const bool theIsCircularEdge = false, + const bool theIsXYZSelection = false); /// Destructor. CONSTRUCTIONAPI_EXPORT virtual ~ConstructionAPI_Point(); INTERFACE_25(ConstructionPlugin_Point::ID(), - point, ConstructionPlugin_Point::point3d(), GeomDataAPI_Point, /** Point attribute */, - creationMethod, ConstructionPlugin_Point::CREATION_METHOD(), ModelAPI_AttributeString, /** Creation method */, - intersectionType, ConstructionPlugin_Point::INTERSECTION_TYPE(), ModelAPI_AttributeString, /** Type of the intersection */, - intersectionLine1, ConstructionPlugin_Point::INTERSECTION_LINE_1(), ModelAPI_AttributeSelection, /** Line for intersection */, - intersectionLine2, ConstructionPlugin_Point::INTERSECTION_LINE_2(), ModelAPI_AttributeSelection, /** Line for intersection */, - intersectionLine, ConstructionPlugin_Point::INTERSECTION_LINE(), ModelAPI_AttributeSelection, /** Line for intersection */, - intersectionPlane, ConstructionPlugin_Point::INTERSECTION_PLANE(), ModelAPI_AttributeSelection, /** Plane for intersection */, - intersectionPlane1, ConstructionPlugin_Point::INTERSECTION_PLANE_1(), ModelAPI_AttributeSelection, /** Plane for intersection */, - intersectionPlane2, ConstructionPlugin_Point::INTERSECTION_PLANE_2(), ModelAPI_AttributeSelection, /** Plane for intersection */, - intersectionPlane3, ConstructionPlugin_Point::INTERSECTION_PLANE_3(), ModelAPI_AttributeSelection, /** Plane for intersection */, - useOffset, ConstructionPlugin_Point::USE_OFFSET(), ModelAPI_AttributeString, /** Use offset */, - offset, ConstructionPlugin_Point::OFFSET(), ModelAPI_AttributeDouble, /** Offset */, - reverseOffset, ConstructionPlugin_Point::REVERSE_OFFSET(), ModelAPI_AttributeBoolean, /** Reverse offset */, - edge, ConstructionPlugin_Point::EDGE(), ModelAPI_AttributeSelection, /** Edge */, - offsetType, ConstructionPlugin_Point::OFFSET_TYPE(), ModelAPI_AttributeString, /** Type of the offset on edge */, - distance, ConstructionPlugin_Point::DISTANCE(), ModelAPI_AttributeDouble, /** Distance */, - ratio, ConstructionPlugin_Point::RATIO(), ModelAPI_AttributeDouble, /** Ratio */, - reverse, ConstructionPlugin_Point::REVERSE(), ModelAPI_AttributeBoolean, /** Reverse */, - poinToProject, ConstructionPlugin_Point::POINT_TO_PROJECT(), ModelAPI_AttributeSelection, /** Point to project*/, - projectionType, ConstructionPlugin_Point::PROJECTION_TYPE(), ModelAPI_AttributeString, /** Type of the point projection */, - faceForPointProjection, ConstructionPlugin_Point::FACE_FOR_POINT_PROJECTION(), ModelAPI_AttributeSelection, /** Face for point projection */, - edgeForPointProjection, ConstructionPlugin_Point::EDGE_FOR_POINT_PROJECTION(), ModelAPI_AttributeSelection, /** Edge for point projection */, - geometricalPropertyType, ConstructionPlugin_Point::GEOMETRICAL_PROPERTY_TYPE(), ModelAPI_AttributeString, /** Type of the geometrical property */, - objectForCenterOfGravity, ConstructionPlugin_Point::OBJECT_FOR_CENTER_OF_GRAVITY(), ModelAPI_AttributeSelection, /** Object for center of gravity */, - objectForCenterOfCircle, ConstructionPlugin_Point::OBJECT_FOR_CENTER_OF_CIRCLE(), ModelAPI_AttributeSelection, /** Object for center of circle */) + point, ConstructionPlugin_Point::POINT3D(), + GeomDataAPI_Point, /** Point attribute */, + creationMethod, ConstructionPlugin_Point::CREATION_METHOD(), + ModelAPI_AttributeString, /** Creation method */, + intersectionType, ConstructionPlugin_Point::INTERSECTION_TYPE(), + ModelAPI_AttributeString, /** Type of the intersection */, + intersectionLine1, ConstructionPlugin_Point::INTERSECTION_LINE_1(), + ModelAPI_AttributeSelection, /** Line for intersection */, + intersectionLine2, ConstructionPlugin_Point::INTERSECTION_LINE_2(), + ModelAPI_AttributeSelection, /** Line for intersection */, + intersectionLine, ConstructionPlugin_Point::INTERSECTION_LINE(), + ModelAPI_AttributeSelection, /** Line for intersection */, + intersectionPlane, ConstructionPlugin_Point::INTERSECTION_PLANE(), + ModelAPI_AttributeSelection, /** Plane for intersection */, + intersectionPlane1, ConstructionPlugin_Point::INTERSECTION_PLANE_1(), + ModelAPI_AttributeSelection, /** Plane for intersection */, + intersectionPlane2, ConstructionPlugin_Point::INTERSECTION_PLANE_2(), + ModelAPI_AttributeSelection, /** Plane for intersection */, + intersectionPlane3, ConstructionPlugin_Point::INTERSECTION_PLANE_3(), + ModelAPI_AttributeSelection, /** Plane for intersection */, + useOffset, ConstructionPlugin_Point::USE_OFFSET(), + ModelAPI_AttributeString, /** Use offset */, + offset, ConstructionPlugin_Point::OFFSET(), + ModelAPI_AttributeDouble, /** Offset */, + reverseOffset, ConstructionPlugin_Point::REVERSE_OFFSET(), + ModelAPI_AttributeBoolean, /** Reverse offset */, + edge, ConstructionPlugin_Point::EDGE(), + ModelAPI_AttributeSelection, /** Edge */, + offsetType, ConstructionPlugin_Point::OFFSET_TYPE(), + ModelAPI_AttributeString, /** Type of the offset on edge */, + distance, ConstructionPlugin_Point::DISTANCE(), + ModelAPI_AttributeDouble, /** Distance */, + ratio, ConstructionPlugin_Point::RATIO(), + ModelAPI_AttributeDouble, /** Ratio */, + reverse, ConstructionPlugin_Point::REVERSE(), + ModelAPI_AttributeBoolean, /** Reverse */, + pointToProject, ConstructionPlugin_Point::POINT_TO_PROJECT(), + ModelAPI_AttributeSelection, /** Point to project*/, + projectionType, ConstructionPlugin_Point::PROJECTION_TYPE(), + ModelAPI_AttributeString, /** Type of the point projection */, + faceForPointProjection, ConstructionPlugin_Point::FACE_FOR_POINT_PROJECTION(), + ModelAPI_AttributeSelection, /** Face for point projection */, + edgeForPointProjection, ConstructionPlugin_Point::EDGE_FOR_POINT_PROJECTION(), + ModelAPI_AttributeSelection, /** Edge for point projection */, + geometricalPropertyType, ConstructionPlugin_Point::GEOMETRICAL_PROPERTY_TYPE(), + ModelAPI_AttributeString, /** Type of the geometrical property */, + objectForCenterOfGravity, ConstructionPlugin_Point::OBJECT_FOR_CENTER_OF_GRAVITY(), + ModelAPI_AttributeSelection, /** Object for center of gravity */, + objectForCenterOfCircle, ConstructionPlugin_Point::OBJECT_FOR_CENTER_OF_CIRCLE(), + ModelAPI_AttributeSelection, /** Object for center of circle */) /// Set point values. CONSTRUCTIONAPI_EXPORT @@ -211,4 +237,10 @@ PointPtr addPoint(const std::shared_ptr & thePart, const ModelHighAPI_Selection& theObject, const bool theIsCircularEdge = false); +/// \ingroup CPPHighAPI +/// \brief Create Point feature by coordinates using the selected vertex. +CONSTRUCTIONAPI_EXPORT +PointPtr addPointXYZ(const std::shared_ptr & thePart, + const ModelHighAPI_Selection& theObject); + #endif /* SRC_CONSTRUCTIONAPI_CONSTRUCTIONAPI_POINT_H_ */