22 computeBoundingRect();
32 theFillEnabled(enableFill)
57 if(rect.
hasNans())
return false;
63 vector<ossimPolygon> result;
87 vector<ossimPolygon> polyListResult;
91 vector<ossimPolygon> tempList;
95 polyListResult.insert(polyListResult.end(),
101 if(polyListResult.size())
113 vector<ossimPolyLine> lineListResult;
114 vector<ossimPolyLine> tempResult;
123 lineListResult.insert(lineListResult.end(),
129 if(lineListResult.size())
164 imageRect.
ul().
y - 10,
165 imageRect.
lr().
x + 10,
166 imageRect.
lr().
y + 10);
180 if(clipRect.clip(start, end))
191 if(clipRect.clip(start, end))
197 else if(vertexCount > 2)
204 end = poly[(j+1)%vertexCount];
205 if(clipRect.clip(start, end))
214 start = poly[vertexCount-1];
219 if(clipRect.clip(start, end))
227 }
while(j < vertexCount);
233 vector<ossimPolygon> result;
236 for(j = 0; j < (int)result.size();++j)
250 out << setw(15)<<setiosflags(ios::left)<<
"type:"<<
getClassName() << endl
251 << setw(15)<<setiosflags(ios::left)<<
"polygons:"<<
theMultiPolygon.size()<<endl
252 << setw(15)<<setiosflags(ios::left)<<
"fill enable: " <<
theFillEnabled << endl;
256 out <<
"____________________________________________________"<<endl
259 out <<
"____________________________________________________"<<endl;
ossim_float64 width() const
virtual void draw(ossimRgbImage &anImage) const
const ossimDpt & ul() const
virtual ossimAnnotationObject * getNewClippedObject(const ossimDrect &rect) const
virtual ossimString getClassName() const
vector< ossimPolygon > theMultiPolygon
ossimDrect combine(const ossimDrect &rect) const
void setThickness(ossim_int32 thickness)
All the drawing algorithms have thickness.
virtual std::ostream & print(std::ostream &out) const
Generic print method.
virtual void computeBoundingRect()
virtual ~ossimAnnotationMultiPolyObject()
virtual ossimDrect getBoundingRect() const
ossimRefPtr< ossimImageData > getImageData()
Will return the image data.
virtual bool isPointWithin(const ossimDpt &imagePoint) const
ossim_uint32 getVertexCount() const
virtual bool intersects(const ossimDrect &rect) const
unsigned int ossim_uint32
virtual ossimIrect getImageRectangle() const
virtual std::ostream & print(std::ostream &out) const
Generic print method.
bool intersects(const ossimDrect &rect) const
ossim_float64 height() const
void drawLine(double x1, double y1, double x2, double y2)
About all the draw routines will call draw line.
bool clipToRect(vector< ossimPolygon > &result, const ossimDrect &rect) const
Uses the ossimPolyArea2d class for the intersection.
ossimDrect theBoundingRect
ossim_uint32 getNumberOfVertices() const
void setDrawColor(ossim_uint8 r=255, ossim_uint8 g=255, ossim_uint8 b=255)
ossimAnnotationMultiPolyObject()
bool clipToRect(vector< ossimPolyLine > &result, const ossimDrect &rect) const
void drawFilledPolygon(const std::vector< ossimDpt > &p)
We will cut and paste the code from drawFilledPolygon(ossimIpt *p, int n).
virtual void applyScale(double x, double y)
#define RTTI_DEF1(cls, name, b1)
const ossimDpt & lr() const
std::basic_ostream< char > ostream
Base class for char output streams.