QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RImageEntity.h
Go to the documentation of this file.
1 
20 #ifndef RIMAGEENTITY_H
21 #define RIMAGEENTITY_H
22 
23 #include "entity_global.h"
24 
25 #include "REntity.h"
26 #include "RImageData.h"
27 
28 class RDocument;
29 class RExporter;
30 
39 
40 public:
50 
58 
61 
62 public:
63  RImageEntity(RDocument* document, const RImageData& data,
64  RObject::Id objectId = RObject::INVALID_ID);
65  virtual ~RImageEntity();
66 
67  static void init();
68 
69  static QSet<RPropertyTypeId> getStaticPropertyTypeIds() {
71  }
72 
73  virtual RImageEntity* clone() const;
74 
75  virtual RS::EntityType getType() const {
76  return RS::EntityImage;
77  }
78 
79  bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
80  RTransaction* transaction=NULL);
81  QPair<QVariant, RPropertyAttributes> getProperty(
82  RPropertyTypeId& propertyTypeId,
83  bool humanReadable = false, bool noAttributes = false);
84 
85  virtual void exportEntity(RExporter& e, bool preview=false) const;
86 
87  virtual RImageData& getData() {
88  return data;
89  }
90 
91  virtual const RImageData& getData() const {
92  return data;
93  }
94 
95  QString getFileName() const {
96  return data.getFileName();
97  }
98 
99  void setFileName(const QString& fn) {
100  data.setFileName(fn);
101  }
102 
104  return data.getInsertionPoint();
105  }
106 
107  void setInsertionPoint(const RVector& ip) {
108  data.setInsertionPoint(ip);
109  }
110 
111  RVector getUVector() const {
112  return data.getUVector();
113  }
114 
115  RVector getVVector() const {
116  return data.getVVector();
117  }
118 
119  int getBrightness() const {
120  return data.getBrightness();
121  }
122 
123  int getContrast() const {
124  return data.getContrast();
125  }
126 
127  int getFade() const {
128  return data.getFade();
129  }
130 
131  void setWidth(double w, bool keepRatio=false) {
132  data.setWidth(w, keepRatio);
133  }
134 
135  void setHeight(double h, bool keepRatio=false) {
136  data.setHeight(h, keepRatio);
137  }
138 
139  void setAngle(double a) {
140  data.setAngle(a);
141  }
142 
143  double getWidth() const {
144  return data.getWidth();
145  }
146 
147  double getHeight() const {
148  return data.getHeight();
149  }
150 
151  int getPixelWidth() const {
152  return data.getPixelWidth();
153  }
154 
155  int getPixelHeight() const {
156  return data.getPixelHeight();
157  }
158 
159 protected:
160  virtual void print(QDebug dbg) const;
161 
162 protected:
164 };
165 
167 Q_DECLARE_METATYPE(QSharedPointer<RImageEntity>)
168 Q_DECLARE_METATYPE(QSharedPointer<RImageEntity>*)
169 
170 #endif