OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimGeoPolyCutter.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts (gpotts@imagelinks)
6 //
7 //*************************************************************************
8 // $Id: ossimGeoPolyCutter.h 22303 2013-07-04 18:15:52Z dburken $
9 #ifndef ossimGeoPolyCutter_HEADER
10 #define ossimGeoPolyCutter_HEADER 1
14 #include <vector>
15 
16 class ossimImageData;
17 class ossimProjection;
18 
89  public ossimViewInterface
90 {
91 public:
93 
94  virtual bool saveState(ossimKeywordlist& kwl,
95  const char* prefix=0)const;
96 
101  virtual bool loadState(const ossimKeywordlist& kwl,
102  const char* prefix=0);
103 
109  virtual void setPolygon(const vector<ossimDpt>& polygon,
110  ossim_uint32 i = 0);
111 
117  virtual void setPolygon(const vector<ossimIpt>& polygon,
118  ossim_uint32 i = 0);
119 
125  virtual void setPolygon(const vector<ossimGpt>& polygon,
126  ossim_uint32 i = 0);
127 
128  virtual void setPolygon(const ossimGeoPolygon& polygon,
129  ossim_uint32 i = 0);
134  virtual void addPolygon(const vector<ossimIpt>& polygon);
135 
140  virtual void addPolygon(const vector<ossimDpt>& polygon);
141 
145  virtual void addPolygon(const vector<ossimGpt>& polygon);
146 
150  virtual void addPolygon(const ossimPolygon& polygon);
151 
155  virtual void addPolygon(const ossimGeoPolygon& polygon);
156 
161  virtual void setNumberOfPolygons(ossim_uint32 count);
162 
168  virtual std::vector<ossimGeoPolygon>& getGeoPolygonList();
169 
170  virtual const std::vector<ossimGeoPolygon>& getGeoPolygonList()const;
171 
172 
177  virtual bool setView(ossimObject* baseObject);
178 
182  virtual ossimObject* getView();
183 
187  virtual const ossimObject* getView()const;
188 
189 protected:
190  virtual ~ossimGeoPolyCutter();
191 
197  void invertPolygon(int polygonNumber);
198 
202  void transformVertices();
203 
208  void transformVertices(int i);
209 
214 
215  std::vector<ossimGeoPolygon> m_geoPolygonList;
216 
217 
218 TYPE_DATA
219 };
220 
221 #endif /* #ifndef ossimGeoPolyCutter_HEADER */
Represents serializable keyword/value map.
std::vector< ossimGeoPolygon > m_geoPolygonList
virtual void addPolygon(const vector< ossimIpt > &polygon)
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
ossimRefPtr< ossimImageGeometry > m_viewGeometry
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save the state of an object to a keyword list.
#define TYPE_DATA
Definition: ossimRtti.h:339
virtual void setPolygon(const vector< ossimDpt > &polygon, ossim_uint32 i=0)
unsigned int ossim_uint32
#define OSSIM_DLL
virtual bool setView(ossimObject *baseObject)=0
virtual void setNumberOfPolygons(ossim_uint32 count)
virtual ossimObject * getView()=0