From 9f4ecadc2f1bdfbfdd26dac982c1aec671fcfd93 Mon Sep 17 00:00:00 2001 From: mpv Date: Mon, 28 Jul 2014 18:36:55 +0400 Subject: [PATCH] Make sketch arc also produce 2 results: crenter point and arc --- src/SketchPlugin/SketchPlugin_Arc.cpp | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/SketchPlugin/SketchPlugin_Arc.cpp b/src/SketchPlugin/SketchPlugin_Arc.cpp index d66b52dbe..542ed47c5 100644 --- a/src/SketchPlugin/SketchPlugin_Arc.cpp +++ b/src/SketchPlugin/SketchPlugin_Arc.cpp @@ -48,7 +48,13 @@ void SketchPlugin_Arc::execute() aSketch->to3D(aCenterAttr->x(), aCenterAttr->y())); // make a visible point boost::shared_ptr aCenterPointShape = GeomAlgoAPI_PointBuilder::point(aCenter); - aShapes.push_back(aCenterPointShape); + //aShapes.push_back(aCenterPointShape); + boost::shared_ptr aConstr1 = + document()->createConstruction(data(), 0); + aConstr1->setShape(aCenterPointShape); + aConstr1->setIsInHistory(false); + setResult(aConstr1, 0); + // make a visible circle boost::shared_ptr aNDir = @@ -75,9 +81,16 @@ void SketchPlugin_Arc::execute() boost::shared_ptr aCircleShape = GeomAlgoAPI_EdgeBuilder::lineCircleArc(aCenter, aStartPoint, aEndPoint, aNormal); - if (aCircleShape) - aShapes.push_back(aCircleShape); + if (aCircleShape) { + boost::shared_ptr aConstr2 = + document()->createConstruction(data(), 1); + aConstr2->setShape(aCircleShape); + aConstr2->setIsInHistory(false); + setResult(aConstr2, 1); + //aShapes.push_back(aCircleShape); + } } + /* boost::shared_ptr aCompound = GeomAlgoAPI_CompoundBuilder::compound(aShapes); // store the result boost::shared_ptr aConstr = @@ -85,6 +98,7 @@ void SketchPlugin_Arc::execute() aConstr->setShape(aCompound); aConstr->setIsInHistory(false); setResult(aConstr); + */ } } } -- 2.39.2