+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
+
#include "SketchPlugin_Feature.h"
#include "SketchPlugin_Sketch.h"
#include <ModelAPI_Document.h>
#include <ModelAPI_AttributeRefList.h>
#include <ModelAPI_ResultConstruction.h>
+/// It is important.
+///
+/// Before writing a new method implementation in this file, please check the next rule:
+/// exported public methods must not be implemented in this source file. They should be inline and
+/// placed in the header file.
+/// Because it leads to the runtime problem on the Linux OS.
+///
+/// The reason is that this is an abstract interface. An interface of this class can be used in
+/// outside libraries through casting without a link to the current library.
+
SketchPlugin_Feature::SketchPlugin_Feature()
{
mySketch = 0;
return mySketch;
}
-AISObjectPtr SketchPlugin_Feature::simpleAISObject(std::shared_ptr<ModelAPI_Result> theRes,
- AISObjectPtr thePrevious)
-{
- std::shared_ptr<ModelAPI_ResultConstruction> aConstr = std::dynamic_pointer_cast<
- ModelAPI_ResultConstruction>(theRes);
-
- std::shared_ptr<GeomAPI_Shape> aPreview;
- if (aConstr)
- aPreview = aConstr->shape();
-
- AISObjectPtr aResult = thePrevious;
- if (!aResult)
- aResult = AISObjectPtr(new GeomAPI_AISObject());
- aResult->createShape(aPreview);
- return aResult;
-}