QCAD
Open Source 2D CAD
RDimDiametricEntity.h
Go to the documentation of this file.
1 
20 #ifndef RDIMDIAMETRICENTITY_H
21 #define RDIMDIAMETRICENTITY_H
22 
23 #include "entity_global.h"
24 
25 #include "RDimensionEntity.h"
26 #include "RDimDiametricData.h"
27 
28 class RDocument;
29 class RExporter;
30 
39 
40  Q_DECLARE_TR_FUNCTIONS(RDimDiametricEntity)
41 
42 public:
56 
60 
65 
73 
76 
80 
84 
85 public:
86  RDimDiametricEntity(RDocument* document, const RDimDiametricData& data);
87  virtual ~RDimDiametricEntity();
88 
89  static void init();
90 
91  static QSet<RPropertyTypeId> getStaticPropertyTypeIds() {
93  }
94 
95  virtual RDimDiametricEntity* clone() const {
96  return new RDimDiametricEntity(*this);
97  }
98 
99  virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
100  RTransaction* transaction=NULL);
101  virtual QPair<QVariant, RPropertyAttributes> getProperty(
102  RPropertyTypeId& propertyTypeId,
103  bool humanReadable = false, bool noAttributes = false, bool showOnRequest = false);
104 
106  return data;
107  }
108 
110  data = d;
111  }
112 
113  virtual const RDimDiametricData& getData() const {
114  return data;
115  }
116 
117  void setChordPoint(const RVector& p) {
118  data.setChordPoint(p);
119  }
120 
122  return data.getChordPoint();
123  }
124 
125  void setFarChordPoint(const RVector& p) {
126  data.setFarChordPoint(p);
127  }
128 
130  return data.getFarChordPoint();
131  }
132 
133 protected:
134  virtual void print(QDebug dbg) const;
135 
136 protected:
138 };
139 
141 Q_DECLARE_METATYPE(QSharedPointer<RDimDiametricEntity>)
142 Q_DECLARE_METATYPE(QSharedPointer<RDimDiametricEntity>*)
143 
144 #endif
RDimensionEntity
Base class for dimension entity classes.
Definition: RDimensionEntity.h:38
RDimDiametricEntity::PropertyLayer
static RPropertyTypeId PropertyLayer
Definition: RDimDiametricEntity.h:49
RDimDiametricEntity::PropertyMiddleOfTextZ
static RPropertyTypeId PropertyMiddleOfTextZ
Definition: RDimDiametricEntity.h:59
RDimDiametricEntity::setData
void setData(RDimDiametricData &d)
Definition: RDimDiametricEntity.h:109
RDimDiametricEntity::PropertyDisplayedColor
static RPropertyTypeId PropertyDisplayedColor
Definition: RDimDiametricEntity.h:54
RDimDiametricEntity::PropertyMeasuredValue
static RPropertyTypeId PropertyMeasuredValue
Definition: RDimDiametricEntity.h:64
RDimDiametricEntity::PropertyCustom
static RPropertyTypeId PropertyCustom
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RDimDiametricEntity.h:43
RDimDiametricEntity::setChordPoint
void setChordPoint(const RVector &p)
Definition: RDimDiametricEntity.h:117
RDimDiametricEntity::PropertyHandle
static RPropertyTypeId PropertyHandle
Definition: RDimDiametricEntity.h:44
RDimDiametricEntity::PropertyColor
static RPropertyTypeId PropertyColor
Definition: RDimDiametricEntity.h:53
RDimDiametricEntity::PropertyType
static RPropertyTypeId PropertyType
Definition: RDimDiametricEntity.h:47
RDimDiametricEntity::setFarChordPoint
void setFarChordPoint(const RVector &p)
Definition: RDimDiametricEntity.h:125
RDimDiametricEntity::PropertyArrow1Flipped
static RPropertyTypeId PropertyArrow1Flipped
Definition: RDimDiametricEntity.h:71
RDimensionEntity::print
virtual void print(QDebug dbg) const
Stream operator for QDebug.
Definition: RDimensionEntity.cpp:353
RDimDiametricEntity::getData
virtual const RDimDiametricData & getData() const
Definition: RDimDiametricEntity.h:113
RVector
Represents a 3d vector (x/y/z).
Definition: RVector.h:46
RDimDiametricEntity::PropertyFarChordPointX
static RPropertyTypeId PropertyFarChordPointX
Definition: RDimDiametricEntity.h:81
RDimDiametricEntity::PropertyLinetype
static RPropertyTypeId PropertyLinetype
Definition: RDimDiametricEntity.h:50
RDimDiametricEntity::PropertyArrow2Flipped
static RPropertyTypeId PropertyArrow2Flipped
Definition: RDimDiametricEntity.h:72
RDimDiametricEntity::PropertyProtected
static RPropertyTypeId PropertyProtected
Definition: RDimDiametricEntity.h:45
QCADENTITY_EXPORT
#define QCADENTITY_EXPORT
Definition: entity_global.h:10
RDimDiametricData.h
RDimDiametricEntity::PropertyMiddleOfTextX
static RPropertyTypeId PropertyMiddleOfTextX
Definition: RDimDiametricEntity.h:57
RDimDiametricEntity::getFarChordPoint
RVector getFarChordPoint() const
Definition: RDimDiametricEntity.h:129
RDimDiametricEntity::PropertyAutoTextPos
static RPropertyTypeId PropertyAutoTextPos
Definition: RDimDiametricEntity.h:69
RDimDiametricEntity::PropertyChordPointX
static RPropertyTypeId PropertyChordPointX
Definition: RDimDiametricEntity.h:77
RDimDiametricEntity::PropertyLinetypeScale
static RPropertyTypeId PropertyLinetypeScale
Definition: RDimDiametricEntity.h:51
RDimDiametricEntity::PropertyChordPointZ
static RPropertyTypeId PropertyChordPointZ
Definition: RDimDiametricEntity.h:79
RDimensionEntity::getProperty
virtual QPair< QVariant, RPropertyAttributes > getProperty(RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false, bool showOnRequest=false)
Definition: RDimensionEntity.cpp:176
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(RMath *)
RDimDiametricEntity::PropertyUpperTolerance
static RPropertyTypeId PropertyUpperTolerance
Definition: RDimDiametricEntity.h:62
RDimDiametricEntity::PropertyFarChordPointZ
static RPropertyTypeId PropertyFarChordPointZ
Definition: RDimDiametricEntity.h:83
RDimDiametricEntity::getStaticPropertyTypeIds
static QSet< RPropertyTypeId > getStaticPropertyTypeIds()
Definition: RDimDiametricEntity.h:91
RDimDiametricEntity::PropertyExtLineFix
static RPropertyTypeId PropertyExtLineFix
Definition: RDimDiametricEntity.h:74
RDimensionEntity::setProperty
virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
Sets the given property to the given value.
Definition: RDimensionEntity.cpp:122
RDimDiametricEntity::PropertyFontName
static RPropertyTypeId PropertyFontName
Definition: RDimDiametricEntity.h:70
RDimDiametricEntity::data
RDimDiametricData data
Definition: RDimDiametricEntity.h:137
RDimDiametricEntity::PropertyDrawOrder
static RPropertyTypeId PropertyDrawOrder
Definition: RDimDiametricEntity.h:55
RPropertyTypeId
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RPropertyTypeId.h:59
RDimDiametricData
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RDimDiametricData.h:36
RDimDiametricEntity::PropertyExtLineFixLength
static RPropertyTypeId PropertyExtLineFixLength
Definition: RDimDiametricEntity.h:75
RDimDiametricEntity
Aligned dimension entity class.
Definition: RDimDiametricEntity.h:38
RDimDiametricEntity::PropertyFarChordPointY
static RPropertyTypeId PropertyFarChordPointY
Definition: RDimDiametricEntity.h:82
RDimDiametricEntity::PropertyDimBlockName
static RPropertyTypeId PropertyDimBlockName
Definition: RDimDiametricEntity.h:68
RExporter
Abstract base class for exporters.
Definition: RExporter.h:72
RDimDiametricEntity::PropertyWorkingSet
static RPropertyTypeId PropertyWorkingSet
Definition: RDimDiametricEntity.h:46
RDimDiametricEntity::PropertyLowerTolerance
static RPropertyTypeId PropertyLowerTolerance
Definition: RDimDiametricEntity.h:63
RDocument
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition: RDocument.h:72
RDimDiametricEntity::PropertyDimScale
static RPropertyTypeId PropertyDimScale
Definition: RDimDiametricEntity.h:67
RDimDiametricEntity::PropertyMiddleOfTextY
static RPropertyTypeId PropertyMiddleOfTextY
Definition: RDimDiametricEntity.h:58
RDimDiametricEntity::PropertyBlock
static RPropertyTypeId PropertyBlock
Definition: RDimDiametricEntity.h:48
RDimDiametricEntity::PropertyLineweight
static RPropertyTypeId PropertyLineweight
Definition: RDimDiametricEntity.h:52
RDimDiametricEntity::PropertyChordPointY
static RPropertyTypeId PropertyChordPointY
Definition: RDimDiametricEntity.h:78
RDimensionEntity::init
static void init()
Definition: RDimensionEntity.cpp:76
RDimDiametricEntity::getData
virtual RDimDiametricData & getData()
Definition: RDimDiametricEntity.h:105
RTransaction
Transaction implementation.
Definition: RTransaction.h:74
RPropertyTypeId::getPropertyTypeIds
static QSet< RPropertyTypeId > getPropertyTypeIds(const std::type_info &classInfo, RPropertyAttributes::Option=RPropertyAttributes::NoOptions)
Gets all property type IDs that where registered for the given class.
Definition: RPropertyTypeId.cpp:273
RDimDiametricEntity::PropertyLinearFactor
static RPropertyTypeId PropertyLinearFactor
Definition: RDimDiametricEntity.h:66
RDimDiametricEntity::getChordPoint
RVector getChordPoint() const
Definition: RDimDiametricEntity.h:121
entity_global.h
RDimDiametricEntity::PropertyText
static RPropertyTypeId PropertyText
Definition: RDimDiametricEntity.h:61
RDimDiametricEntity::clone
virtual RDimDiametricEntity * clone() const
Definition: RDimDiametricEntity.h:95
RDimensionEntity.h