QCAD
Open Source 2D CAD
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RDimRadialData.h
Go to the documentation of this file.
1 
20 #ifndef RDIMRADIALDATA_H
21 #define RDIMRADIALDATA_H
22 
23 #include "entity_global.h"
24 
25 #include "RDocument.h"
26 #include "RDimensionData.h"
27 #include "RVector.h"
28 
36  friend class RDimRadialEntity;
37 
38 protected:
40 
41 public:
43  RDimRadialData(const RDimensionData& dimData,
44  const RVector& chordPoint);
45 
46  virtual bool isValid() const;
47 
48  void setCenter(const RVector& p) {
50  }
51 
52  RVector getCenter() const {
53  return getDefinitionPoint();
54  }
55 
56  void setChordPoint(const RVector& p) {
57  chordPoint = p;
58  }
59 
61  return chordPoint;
62  }
63 
64  virtual QList<RVector> getReferencePoints(
66 
67  virtual bool moveReferencePoint(const RVector& referencePoint,
68  const RVector& targetPoint);
69 
70  virtual bool move(const RVector& offset);
71  virtual bool rotate(double rotation, const RVector& center);
72  virtual bool scale(const RVector& scaleFactors, const RVector& center);
73  virtual bool mirror(const RLine& axis);
74 
75  virtual QList<QSharedPointer<RShape> > getShapes(const RBox& queryBox = RDEFAULT_RBOX) const;
76  virtual double getMeasuredValue() const;
77  virtual QString getAutoLabel() const;
78 
79 private:
82 };
83 
86 Q_DECLARE_METATYPE(QSharedPointer<RDimRadialData>)
87 
88 #endif