OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimAnnotationMultiPolyLineObject.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 // Description:
7 //
8 //*************************************************************************
9 // $Id: ossimAnnotationMultiPolyLineObject.h 15766 2009-10-20 12:37:09Z gpotts $
10 #ifndef ossimAnnotationMultiPolyLineObject_HEADER
11 #define ossimAnnotationMultiPolyLineObject_HEADER
12 
14 #include <ossim/base/ossimIpt.h>
16 
18 {
19 public:
21  ossimAnnotationMultiPolyLineObject(const vector<ossimPolyLine>& multiPoly,
22  unsigned char r,
23  unsigned char g,
24  unsigned char b,
25  long thickness);
26 
28 
29  virtual ossimObject* dup()const;
30 
31  virtual void applyScale(double x,
32  double y);
33  virtual void draw(ossimRgbImage& anImage)const;
34  virtual bool intersects(const ossimDrect& rect)const;
35 
36  virtual ossimAnnotationObject* getNewClippedObject(const ossimDrect& rect)const;
37  virtual std::ostream& print(std::ostream& out)const;
38  virtual void getBoundingRect(ossimDrect& rect)const;
39  virtual void addPolyLine(const ossimPolyLine& poly);
40  virtual void addPoint(ossim_uint32 polygonIndex, const ossimDpt& pt);
41 
42  virtual void setMultiPolyLine(const vector<ossimPolyLine>& multiPoly);
43  virtual void computeBoundingRect();
44  virtual bool isPointWithin(const ossimDpt& imagePoint)const;
45 
46  const std::vector<ossimPolyLine>& getMultiPolyLine()const;
47  std::vector<ossimPolyLine>& getMultiPolyLine();
48 protected:
50  vector<ossimPolyLine> theMultiPolyLine;
52 
54 };
55 
56 #endif
ossim_uint32 x
virtual void draw(ossimRgbImage &anImage) const =0
#define OSSIMDLLEXPORT
virtual bool intersects(const ossimDrect &rect) const =0
ossim_uint32 y
virtual ossimAnnotationObject * getNewClippedObject(const ossimDrect &rect) const =0
virtual std::ostream & print(std::ostream &out) const
Generic print method.
virtual ossimDrect getBoundingRect() const
#define TYPE_DATA
Definition: ossimRtti.h:339
unsigned int ossim_uint32
virtual void applyScale(double x, double y)=0
virtual bool isPointWithin(const ossimDpt &imagePoint) const
virtual ossimObject * dup() const
Definition: ossimObject.cpp:29
virtual void computeBoundingRect()=0
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23