OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimAnnotationFontObject.h
Go to the documentation of this file.
1 //*******************************************************************
2 // Copyright (C) 2000 ImageLinks Inc.
3 //
4 // License: See top level LICENSE.txt file.
5 //
6 // Author: Garrett Potts
7 //
8 //*************************************************************************
9 // $Id: ossimAnnotationFontObject.h 15766 2009-10-20 12:37:09Z gpotts $
10 #ifndef ossimAnnotationFontObject_HEADER
11 #define ossimAnnotationFontObject_HEADER
14 #include <ossim/base/ossimIpt.h>
15 #include <ossim/font/ossimFont.h>
16 
28 {
29 
30 public:
33  ossimAnnotationFontObject(const ossimIpt& upperLeft,
34  const ossimString& s,
35  const ossimIpt& pixelSize = ossimIpt(12, 12),
36  double rotation = 0.0,
37  const ossimDpt& scale = ossimDpt(1.0, 1.0),
38  const ossimDpt& shear = ossimDpt(0.0,0.0),
39  unsigned char r=255,
40  unsigned char g=255,
41  unsigned char b=255);
43 
44 
45 
46  virtual ossimObject* dup()const;
47 
48  virtual void draw(ossimRgbImage& anImage)const;
49  virtual std::ostream& print(std::ostream& out)const;
50  virtual void getBoundingRect(ossimDrect& rect)const;
51  virtual void setString(const ossimString& s);
52  virtual ossimString getString()const;
53  virtual void computeBoundingRect();
54  virtual ossimAnnotationObject* getNewClippedObject(const ossimDrect& rect)const;
55  virtual bool intersects(const ossimDrect& rect)const;
56  virtual bool isPointWithin(const ossimDpt& imagePoint)const;
57  virtual void setFont(ossimFont* font);
58  virtual void setCenterPosition(const ossimIpt& position);
59  virtual void setUpperLeftPosition(const ossimIpt& position);
60  virtual void setPointSize(const ossimIpt& size);
61  virtual void setRotation(double rotation);
62  virtual void setScale(const ossimDpt& scale);
63  virtual void setShear(const ossimDpt& shear);
64  virtual void setGeometryInformation(const ossimFontInformation& info);
65  virtual void applyScale(double x, double y);
66 
67 protected:
68  virtual ~ossimAnnotationFontObject();
73  double theRotation;
79 
80  void setFontInfo()const;
81 TYPE_DATA
82 };
83 
84 #endif
ossim_uint32 x
virtual void draw(ossimRgbImage &anImage) const =0
virtual void setShear(const ossimDpt &shear)
#define OSSIMDLLEXPORT
virtual bool intersects(const ossimDrect &rect) const =0
ossim_uint32 y
virtual ossimAnnotationObject * getNewClippedObject(const ossimDrect &rect) const =0
ossimRefPtr< ossimFont > theFont
virtual std::ostream & print(std::ostream &out) const
Generic print method.
virtual void setRotation(double rotation)
virtual ossimDrect getBoundingRect() const
yy_size_t size
#define TYPE_DATA
Definition: ossimRtti.h:339
virtual void setPointSize(const ossimIpt &size)
Class to draw fonts onto an image.
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
virtual void setScale(const ossimDpt &scale)
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23