QCAD
Open Source 2D CAD
RDimLinearEntity.h
Go to the documentation of this file.
1 
20 #ifndef RDIMLINEARENTITY_H
21 #define RDIMLINEARENTITY_H
22 
23 #include "entity_global.h"
24 
25 #include "RDimensionEntity.h"
26 #include "RDimLinearData.h"
27 
28 class RDocument;
29 class RExporter;
30 
39 
40  Q_DECLARE_TR_FUNCTIONS(RDimLinearEntity)
41 
42 public:
56 
64 
72 
75 
79 
83 
87 
88 public:
89  RDimLinearEntity(RDocument* document);
90  virtual ~RDimLinearEntity();
91 
92  static void init();
93 
94  virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
95  RTransaction* transaction=NULL);
96  virtual QPair<QVariant, RPropertyAttributes> getProperty(
97  RPropertyTypeId& propertyTypeId,
98  bool humanReadable = false, bool noAttributes = false, bool showOnRequest = false);
99 
100  virtual RDimLinearData& getData() = 0;
101  virtual const RDimLinearData& getData() const = 0;
102 
103  void setExtensionPoint1(const RVector& p) {
104  getData().setExtensionPoint1(p);
105  }
106 
108  return getData().getExtensionPoint1();
109  }
110 
111  void setExtensionPoint2(const RVector& p) {
112  getData().setExtensionPoint2(p);
113  }
114 
116  return getData().getExtensionPoint2();
117  }
118 
119 protected:
120  virtual void print(QDebug dbg) const;
121 };
122 
124 Q_DECLARE_METATYPE(QSharedPointer<RDimLinearEntity>)
125 Q_DECLARE_METATYPE(QSharedPointer<RDimLinearEntity>*)
126 
127 #endif
RDimLinearEntity::PropertyCustom
static RPropertyTypeId PropertyCustom
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RDimLinearEntity.h:43
RDimLinearEntity::PropertyDimScale
static RPropertyTypeId PropertyDimScale
Definition: RDimLinearEntity.h:66
RDimLinearEntity::PropertyLineweight
static RPropertyTypeId PropertyLineweight
Definition: RDimLinearEntity.h:52
RDimensionEntity
Base class for dimension entity classes.
Definition: RDimensionEntity.h:38
RDimLinearEntity::PropertyMiddleOfTextX
static RPropertyTypeId PropertyMiddleOfTextX
Definition: RDimLinearEntity.h:57
RDimLinearEntity::PropertyLinearFactor
static RPropertyTypeId PropertyLinearFactor
Definition: RDimLinearEntity.h:65
RDimLinearEntity::PropertyDimBlockName
static RPropertyTypeId PropertyDimBlockName
Definition: RDimLinearEntity.h:67
RDimLinearEntity::PropertyLinetypeScale
static RPropertyTypeId PropertyLinetypeScale
Definition: RDimLinearEntity.h:51
RDimLinearData.h
RDimLinearEntity::PropertyLowerTolerance
static RPropertyTypeId PropertyLowerTolerance
Definition: RDimLinearEntity.h:62
RDimLinearEntity::PropertyAutoTextPos
static RPropertyTypeId PropertyAutoTextPos
Definition: RDimLinearEntity.h:68
RDimLinearEntity::PropertyUpperTolerance
static RPropertyTypeId PropertyUpperTolerance
Definition: RDimLinearEntity.h:61
RDimensionEntity::print
virtual void print(QDebug dbg) const
Stream operator for QDebug.
Definition: RDimensionEntity.cpp:353
RDimLinearEntity::PropertyExtensionPoint2X
static RPropertyTypeId PropertyExtensionPoint2X
Definition: RDimLinearEntity.h:84
RDimLinearEntity::getExtensionPoint2
RVector getExtensionPoint2() const
Definition: RDimLinearEntity.h:115
RVector
Represents a 3d vector (x/y/z).
Definition: RVector.h:46
RDimLinearEntity::PropertyExtensionPoint2Y
static RPropertyTypeId PropertyExtensionPoint2Y
Definition: RDimLinearEntity.h:85
RDimLinearEntity::PropertyType
static RPropertyTypeId PropertyType
Definition: RDimLinearEntity.h:47
RDimLinearEntity::PropertyExtLineFixLength
static RPropertyTypeId PropertyExtLineFixLength
Definition: RDimLinearEntity.h:74
RDimensionEntity::getData
virtual RDimensionData & getData()=0
RDimLinearEntity::PropertyExtensionPoint1Z
static RPropertyTypeId PropertyExtensionPoint1Z
Definition: RDimLinearEntity.h:82
QCADENTITY_EXPORT
#define QCADENTITY_EXPORT
Definition: entity_global.h:10
RDimLinearEntity::PropertyProtected
static RPropertyTypeId PropertyProtected
Definition: RDimLinearEntity.h:45
RDimLinearEntity::PropertyDimensionLinePosZ
static RPropertyTypeId PropertyDimensionLinePosZ
Definition: RDimLinearEntity.h:78
RDimLinearEntity::getExtensionPoint1
RVector getExtensionPoint1() const
Definition: RDimLinearEntity.h:107
RDimLinearEntity::setExtensionPoint2
void setExtensionPoint2(const RVector &p)
Definition: RDimLinearEntity.h:111
RDimLinearEntity::PropertyText
static RPropertyTypeId PropertyText
Definition: RDimLinearEntity.h:60
RDimensionEntity::getProperty
virtual QPair< QVariant, RPropertyAttributes > getProperty(RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false, bool showOnRequest=false)
Definition: RDimensionEntity.cpp:176
RDimLinearEntity::PropertyExtensionPoint1Y
static RPropertyTypeId PropertyExtensionPoint1Y
Definition: RDimLinearEntity.h:81
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(RMath *)
RDimLinearEntity::PropertyDisplayedColor
static RPropertyTypeId PropertyDisplayedColor
Definition: RDimLinearEntity.h:54
RDimLinearEntity::PropertyArrow1Flipped
static RPropertyTypeId PropertyArrow1Flipped
Definition: RDimLinearEntity.h:70
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
RPropertyTypeId
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RPropertyTypeId.h:59
RDimLinearEntity::PropertyArrow2Flipped
static RPropertyTypeId PropertyArrow2Flipped
Definition: RDimLinearEntity.h:71
RExporter
Abstract base class for exporters.
Definition: RExporter.h:72
RDocument
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition: RDocument.h:72
RDimLinearEntity::PropertyDrawOrder
static RPropertyTypeId PropertyDrawOrder
Definition: RDimLinearEntity.h:55
RDimLinearData
Copyright (c) 2011-2018 by Andrew Mustun.
Definition: RDimLinearData.h:36
RDimLinearEntity::PropertyMeasuredValue
static RPropertyTypeId PropertyMeasuredValue
Definition: RDimLinearEntity.h:63
RDimLinearEntity::PropertyExtensionPoint1X
static RPropertyTypeId PropertyExtensionPoint1X
Definition: RDimLinearEntity.h:80
RDimLinearEntity::PropertyLinetype
static RPropertyTypeId PropertyLinetype
Definition: RDimLinearEntity.h:50
RDimLinearEntity::getData
virtual RDimLinearData & getData()=0
RDimLinearEntity::PropertyBlock
static RPropertyTypeId PropertyBlock
Definition: RDimLinearEntity.h:48
RDimLinearEntity::PropertyHandle
static RPropertyTypeId PropertyHandle
Definition: RDimLinearEntity.h:44
RDimLinearEntity::getData
virtual const RDimLinearData & getData() const =0
RDimLinearEntity::PropertyDimensionLinePosY
static RPropertyTypeId PropertyDimensionLinePosY
Definition: RDimLinearEntity.h:77
RDimLinearEntity::setExtensionPoint1
void setExtensionPoint1(const RVector &p)
Definition: RDimLinearEntity.h:103
RDimensionEntity::init
static void init()
Definition: RDimensionEntity.cpp:76
RDimLinearEntity::PropertyMiddleOfTextZ
static RPropertyTypeId PropertyMiddleOfTextZ
Definition: RDimLinearEntity.h:59
RTransaction
Transaction implementation.
Definition: RTransaction.h:74
RDimLinearEntity::PropertyMiddleOfTextY
static RPropertyTypeId PropertyMiddleOfTextY
Definition: RDimLinearEntity.h:58
RDimLinearEntity::PropertyDimensionLinePosX
static RPropertyTypeId PropertyDimensionLinePosX
Definition: RDimLinearEntity.h:76
RDimLinearEntity::PropertyExtLineFix
static RPropertyTypeId PropertyExtLineFix
Definition: RDimLinearEntity.h:73
RDimLinearEntity::PropertyExtensionPoint2Z
static RPropertyTypeId PropertyExtensionPoint2Z
Definition: RDimLinearEntity.h:86
entity_global.h
RDimLinearEntity::PropertyColor
static RPropertyTypeId PropertyColor
Definition: RDimLinearEntity.h:53
RDimLinearEntity
Linear dimension entity base class.
Definition: RDimLinearEntity.h:38
RDimLinearEntity::PropertyWorkingSet
static RPropertyTypeId PropertyWorkingSet
Definition: RDimLinearEntity.h:46
RDimLinearEntity::PropertyLayer
static RPropertyTypeId PropertyLayer
Definition: RDimLinearEntity.h:49
RDimensionEntity.h
RDimLinearEntity::PropertyFontName
static RPropertyTypeId PropertyFontName
Definition: RDimLinearEntity.h:69