X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_ResultPrs.cpp;h=73a492df92ba0e1b89e56baedbbdd7bfa1952e3f;hb=b263f22d52ccb191c4fad8f7455d9714a3024514;hp=2f85e9a992f03f38b128adedf969a5700818f3b9;hpb=0b2bc8c3579282aa331867fa79e41c846d9838d4;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ResultPrs.cpp b/src/ModuleBase/ModuleBase_ResultPrs.cpp old mode 100644 new mode 100755 index 2f85e9a99..73a492df9 --- a/src/ModuleBase/ModuleBase_ResultPrs.cpp +++ b/src/ModuleBase/ModuleBase_ResultPrs.cpp @@ -5,21 +5,23 @@ // Author: Vitaly SMETANNIKOV #include "ModuleBase_ResultPrs.h" +#include "ModuleBase_Tools.h" #include #include #include #include -#include +#include +#include #include #include -IMPLEMENT_STANDARD_HANDLE(ModuleBase_ResultPrs, AIS_Shape); -IMPLEMENT_STANDARD_RTTIEXT(ModuleBase_ResultPrs, AIS_Shape); +IMPLEMENT_STANDARD_HANDLE(ModuleBase_ResultPrs, ViewerData_AISShape); +IMPLEMENT_STANDARD_RTTIEXT(ModuleBase_ResultPrs, ViewerData_AISShape); ModuleBase_ResultPrs::ModuleBase_ResultPrs(ResultPtr theResult) - : AIS_Shape(TopoDS_Shape()), myResult(theResult), myIsSketchMode(false) + : ViewerData_AISShape(TopoDS_Shape()), myResult(theResult), myIsSketchMode(false) { std::shared_ptr aShapePtr = ModelAPI_Tools::shape(theResult); std::shared_ptr aWirePtr = @@ -31,7 +33,13 @@ ModuleBase_ResultPrs::ModuleBase_ResultPrs(ResultPtr theResult) myIsSketchMode = true; } } - Set(aShapePtr->impl()); + TopoDS_Shape aShape = aShapePtr->impl(); + Set(aShape); + Handle(Prs3d_Drawer) aDrawer = Attributes(); + if (aDrawer->HasOwnPointAspect()) + aDrawer->PointAspect()->SetTypeOfMarker(Aspect_TOM_PLUS); + else + aDrawer->SetPointAspect(new Prs3d_PointAspect(Aspect_TOM_PLUS, Quantity_NOC_YELLOW, 1.)); } @@ -56,6 +64,9 @@ void ModuleBase_ResultPrs::Compute(const Handle(PrsMgr_PresentationManager3d)& t myOriginalShape = aShapePtr->impl(); if (!myOriginalShape.IsNull()) { Set(myOriginalShape); + + // change deviation coefficient to provide more precise circle + ModuleBase_Tools::setDefaultDeviationCoefficient(myOriginalShape, Attributes()); AIS_Shape::Compute(thePresentationManager, thePresentation, theMode); } }