2 #ifndef HYDROData_Zone_HeaderFile
3 #define HYDROData_Zone_HeaderFile
5 #include <HYDROData_Domain.h>
7 class Handle(HYDROData_Polyline);
9 DEFINE_STANDARD_HANDLE(HYDROData_Zone, HYDROData_Domain)
12 /**\class HYDROData_Zone
13 * \brief Class that stores/retreives information about the 2d face.
15 class HYDROData_Zone : public HYDROData_Domain
20 * Enumeration of tags corresponding to the persistent object parameters.
24 DataTag_First = HYDROData_Domain::DataTag_First + 100, ///< first tag, to reserve
25 DataTag_Polyline, ///< reference polyline
29 DEFINE_STANDARD_RTTI(HYDROData_Zone);
32 * Returns the kind of this object. Must be redefined in all objects of known type.
34 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const { return KIND_ZONE; }
37 * Dump object to Python script representation.
39 HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
43 * Sets reference polyline object for zone.
45 HYDRODATA_EXPORT virtual void SetPolyline( const Handle(HYDROData_Polyline)& thePolyline );
48 * Returns reference polyline object of zone.
50 HYDRODATA_EXPORT virtual Handle(HYDROData_Polyline) GetPolyline() const;
53 * Remove reference polyline object of zone.
55 HYDRODATA_EXPORT virtual void RemovePolyline();
59 * Returns data of object wrapped to QVariant.
60 * Reimplemented to wrap and return saved 2d polyline.
62 //HYDRODATA_EXPORT virtual QVariant GetDataVariant();
65 * Returns the shape of the the object (redefined method).
67 HYDRODATA_EXPORT TopoDS_Face Face() const;
71 friend class HYDROData_Iterator;
74 * Creates new object in the internal data structure. Use higher level objects
75 * to create objects with real content.
80 * Destructs properties of the object and object itself, removes it from the document.
85 * Returns id for creation of object in python scripting.
87 virtual QString getPythonKindId() const;