X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSketchPlugin%2FSketchPlugin_MacroCircle.cpp;h=b1528ae5aaa8f6b1182fdf5a69d398e5cc6ca6b7;hb=4d139bda8e931e65bf1a63b12e6b13d26ae9b205;hp=5a3c14cb936796202f3eb7663883ff68bea606e3;hpb=dc0da26d3d533d2966120ac1d9e638f93fc407c1;p=modules%2Fshaper.git diff --git a/src/SketchPlugin/SketchPlugin_MacroCircle.cpp b/src/SketchPlugin/SketchPlugin_MacroCircle.cpp index 5a3c14cb9..b1528ae5a 100644 --- a/src/SketchPlugin/SketchPlugin_MacroCircle.cpp +++ b/src/SketchPlugin/SketchPlugin_MacroCircle.cpp @@ -1,4 +1,4 @@ -// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// Copyright (C) 2014-2022 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 // #include "SketchPlugin_MacroCircle.h" @@ -127,7 +126,6 @@ std::string SketchPlugin_MacroCircle::processEvent( std::shared_ptr aReentrantMessage = std::dynamic_pointer_cast(theMessage); if (aReentrantMessage.get()) { - FeaturePtr aCreatedFeature = aReentrantMessage->createdFeature(); std::string aCircleType = aReentrantMessage->typeOfCreation(); string(CIRCLE_TYPE())->setValue(aCircleType); @@ -290,10 +288,10 @@ void SketchPlugin_MacroCircle::fillByThreePoints() aCircBuilder.addPassingPoint(aPassedPoint); else { aCircBuilder.addTangentCurve(aTangentCurve); - AttributePoint2DPtr aPassedPoint = + AttributePoint2DPtr aPassedPointAttr = std::dynamic_pointer_cast(aPassedAttr); - if (aPassedPoint) - aCircBuilder.setClosestPoint(aPassedPoint->pnt()); + if (aPassedPointAttr) + aCircBuilder.setClosestPoint(aPassedPointAttr->pnt()); } } @@ -390,11 +388,14 @@ AISObjectPtr SketchPlugin_MacroCircle::getAISObject(AISObjectPtr thePrevious) anAIS.reset(new GeomAPI_AISObject()); } anAIS->createShape(aCompound); + + // Modify attributes + SketchPlugin_Tools::customizeFeaturePrs(anAIS, boolean(AUXILIARY_ID())->value()); + return anAIS; } void SketchPlugin_MacroCircle::attributeChanged(const std::string& theID) { - double aRadius = 0.0; // If circle type switched reset all attributes. if(theID == CIRCLE_TYPE()) { SketchPlugin_Tools::resetAttribute(this, CENTER_POINT_ID());