2 #ifndef HYDROData_Domain_HeaderFile
3 #define HYDROData_Domain_HeaderFile
5 #include <HYDROData_Object.h>
10 class Handle(HYDROData_Bathymetry);
12 DEFINE_STANDARD_HANDLE(HYDROData_Domain, HYDROData_Object)
15 /**\class HYDROData_Domain
16 * \brief Class that stores/retreives information about the 2d surface.
18 class HYDROData_Domain : public HYDROData_Object
23 * Enumeration of tags corresponding to the persistent object parameters.
27 DataTag_First = HYDROData_Object::DataTag_First + 100, ///< first tag, to reserve
28 DataTag_Bathymetry, ///< reference bathymetries
29 DataTag_FillingColor, ///< filling color of zone
30 DataTag_BorderColor, ///< border color of zone
34 DEFINE_STANDARD_RTTI(HYDROData_Domain);
37 * Returns the kind of this object. Must be redefined in all objects of known type.
39 HYDRODATA_EXPORT virtual const ObjectKind GetKind() const = 0;
42 * Dump object to Python script representation.
44 HYDRODATA_EXPORT virtual QStringList DumpToPython( MapOfTreatedObjects& theTreatedObjects ) const;
48 * Returns default filling color for new zone.
50 HYDRODATA_EXPORT static QColor DefaultFillingColor();
53 * Sets filling color for zone.
55 HYDRODATA_EXPORT virtual void SetFillingColor( const QColor& theColor );
58 * Returns filling color of zone.
60 HYDRODATA_EXPORT virtual QColor GetFillingColor() const;
64 * Returns default border color for new zone.
66 HYDRODATA_EXPORT static QColor DefaultBorderColor();
69 * Sets border color for zone.
71 HYDRODATA_EXPORT virtual void SetBorderColor( const QColor& theColor );
74 * Returns border color of zone.
76 HYDRODATA_EXPORT virtual QColor GetBorderColor() const;
80 * Returns number of bathymetry objects for zone.
82 HYDRODATA_EXPORT virtual int NbBathymetries() const;
85 * Add reference bathymetry object for zone.
87 HYDRODATA_EXPORT virtual void AddBathymetry( const Handle(HYDROData_Bathymetry)& theBathymetry );
90 * Change reference bathymetry object with given index for zone.
92 HYDRODATA_EXPORT virtual void SetBathymetry( const int theIndex,
93 const Handle(HYDROData_Bathymetry)& theBathymetry );
96 * Returns reference bathymetry object of zone by it index.
98 HYDRODATA_EXPORT virtual Handle(HYDROData_Bathymetry) GetBathymetry( const int theIndex ) const;
101 * Returns list of all reference bathymetry objects of zone.
103 HYDRODATA_EXPORT virtual HYDROData_SequenceOfObjects GetBathymetries() const;
106 * Clear list of bathymetry objects of zone.
108 HYDRODATA_EXPORT virtual void RemoveBathymetries();
111 * Returns data of object wrapped to QVariant.
112 * Reimplemented to wrap and return saved 2d polyline.
114 //HYDRODATA_EXPORT virtual QVariant GetDataVariant();
118 friend class HYDROData_Iterator;
121 * Creates new object in the internal data structure. Use higher level objects
122 * to create objects with real content.
127 * Destructs properties of the object and object itself, removes it from the document.
132 * Returns id for creation of object in python scripting.
134 virtual QString getPythonKindId() const = 0;