QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RDimAlignedEntity.h
Go to the documentation of this file.
1
20#ifndef RDIMALIGNEDENTITY_H
21#define RDIMALIGNEDENTITY_H
22
23#include "entity_global.h"
24
25#include "RDimLinearEntity.h"
26#include "RDimAlignedData.h"
27
28class RDocument;
29class RExporter;
30class RRefPoint;
31
40
41 Q_DECLARE_TR_FUNCTIONS(RDimAlignedEntity)
42
43public:
57
65
71 //static RPropertyTypeId PropertyDimdli;
81// static RPropertyTypeId PropertyDimaunit;
82// static RPropertyTypeId PropertyDimadec;
83// static RPropertyTypeId PropertyDimazin;
86
87 //static RPropertyTypeId PropertyLinearFactor;
88 //static RPropertyTypeId PropertyDimScale;
94
97
107
108public:
109 RDimAlignedEntity(RDocument* document, const RDimAlignedData& data);
110 virtual ~RDimAlignedEntity();
111
112 static void init();
113
116 }
117
121
122 virtual QSharedPointer<RObject> clone() const {
123 return QSharedPointer<RObject>(new RDimAlignedEntity(*this));
124 }
125
126 QSharedPointer<RDimAlignedEntity> cloneToDimAlignedEntity() const {
127 return QSharedPointer<RDimAlignedEntity>(new RDimAlignedEntity(*this));
128 }
129
130 virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
131 RTransaction* transaction=NULL);
132 virtual QPair<QVariant, RPropertyAttributes> getProperty(
133 RPropertyTypeId& propertyTypeId,
134 bool humanReadable = false, bool noAttributes = false, bool showOnRequest = false);
135
137 return data;
138 }
139
141 data = d;
142 }
143
144 virtual const RDimAlignedData& getData() const {
145 return data;
146 }
147
149 data.setExtensionPoint1(p);
150 }
151
153 return data.getExtensionPoint1();
154 }
155
157 data.setExtensionPoint2(p);
158 }
159
161 return data.getExtensionPoint2();
162 }
163
164 double getAngle() const {
165 return data.getAngle();
166 }
167
168protected:
169 virtual void print(QDebug dbg) const;
170
171protected:
173};
174
176Q_DECLARE_METATYPE(QSharedPointer<RDimAlignedEntity>)
177Q_DECLARE_METATYPE(QSharedPointer<RDimAlignedEntity>*)
178
179#endif
Q_DECLARE_METATYPE(RMath *)
Aligned dimension entity data class.
Definition RDimAlignedData.h:38
Aligned dimension entity class.
Definition RDimAlignedEntity.h:39
static RPropertyTypeId PropertyDimexo
Definition RDimAlignedEntity.h:73
double getAngle() const
Definition RDimAlignedEntity.h:164
RVector getExtensionPoint1() const
Definition RDimAlignedEntity.h:152
static QSet< RPropertyTypeId > getStaticPropertyTypeIds()
Definition RDimAlignedEntity.h:118
void setData(RDimAlignedData &d)
Definition RDimAlignedEntity.h:140
static RPropertyTypeId PropertyDimensionLinePosX
Definition RDimAlignedEntity.h:98
static RPropertyTypeId PropertyMiddleOfTextX
Definition RDimAlignedEntity.h:58
static RPropertyTypeId PropertyDimlunit
Definition RDimAlignedEntity.h:77
static RPropertyTypeId PropertyDimasz
Definition RDimAlignedEntity.h:70
static RPropertyTypeId PropertyType
Definition RDimAlignedEntity.h:48
static RS::EntityType getRtti()
Definition RDimAlignedEntity.h:114
static RPropertyTypeId PropertyDrawOrder
Definition RDimAlignedEntity.h:56
static RPropertyTypeId PropertyArchTick
Definition RDimAlignedEntity.h:84
static RPropertyTypeId PropertyExtensionPoint1Y
Definition RDimAlignedEntity.h:102
static RPropertyTypeId PropertyExtensionPoint2Y
Definition RDimAlignedEntity.h:105
static RPropertyTypeId PropertyHandle
Definition RDimAlignedEntity.h:45
static RPropertyTypeId PropertyDimtad
Definition RDimAlignedEntity.h:74
static RPropertyTypeId PropertyArrow1Flipped
Definition RDimAlignedEntity.h:92
static RPropertyTypeId PropertyDimdec
Definition RDimAlignedEntity.h:78
QSharedPointer< RDimAlignedEntity > cloneToDimAlignedEntity() const
Definition RDimAlignedEntity.h:126
void setExtensionPoint1(const RVector &p)
Definition RDimAlignedEntity.h:148
static RPropertyTypeId PropertyDimensionLinePosY
Definition RDimAlignedEntity.h:99
static RPropertyTypeId PropertyMiddleOfTextZ
Definition RDimAlignedEntity.h:60
static RPropertyTypeId PropertyLinetypeScale
Definition RDimAlignedEntity.h:52
static RPropertyTypeId PropertyDimdsep
Definition RDimAlignedEntity.h:79
static RPropertyTypeId PropertyDimscale
Definition RDimAlignedEntity.h:66
static RPropertyTypeId PropertyDimzin
Definition RDimAlignedEntity.h:80
virtual RDimAlignedData & getData()
Definition RDimAlignedEntity.h:136
virtual const RDimAlignedData & getData() const
Definition RDimAlignedEntity.h:144
static RPropertyTypeId PropertyDisplayedColor
Definition RDimAlignedEntity.h:55
static RPropertyTypeId PropertyProtected
Definition RDimAlignedEntity.h:46
static RPropertyTypeId PropertyWorkingSet
Definition RDimAlignedEntity.h:47
static RPropertyTypeId PropertyMiddleOfTextY
Definition RDimAlignedEntity.h:59
static RPropertyTypeId PropertyDimclrt
Definition RDimAlignedEntity.h:85
static RPropertyTypeId PropertyDimensionLinePosZ
Definition RDimAlignedEntity.h:100
static RPropertyTypeId PropertyExtensionPoint1Z
Definition RDimAlignedEntity.h:103
void setExtensionPoint2(const RVector &p)
Definition RDimAlignedEntity.h:156
static RPropertyTypeId PropertyLinetype
Definition RDimAlignedEntity.h:51
static RPropertyTypeId PropertyExtLineFix
Definition RDimAlignedEntity.h:95
static RPropertyTypeId PropertyExtensionPoint2X
Definition RDimAlignedEntity.h:104
static RPropertyTypeId PropertyColor
Definition RDimAlignedEntity.h:54
static RPropertyTypeId PropertyBlock
Definition RDimAlignedEntity.h:49
static RPropertyTypeId PropertyLineweight
Definition RDimAlignedEntity.h:53
RDimAlignedData data
Definition RDimAlignedEntity.h:172
virtual QSharedPointer< RObject > clone() const
Definition RDimAlignedEntity.h:122
static RPropertyTypeId PropertyExtensionPoint2Z
Definition RDimAlignedEntity.h:106
static RPropertyTypeId PropertyDimgap
Definition RDimAlignedEntity.h:69
static RPropertyTypeId PropertyLayer
Definition RDimAlignedEntity.h:50
static RPropertyTypeId PropertyDimlfac
Definition RDimAlignedEntity.h:67
static RPropertyTypeId PropertyExtLineFixLength
Definition RDimAlignedEntity.h:96
static RPropertyTypeId PropertyArrow2Flipped
Definition RDimAlignedEntity.h:93
static RPropertyTypeId PropertyLowerTolerance
Definition RDimAlignedEntity.h:63
static RPropertyTypeId PropertyCustom
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RDimAlignedEntity.h:44
static RPropertyTypeId PropertyDimtxt
Definition RDimAlignedEntity.h:68
static RPropertyTypeId PropertyDimtsz
Definition RDimAlignedEntity.h:76
static RPropertyTypeId PropertyAutoTextPos
Definition RDimAlignedEntity.h:90
static RPropertyTypeId PropertyDimexe
Definition RDimAlignedEntity.h:72
static RPropertyTypeId PropertyDimtih
Definition RDimAlignedEntity.h:75
static RPropertyTypeId PropertyFontName
Definition RDimAlignedEntity.h:91
static RPropertyTypeId PropertyDimBlockName
Definition RDimAlignedEntity.h:89
static RPropertyTypeId PropertyUpperTolerance
Definition RDimAlignedEntity.h:62
static RPropertyTypeId PropertyMeasuredValue
Definition RDimAlignedEntity.h:64
static RPropertyTypeId PropertyExtensionPoint1X
Definition RDimAlignedEntity.h:101
static RPropertyTypeId PropertyText
Definition RDimAlignedEntity.h:61
RVector getExtensionPoint2() const
Definition RDimAlignedEntity.h:160
Linear dimension entity base class.
Definition RDimLinearEntity.h:38
static void init()
Definition RDimLinearEntity.cpp:94
virtual QPair< QVariant, RPropertyAttributes > getProperty(RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false, bool showOnRequest=false)
Definition RDimLinearEntity.cpp:192
virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
Sets the given property to the given value.
Definition RDimLinearEntity.cpp:169
virtual void print(QDebug dbg) const
Stream operator for QDebug.
Definition RDimLinearEntity.cpp:222
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition RDocument.h:78
Abstract base class for exporters.
Definition RExporter.h:78
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RPropertyTypeId.h:54
static QSet< RPropertyTypeId > getPropertyTypeIds(RS::EntityType type, RPropertyAttributes::Option=RPropertyAttributes::NoOptions)
Gets all property type IDs that where registered for the given class.
Definition RPropertyTypeId.cpp:283
Represents a reference point of an entity.
Definition RRefPoint.h:18
EntityType
Entity types used for property handling / filtering.
Definition RS.h:227
@ EntityDimAligned
Linear aligned Dimension.
Definition RS.h:264
Transaction implementation.
Definition RTransaction.h:73
Represents a 3d vector (x/y/z).
Definition RVector.h:47
#define QCADENTITY_EXPORT
Definition entity_global.h:10
#define NULL
Definition opennurbs_system.h:256