X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_MacroArc.h;h=5e9680817b9858db54f46b5ca19a28a920357f87;hb=cdbbde4803e9c320204d537d22af4ac7ef024962;hp=20b42c4629c0cf01ae8dbcbd7bf2fba0aa1b23e9;hpb=b3695c3af5289903f1c0fa01bbb7c40203c5e544;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_MacroArc.h b/src/SketchPlugin/SketchPlugin_MacroArc.h index 20b42c462..5e9680817 100644 --- a/src/SketchPlugin/SketchPlugin_MacroArc.h +++ b/src/SketchPlugin/SketchPlugin_MacroArc.h @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// Copyright (C) 2014-2021 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 SketchPlugin_MacroArc_H_ @@ -73,6 +72,12 @@ class SketchPlugin_MacroArc: public SketchPlugin_SketchEntity, return ID; } + inline static const std::string& ARC_TYPE_BY_TRANSVERSAL_LINE() + { + static const std::string ID("by_transversal_line"); + return ID; + } + /// Central 2D point of the circle which contains the arc inline static const std::string& CENTER_POINT_ID() { @@ -127,6 +132,13 @@ class SketchPlugin_MacroArc: public SketchPlugin_SketchEntity, return ID; } + /// End 2D point of the arc + inline static const std::string& END_POINT_4_ID() + { + static const std::string ID = "end_point_4"; + return ID; + } + inline static const std::string& END_POINT_REF_ID() { static const std::string ID = "end_point_ref"; @@ -152,6 +164,12 @@ class SketchPlugin_MacroArc: public SketchPlugin_SketchEntity, return ID; } + static const std::string& TRANSVERSAL_POINT_ID() + { + static const std::string ID("transversal_point"); + return ID; + } + /// Reversed flag inline static const std::string& REVERSED_ID() { @@ -221,8 +239,9 @@ private: void fillByCenterAndTwoPassed(); /// Set fields for center, start and end points by selected passed points void fillByThreePassedPoints(); - /// Set fields for center, start and end points by selected tangent edge - void fillByTangentEdge(); + /// Set fields for center, start and end points by selected tangent or transversal edge + /// \param theTransversal if \c true, builds transversal arc, otherwise builds tangential arc. + void fillByEdge(bool theTransversal); FeaturePtr createArcFeature();