1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2 // Name : SketchAPI_IntersectionPoint.h
6 // 16/06/16 - Sergey POKHODENKO - Creation of the file
8 #ifndef SRC_SKETCHAPI_SKETCHAPI_INTERSECTIONPOINT_H_
9 #define SRC_SKETCHAPI_SKETCHAPI_INTERSECTIONPOINT_H_
11 //--------------------------------------------------------------------------------------
12 #include "SketchAPI.h"
14 #include <SketchPlugin_IntersectionPoint.h>
16 #include "SketchAPI_SketchEntity.h"
17 //--------------------------------------------------------------------------------------
18 class ModelHighAPI_Selection;
19 //--------------------------------------------------------------------------------------
20 /**\class SketchAPI_IntersectionPoint
22 * \brief Interface for IntersectionPoint feature
24 class SketchAPI_IntersectionPoint : public SketchAPI_SketchEntity
27 /// Constructor without values
29 explicit SketchAPI_IntersectionPoint(const std::shared_ptr<ModelAPI_Feature> & theFeature);
30 /// Constructor with values
32 SketchAPI_IntersectionPoint(const std::shared_ptr<ModelAPI_Feature> & theFeature,
33 const ModelHighAPI_Selection & theExternal);
34 /// Constructor with values
36 SketchAPI_IntersectionPoint(const std::shared_ptr<ModelAPI_Feature> & theFeature,
37 const std::string & theExternalName);
40 virtual ~SketchAPI_IntersectionPoint();
42 INTERFACE_2(SketchPlugin_IntersectionPoint::ID(),
43 coordinates, SketchPlugin_IntersectionPoint::COORD_ID(),
44 GeomDataAPI_Point2D, /** IntersectionPoint coordinates */,
45 externalLine, SketchPlugin_IntersectionPoint::EXTERNAL_LINE_ID(),
46 ModelAPI_AttributeSelection, /** External line */
51 void setByExternalLine(const ModelHighAPI_Selection & theExternalLine);
53 /// Set by external name
55 void setByExternalLineName(const std::string & theExternalLineName);
57 /// Dump wrapped feature
59 virtual void dump(ModelHighAPI_Dumper& theDumper) const;
62 //! Pointer on IntersectionPoint object
63 typedef std::shared_ptr<SketchAPI_IntersectionPoint> IntersectionPointPtr;
65 //--------------------------------------------------------------------------------------
66 //--------------------------------------------------------------------------------------
67 #endif /* SRC_SKETCHAPI_SKETCHAPI_INTERSECTIONPOINT_H_ */