Salome HOME
Merge branch 'BR_LCM_COMP' into BR_LAND_COVER_MAP
[modules/hydro.git] / src / HYDROPy / HYDROData_Obstacle.sip
1 // Copyright (C) 2014-2015  EDF-R&D
2 // This library is free software; you can redistribute it and/or
3 // modify it under the terms of the GNU Lesser General Public
4 // License as published by the Free Software Foundation; either
5 // version 2.1 of the License, or (at your option) any later version.
6 //
7 // This library is distributed in the hope that it will be useful,
8 // but WITHOUT ANY WARRANTY; without even the implied warranty of
9 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10 // Lesser General Public License for more details.
11 //
12 // You should have received a copy of the GNU Lesser General Public
13 // License along with this library; if not, write to the Free Software
14 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
15 //
16 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
17 //
18
19 %ExportedHeaderCode
20 #include <HYDROData_Obstacle.h>
21 %End
22
23 class HYDROData_Obstacle : public HYDROData_ArtificialObject
24 {
25 %TypeHeaderCode
26 #include <HYDROData_Obstacle.h>
27 %End
28
29 public:
30   /**
31    * Returns default filling color for new obstacle.
32    */
33   virtual QColor DefaultFillingColor() const;
34
35   /**
36    * Returns default border color for new obstacle.
37    */
38   virtual QColor DefaultBorderColor() const;
39
40 public:
41
42   /**
43    * Imports shape from file containing geometrical object and sets this
44    * shape as the obstacle shape.
45    * The supported file types:
46    *  - BREP
47    *  - IGES
48    *  - STEP
49    *  - ACIS
50    * \param theFilePath the path to file
51    * \return \c true if file has been successfully read
52    */
53   bool ImportFromFile( const QString& theFilePath );
54
55
56   /**
57    * Stores the file path of the imported file.
58    * \param theFilePath file path
59    */
60   void SetFilePath(const QString& theFilePath);
61
62   /**
63    * Returns the imported file path.
64    */
65   QString GetFilePath() const;
66
67
68 public:
69
70   /**
71    * Imports shape from IOR.
72    * \param theIOR the IOR of Geom object
73    * \return \c true if shape has been successfully imported
74    */
75   bool ImportFromGeomIOR( const TCollection_AsciiString& theIOR );
76
77   /**
78    * Stores the study entry of the imported GEOM object.
79    * \param theEntry GEOM object entry
80    */
81   void SetGeomObjectEntry( const TCollection_AsciiString& theEntry );
82
83   /**
84    * Returns the imported GEOM object entry.
85    */
86   TCollection_AsciiString GetGeomObjectEntry() const;
87
88
89 public:
90
91   /**
92    * Translate the obstacle to the given distance.
93    */
94   void Translate( const double theDx, const double theDy, const double theDz );
95
96
97 protected:
98
99   /**
100    * Creates new object in the internal data structure. Use higher level objects 
101    * to create objects with real content.
102    */
103   HYDROData_Obstacle();
104
105   /**
106    * Destructs properties of the object and object itself, removes it from the document.
107    */
108   virtual ~HYDROData_Obstacle();
109 };