2 #ifndef HYDROData_Zone_HeaderFile
3 #define HYDROData_Zone_HeaderFile
5 #include <HYDROData_Domain.h>
7 #include <QPainterPath>
8 class Handle(HYDROData_Polyline);
10 DEFINE_STANDARD_HANDLE(HYDROData_Zone, HYDROData_Domain)
13 /**\class HYDROData_Zone
14 * \brief Class that stores/retreives information about the 2d face.
16 class HYDROData_Zone : public HYDROData_Domain
21 * Enumeration of tags corresponding to the persistent object parameters.
25 DataTag_First = HYDROData_Domain::DataTag_First + 100, ///< first tag, to reserve
26 DataTag_Polyline, ///< reference polyline
30 DEFINE_STANDARD_RTTI(HYDROData_Zone);
33 * Returns the kind of this object. Must be redefined in all objects of known type.
35 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_ZONE; }
38 * Dump object to Python script representation.
40 HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
44 * Sets reference polyline object for zone.
46 HYDRODATA_EXPORT virtual void SetPolyline( const Handle(HYDROData_Polyline)& thePolyline );
49 * Returns reference polyline object of zone.
51 HYDRODATA_EXPORT virtual Handle(HYDROData_Polyline) GetPolyline() const;
54 * Remove reference polyline object of zone.
56 HYDRODATA_EXPORT virtual void RemovePolyline();
60 * Returns data of object wrapped to QVariant.
61 * Reimplemented to wrap and return saved 2d polyline.
63 //HYDRODATA_EXPORT virtual QVariant GetDataVariant();
66 * Returns the painter path. The painter path is construct by polyline
68 HYDRODATA_EXPORT QPainterPath GetPainterPath() const;
73 friend class HYDROData_Iterator;
76 * Creates new object in the internal data structure. Use higher level objects
77 * to create objects with real content.
82 * Destructs properties of the object and object itself, removes it from the document.
87 * Returns id for creation of object in python scripting.
89 virtual QString getPythonKindId() const;