20 #ifndef SketchPlugin_ConstraintMiddle_H_
21 #define SketchPlugin_ConstraintMiddle_H_
23 #include "SketchPlugin.h"
24 #include <SketchPlugin_Sketch.h>
25 #include "SketchPlugin_ConstraintBase.h"
40 inline static const std::string&
ID()
42 static const std::string MY_CONSTRAINT_MIDDLE_ID(
"SketchConstraintMiddle");
43 return MY_CONSTRAINT_MIDDLE_ID;
49 static const std::string MY_TYPE_ID(
"middle_type");
56 static const std::string MY_TYPE_ID(
"middle_type_by_line_and_point");
63 static const std::string MY_TYPE_ID(
"middle_type_by_line");
70 static const std::string MY_POINT_REF(
"point");
75 SKETCHPLUGIN_EXPORT
virtual const std::string&
getKind()
85 SKETCHPLUGIN_EXPORT
virtual void execute();
91 SKETCHPLUGIN_EXPORT
virtual AISObjectPtr
getAISObject(AISObjectPtr thePrevious);
99 std::shared_ptr<ModelAPI_Feature> myPoint;
100 bool myBlockAttribInit;
Feature function that represents the particular functionality of this operation.
Definition: ModelAPI_Feature.h:41
Feature for creation of a new constraint between other features.
Definition: SketchPlugin_ConstraintBase.h:56
Feature for creation of a new constraint which places a point in the middle of a line.
Definition: SketchPlugin_ConstraintMiddle.h:37
static const std::string & MIDDLE_TYPE()
Middle constraint kind.
Definition: SketchPlugin_ConstraintMiddle.h:47
virtual AISObjectPtr getAISObject(AISObjectPtr thePrevious)
Returns the AIS preview.
Definition: SketchPlugin_ConstraintMiddle.cpp:173
static const std::string & MIDDLE_TYPE_BY_LINE_AND_POINT()
Middle constraint type by line and point.
Definition: SketchPlugin_ConstraintMiddle.h:54
virtual void attributeChanged(const std::string &theID)
Called on change of any argument-attribute of this object.
Definition: SketchPlugin_ConstraintMiddle.cpp:150
virtual void execute()
Creates a new part document if needed.
Definition: SketchPlugin_ConstraintMiddle.cpp:132
static const std::string & POINT_REF_ID()
Created points for middle type by line.
Definition: SketchPlugin_ConstraintMiddle.h:68
SketchPlugin_ConstraintMiddle()
Use plugin manager for features creation.
Definition: SketchPlugin_ConstraintMiddle.cpp:51
static const std::string & ID()
Parallel constraint kind.
Definition: SketchPlugin_ConstraintMiddle.h:40
virtual void initAttributes()
Request for initialization of data model of the feature: adding all attributes.
Definition: SketchPlugin_ConstraintMiddle.cpp:93
virtual const std::string & getKind()
Returns the kind of a feature.
Definition: SketchPlugin_ConstraintMiddle.h:75
static const std::string & MIDDLE_TYPE_BY_LINE()
Middle constraint type by line.
Definition: SketchPlugin_ConstraintMiddle.h:61