20 #ifndef SRC_CONSTRUCTIONAPI_CONSTRUCTIONAPI_PLANE_H_
21 #define SRC_CONSTRUCTIONAPI_CONSTRUCTIONAPI_PLANE_H_
23 #include "ConstructionAPI.h"
25 #include <ConstructionPlugin_Plane.h>
27 #include <ModelHighAPI_Interface.h>
28 #include <ModelHighAPI_Macro.h>
29 #include <ModelHighAPI_Integer.h>
41 CONSTRUCTIONAPI_EXPORT
45 CONSTRUCTIONAPI_EXPORT
49 const bool theIsReverse,
53 CONSTRUCTIONAPI_EXPORT
61 CONSTRUCTIONAPI_EXPORT
68 CONSTRUCTIONAPI_EXPORT
72 const bool theIsPerpendicular);
75 CONSTRUCTIONAPI_EXPORT
81 CONSTRUCTIONAPI_EXPORT
89 CONSTRUCTIONAPI_EXPORT
130 plane1, ConstructionPlugin_Plane::PLANE1(),
132 plane2, ConstructionPlugin_Plane::PLANE2(),
134 nbcopy, ConstructionPlugin_Plane::NB_COPIES(),
138 CONSTRUCTIONAPI_EXPORT
141 const
bool theIsReverse,
145 CONSTRUCTIONAPI_EXPORT
152 CONSTRUCTIONAPI_EXPORT
158 CONSTRUCTIONAPI_EXPORT
161 const
bool theIsPerpendicular);
164 CONSTRUCTIONAPI_EXPORT
169 CONSTRUCTIONAPI_EXPORT
174 CONSTRUCTIONAPI_EXPORT
181 CONSTRUCTIONAPI_EXPORT
190 CONSTRUCTIONAPI_EXPORT
194 const
bool theIsReverse,
199 CONSTRUCTIONAPI_EXPORT
208 CONSTRUCTIONAPI_EXPORT
216 CONSTRUCTIONAPI_EXPORT
220 const
bool theIsPerpendicular);
224 CONSTRUCTIONAPI_EXPORT
231 CONSTRUCTIONAPI_EXPORT
Interface for Plane feature.
Definition: ConstructionAPI_Plane.h:38
ConstructionAPI_Plane(const std::shared_ptr< ModelAPI_Feature > &theFeature)
Constructor without values.
Definition: ConstructionAPI_Plane.cpp:26
virtual ~ConstructionAPI_Plane()
Destructor.
Definition: ConstructionAPI_Plane.cpp:113
virtual std::shared_ptr< ModelAPI_AttributeString > creationMethod() const
Creation method.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > plane1() const
Plane 1.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > point() const
Point for plane.
Definition: ConstructionAPI_Plane.h:135
virtual void dump(ModelHighAPI_Dumper &theDumper) const
Dump wrapped feature.
Definition: ConstructionAPI_Plane.cpp:218
virtual std::shared_ptr< ModelAPI_AttributeSelection > axis() const
Axis for rotation.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeDouble > C() const
Parameter C for general equation.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeBoolean > reverse() const
Reverse flag.
Definition: ConstructionAPI_Plane.h:135
void setByLineAndPoint(const ModelHighAPI_Selection &theLine, const ModelHighAPI_Selection &thePoint, const bool theIsPerpendicular)
Set by line and point.
Definition: ConstructionAPI_Plane.cpp:163
void setByGeneralEquation(const ModelHighAPI_Double &theA, const ModelHighAPI_Double &theB, const ModelHighAPI_Double &theC, const ModelHighAPI_Double &theD)
Set GeneralEquation parameters of the feature.
Definition: ConstructionAPI_Plane.cpp:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > line() const
Line for plane.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > plane() const
Plane face.
Definition: ConstructionAPI_Plane.h:135
void setByTwoParallelPlanes(const ModelHighAPI_Selection &thePlane1, const ModelHighAPI_Selection &thePlane2)
Set by two parallel planes.
Definition: ConstructionAPI_Plane.cpp:176
virtual std::shared_ptr< ModelAPI_AttributeBoolean > perpendicular() const
Perpendicular flag.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeDouble > B() const
Parameter B for general equation.
Definition: ConstructionAPI_Plane.h:135
void setByRotation(const ModelHighAPI_Selection &thePlane, const ModelHighAPI_Selection &theAxis, const ModelHighAPI_Double &theAngle, const ModelHighAPI_Integer &theNbCopy=ModelHighAPI_Integer(1))
Set by rotation.
Definition: ConstructionAPI_Plane.cpp:201
virtual std::shared_ptr< ModelAPI_AttributeSelection > plane2() const
Plane 2.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > point3() const
Point 3 for plane.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeString > creationMethodByOtherPlane() const
Creation method by other plane.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeInteger > nbcopy() const
Number of copies.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeDouble > A() const
Parameter A for general equation.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > coincidentPoint() const
Coincident point.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeDouble > angle() const
Rotation angle.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > point1() const
Point 1 for plane.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeSelection > point2() const
Point 2 for plane.
Definition: ConstructionAPI_Plane.h:135
virtual std::shared_ptr< ModelAPI_AttributeDouble > D() const
Parameter D for general equation.
Definition: ConstructionAPI_Plane.h:135
void setByFaceAndDistance(const ModelHighAPI_Selection &theFace, const ModelHighAPI_Double &theDistance, const bool theIsReverse, const ModelHighAPI_Integer &theNbCopy=ModelHighAPI_Integer(1))
Set face and distance.
Definition: ConstructionAPI_Plane.cpp:118
void setByThreePoints(const ModelHighAPI_Selection &thePoint1, const ModelHighAPI_Selection &thePoint2, const ModelHighAPI_Selection &thePoint3)
Set by three points.
Definition: ConstructionAPI_Plane.cpp:150
void setByCoincidentToPoint(const ModelHighAPI_Selection &thePlane, const ModelHighAPI_Selection &thePoint)
Set by coincident to point.
Definition: ConstructionAPI_Plane.cpp:188
virtual std::shared_ptr< ModelAPI_AttributeDouble > distance() const
Distance.
Definition: ConstructionAPI_Plane.h:135
static const std::string & REVERSE()
Attribute name for reverse flag.
Definition: ConstructionPlugin_Plane.h:191
static const std::string & DISTANCE()
Attribute name for distance.
Definition: ConstructionPlugin_Plane.h:184
static const std::string & POINT()
Attribute name for point.
Definition: ConstructionPlugin_Plane.h:163
static const std::string & POINT2()
Attribute name for second point.
Definition: ConstructionPlugin_Plane.h:142
static const std::string & AXIS()
Attribute name for axis.
Definition: ConstructionPlugin_Plane.h:205
static const std::string & ID()
Plane kind.
Definition: ConstructionPlugin_Plane.h:58
static const std::string & CREATION_METHOD_BY_OTHER_PLANE_OPTION()
Attribute name for creation method.
Definition: ConstructionPlugin_Plane.h:100
static const std::string & POINT1()
Attribute name for first point.
Definition: ConstructionPlugin_Plane.h:135
static const std::string & POINT3()
Attribute name for third point.
Definition: ConstructionPlugin_Plane.h:149
static const std::string & A()
Attribute name for a parameter for the general equation of a plane (ax+by+cz+d=0)
Definition: ConstructionPlugin_Plane.h:237
static const std::string & LINE()
Attribute name for line.
Definition: ConstructionPlugin_Plane.h:156
static const std::string & C()
Attribute name for c parameter for the general equation of a plane (ax+by+cz+d=0)
Definition: ConstructionPlugin_Plane.h:249
static const std::string & COINCIDENT_POINT()
Attribute name for coincident point.
Definition: ConstructionPlugin_Plane.h:198
static const std::string & PLANE()
Attribute name for selected plane.
Definition: ConstructionPlugin_Plane.h:177
static const std::string & CREATION_METHOD()
Attribute name for creation method.
Definition: ConstructionPlugin_Plane.h:65
static const std::string & PERPENDICULAR()
Attribute name for perpendicular flag.
Definition: ConstructionPlugin_Plane.h:170
static const std::string & B()
Attribute name for b parameter for the general equation of a plane (ax+by+cz+d=0)
Definition: ConstructionPlugin_Plane.h:243
static const std::string & D()
Attribute name for d parameter for the general equation of a plane (ax+by+cz+d=0)
Definition: ConstructionPlugin_Plane.h:255
static const std::string & ANGLE()
Attribute name for angle.
Definition: ConstructionPlugin_Plane.h:212
Attribute that contains boolean value.
Definition: ModelAPI_AttributeBoolean.h:31
Attribute that contains real value with double precision.
Definition: ModelAPI_AttributeDouble.h:34
API for the attribute that contains integer (int).
Definition: ModelAPI_AttributeInteger.h:34
Attribute that contains reference to the sub-shape of some result, the selected shape.
Definition: ModelAPI_AttributeSelection.h:35
API for the attribute that contains std (null terminated) string.
Definition: ModelAPI_AttributeString.h:33
Document for internal data structure of any object storage.
Definition: ModelAPI_Document.h:53
Class for filling ModelAPI_AttributeDouble.
Definition: ModelHighAPI_Double.h:37
Dump engine for the model.
Definition: ModelHighAPI_Dumper.h:81
Class for filling ModelAPI_AttributeInteger.
Definition: ModelHighAPI_Integer.h:36
Base class for feature interfaces.
Definition: ModelHighAPI_Interface.h:46
Class for filling ModelAPI_AttributeSelection.
Definition: ModelHighAPI_Selection.h:49
PlanePtr addPlane(const std::shared_ptr< ModelAPI_Document > &thePart, const ModelHighAPI_Selection &theFace, const ModelHighAPI_Double &theDistance, const bool theIsReverse, const ModelHighAPI_Integer &theNbCopy=ModelHighAPI_Integer(1))
Create Plane feature.
Definition: ConstructionAPI_Plane.cpp:289