IntelliPhoto  0.4
IntelliImage.h
Go to the documentation of this file.
1 #ifndef INTELLIIMAGE_H
2 #define INTELLIIMAGE_H
3 
4 #include<QImage>
5 #include<QPoint>
6 #include<QColor>
7 #include<QSize>
8 #include<QWidget>
9 #include<vector>
10 
11 enum class ImageType{
14 };
15 
16 class IntelliTool;
17 
19  friend IntelliTool;
20 protected:
21  void resizeImage(QImage *image, const QSize &newSize);
22 
23  QImage imageData;
24 
25  //calculate with polygon
26 public:
27  IntelliImage(int weight, int height);
28  virtual ~IntelliImage() = 0;
29 
30 
31  //start on top left
32  virtual void drawPixel(const QPoint &p1, const QColor& color);
33  virtual void drawLine(const QPoint &p1, const QPoint& p2, const QColor& color, const int& penWidth);
34  virtual void drawPlain(const QColor& color);
35 
36  //returns the filtered output
37  virtual QImage getDisplayable(const QSize& displaySize, int alpha)=0;
38  virtual QImage getDisplayable(int alpha=255)=0;
39 
40  //gets a copy of the image !allocated
41  virtual IntelliImage* getDeepCopy()=0;
42  virtual void calculateVisiblity()=0;
43 
44  //returns the filtered output
45 
46  //sets the data for the visible image
47  virtual void setPolygon(const std::vector<QPoint>& polygonData)=0;
48  virtual std::vector<QPoint> getPolygonData(){ return std::vector<QPoint>();}
49 
50  //loads an image to the ColorBuffer
51  virtual bool loadImage(const QString &fileName);
52 };
53 
54 #endif
ImageType
ImageType
Definition: IntelliImage.h:11
IntelliImage::drawLine
virtual void drawLine(const QPoint &p1, const QPoint &p2, const QColor &color, const int &penWidth)
Definition: IntelliImage.cpp:55
IntelliImage::~IntelliImage
virtual ~IntelliImage()=0
Definition: IntelliImage.cpp:10
IntelliImage::drawPixel
virtual void drawPixel(const QPoint &p1, const QColor &color)
Definition: IntelliImage.cpp:44
IntelliImage::loadImage
virtual bool loadImage(const QString &fileName)
Definition: IntelliImage.cpp:14
IntelliImage::getDisplayable
virtual QImage getDisplayable(const QSize &displaySize, int alpha)=0
ImageType::Raster_Image
IntelliImage::getPolygonData
virtual std::vector< QPoint > getPolygonData()
Definition: IntelliImage.h:48
IntelliImage::IntelliImage
IntelliImage(int weight, int height)
Definition: IntelliImage.cpp:5
IntelliTool
Definition: IntelliTool.h:10
ImageType::Shaped_Image
IntelliImage::resizeImage
void resizeImage(QImage *image, const QSize &newSize)
Definition: IntelliImage.cpp:29
IntelliImage::imageData
QImage imageData
Definition: IntelliImage.h:23
IntelliImage
Definition: IntelliImage.h:18
IntelliImage::getDeepCopy
virtual IntelliImage * getDeepCopy()=0
IntelliImage::calculateVisiblity
virtual void calculateVisiblity()=0
IntelliImage::drawPlain
virtual void drawPlain(const QColor &color)
Definition: IntelliImage.cpp:67
IntelliImage::setPolygon
virtual void setPolygon(const std::vector< QPoint > &polygonData)=0