#include <SketchPlugin_IntersectionPoint.h>
#include <SketchPlugin_Circle.h>
#include <SketchPlugin_Arc.h>
+#include <SketchPlugin_BSpline.h>
+#include <SketchPlugin_BSplinePeriodic.h>
#include <SketchPlugin_Projection.h>
#include <SketchPlugin_ConstraintAngle.h>
#include <SketchPlugin_ConstraintCoincidence.h>
#include <SketchPlugin_ConstraintTangent.h>
#include <SketchPlugin_ConstraintVertical.h>
#include <SketchPlugin_MacroArc.h>
+#include <SketchPlugin_MacroBSpline.h>
#include <SketchPlugin_MacroCircle.h>
#include <SketchPlugin_MultiRotation.h>
#include <SketchPlugin_MultiTranslation.h>
new SketchPlugin_SketchFeatureValidator);
aFactory->registerValidator("SketchPlugin_MultiRotationAngleValidator",
new SketchPlugin_MultiRotationAngleValidator);
+ aFactory->registerValidator("SketchPlugin_BSplineValidator",
+ new SketchPlugin_BSplineValidator);
// register this plugin
ModelAPI_Session::get()->registerPlugin(this);
return FeaturePtr(new SketchPlugin_Circle);
} else if (theFeatureID == SketchPlugin_Arc::ID()) {
return FeaturePtr(new SketchPlugin_Arc);
+ } else if (theFeatureID == SketchPlugin_BSpline::ID()) {
+ return FeaturePtr(new SketchPlugin_BSpline);
+ } else if (theFeatureID == SketchPlugin_BSplinePeriodic::ID()) {
+ return FeaturePtr(new SketchPlugin_BSplinePeriodic);
} else if (theFeatureID == SketchPlugin_Projection::ID()) {
return FeaturePtr(new SketchPlugin_Projection);
} else if (theFeatureID == SketchPlugin_ConstraintCoincidence::ID()) {
return FeaturePtr(new SketchPlugin_Trim);
} else if (theFeatureID == SketchPlugin_MacroArc::ID()) {
return FeaturePtr(new SketchPlugin_MacroArc);
+ } else if (theFeatureID == SketchPlugin_MacroBSpline::ID()) {
+ return FeaturePtr(new SketchPlugin_MacroBSpline);
+ } else if (theFeatureID == SketchPlugin_MacroBSplinePeriodic::ID()) {
+ return FeaturePtr(new SketchPlugin_MacroBSplinePeriodic);
} else if (theFeatureID == SketchPlugin_MacroCircle::ID()) {
return FeaturePtr(new SketchPlugin_MacroCircle);
} else if (theFeatureID == SketchPlugin_Ellipse::ID()) {
aMsg->setState(SketchPlugin_Line::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Circle::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Arc::ID(), aHasSketchPlane);
+ aMsg->setState(SketchPlugin_BSpline::ID(), aHasSketchPlane);
+ aMsg->setState(SketchPlugin_BSplinePeriodic::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Ellipse::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_EllipticArc::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Projection::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Split::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_Trim::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_MacroArc::ID(), aHasSketchPlane);
+ aMsg->setState(SketchPlugin_MacroBSpline::ID(), aHasSketchPlane);
+ aMsg->setState(SketchPlugin_MacroBSplinePeriodic::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_MacroCircle::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_MacroEllipse::ID(), aHasSketchPlane);
aMsg->setState(SketchPlugin_MacroEllipticArc::ID(), aHasSketchPlane);