OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimGeoAnnotationMultiEllipseObject.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts
6 //
7 //*************************************************************************
8 // $Id: ossimGeoAnnotationMultiEllipseObject.h 23239 2015-04-08 01:02:44Z gpotts $
9 #ifndef ossimGeoAnnotationMultiEllipseObject_HEADER
10 #define ossimGeoAnnotationMultiEllipseObject_HEADER
12 #include <vector>
15 {
16 public:
19  ossimGeoAnnotationMultiEllipseObject(const std::vector<ossimGpt>& centerPoints,
20  const ossimDpt& widthHeight,
21  bool enableFill = false,
22  unsigned char r = 255,
23  unsigned char g = 255,
24  unsigned char b = 255,
25  long thickness = 1);
27  bool enableFill = false,
28  unsigned char r = 255,
29  unsigned char g = 255,
30  unsigned char b = 255,
31  long thickness = 1);
33 
34  virtual ossimObject* dup()const;
35 
36  virtual ossimAnnotationObject* getNewClippedObject(const ossimDrect& rect)const;
37 
38  virtual void transform(ossimImageGeometry* projection);
39 
40  virtual void applyScale(double x, double y);
41 
42  virtual void draw(ossimRgbImage& anImage)const;
43  virtual bool intersects(const ossimDrect& rect)const;
44 
45  virtual void addPoint(const ossimGpt& point);
46 
47  virtual void setColor(unsigned char r,
48  unsigned char g,
49  unsigned char b);
50  virtual void setThickness(ossim_uint8 thickness);
51 
52  virtual void setPoint(int i, const ossimGpt& point);
53 
54  virtual void setWidthHeight(const ossimDpt& widthHeight);
55  virtual void resize(ossim_uint32 newSize);
56 
57  virtual void setFillFlag(bool fillFlag);
58  virtual std::ostream& print(std::ostream& out)const;
59  virtual void getBoundingRect(ossimDrect& rect)const;
60  virtual void computeBoundingRect();
61 
62 protected:
64 
65  std::vector<ossimGpt> thePointList;
68 };
69 
70 #endif /* #ifndef ossimGeoAnnotationMultiEllipseObject_HEADER */
ossim_uint32 x
virtual void draw(ossimRgbImage &anImage) const =0
virtual void setThickness(ossim_uint8 thickness)
virtual bool intersects(const ossimDrect &rect) const =0
ossim_uint32 y
virtual ossimAnnotationObject * getNewClippedObject(const ossimDrect &rect) const =0
virtual void transform(ossimImageGeometry *projection)=0
virtual std::ostream & print(std::ostream &out) const
Generic print method.
virtual ossimDrect getBoundingRect() const
unsigned int ossim_uint32
virtual void setColor(ossim_uint8 r, ossim_uint8 g, ossim_uint8 b)
virtual void applyScale(double x, double y)=0
ossimAnnotationMultiEllipseObject * theProjectedObject
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
#define OSSIM_DLL
virtual ossimObject * dup() const
Definition: ossimObject.cpp:29
virtual void computeBoundingRect()=0
unsigned char ossim_uint8
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23