QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RDimOrdinateEntity.h
Go to the documentation of this file.
1
20#ifndef RDIMORDINATEENTITY_H
21#define RDIMORDINATEENTITY_H
22
23#include "entity_global.h"
24
25#include "RDimensionEntity.h"
26#include "RDimOrdinateData.h"
27
28class RDocument;
29class RExporter;
30
39
40 Q_DECLARE_TR_FUNCTIONS(RDimOrdinateEntity)
41
42public:
56
60
67
68 //static RPropertyTypeId PropertyArrow1Flipped;
69 //static RPropertyTypeId PropertyArrow2Flipped;
70
71 //static RPropertyTypeId PropertyExtLineFix;
72 //static RPropertyTypeId PropertyExtLineFixLength;
73
76
78
82
84
88
92
93public:
94 RDimOrdinateEntity(RDocument* document, const RDimOrdinateData& data);
95 virtual ~RDimOrdinateEntity();
96
97 static void init();
98
101 }
102
106
107 virtual QSharedPointer<RObject> clone() const {
108 return QSharedPointer<RObject>(new RDimOrdinateEntity(*this));
109 }
110
111 QSharedPointer<RDimOrdinateEntity> cloneToDimOrdinateEntity() const {
112 return QSharedPointer<RDimOrdinateEntity>(new RDimOrdinateEntity(*this));
113 }
114
115 virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant& value,
116 RTransaction* transaction=NULL);
117 virtual QPair<QVariant, RPropertyAttributes> getProperty(
118 RPropertyTypeId& propertyTypeId,
119 bool humanReadable = false, bool noAttributes = false, bool showOnRequest = false);
120
122 return data;
123 }
124
126 data = d;
127 }
128
129 virtual const RDimOrdinateData& getData() const {
130 return data;
131 }
132
133 void setLeaderEndPoint(const RVector& p) {
134 data.setLeaderEndPoint(p);
135 }
136
138 return data.getLeaderEndPoint();
139 }
140
141 void setDefiningPoint(const RVector& p) {
142 data.setDefiningPoint(p);
143 }
144
146 return data.getDefiningPoint();
147 }
148
150 data.setMeasuringXAxis();
151 }
152
154 data.setMeasuringYAxis();
155 }
156
157 bool isMeasuringXAxis() const {
158 return data.isMeasuringXAxis();
159 }
160
161protected:
162 virtual void print(QDebug dbg) const;
163
164protected:
166};
167
169Q_DECLARE_METATYPE(QSharedPointer<RDimOrdinateEntity>)
170Q_DECLARE_METATYPE(QSharedPointer<RDimOrdinateEntity>*)
171
172#endif
Q_DECLARE_METATYPE(RMath *)
Ordinate dimension entity data class.
Definition RDimOrdinateData.h:40
Ordinate dimension entity class.
Definition RDimOrdinateEntity.h:38
static RPropertyTypeId PropertyProtected
Definition RDimOrdinateEntity.h:45
static RPropertyTypeId PropertyOrdinate
Definition RDimOrdinateEntity.h:83
static RPropertyTypeId PropertyOriginZ
Definition RDimOrdinateEntity.h:81
static RPropertyTypeId PropertyFontName
Definition RDimOrdinateEntity.h:65
static RPropertyTypeId PropertyOriginX
Definition RDimOrdinateEntity.h:79
static RPropertyTypeId PropertyDisplayedColor
Definition RDimOrdinateEntity.h:54
static RPropertyTypeId PropertyDrawOrder
Definition RDimOrdinateEntity.h:55
static RPropertyTypeId PropertyDefiningPointY
Definition RDimOrdinateEntity.h:90
static RPropertyTypeId PropertyHandle
Definition RDimOrdinateEntity.h:44
RVector getDefiningPoint() const
Definition RDimOrdinateEntity.h:145
void setMeasuringYAxis()
Definition RDimOrdinateEntity.h:153
static RPropertyTypeId PropertyDefiningPointX
Definition RDimOrdinateEntity.h:89
static RPropertyTypeId PropertyOriginY
Definition RDimOrdinateEntity.h:80
static RPropertyTypeId PropertyBlock
Definition RDimOrdinateEntity.h:48
virtual const RDimOrdinateData & getData() const
Definition RDimOrdinateEntity.h:129
static RPropertyTypeId PropertyUpperTolerance
Definition RDimOrdinateEntity.h:62
static RPropertyTypeId PropertyLeaderEndPointX
Definition RDimOrdinateEntity.h:85
static RPropertyTypeId PropertyDimlfac
Definition RDimOrdinateEntity.h:75
static RPropertyTypeId PropertyWorkingSet
Definition RDimOrdinateEntity.h:46
static RPropertyTypeId PropertyLeaderEndPointZ
Definition RDimOrdinateEntity.h:87
QSharedPointer< RDimOrdinateEntity > cloneToDimOrdinateEntity() const
Definition RDimOrdinateEntity.h:111
void setMeasuringXAxis()
Definition RDimOrdinateEntity.h:149
RVector getLeaderEndPoint() const
Definition RDimOrdinateEntity.h:137
static RPropertyTypeId PropertyDimBlockName
Definition RDimOrdinateEntity.h:77
static RPropertyTypeId PropertyMiddleOfTextX
Definition RDimOrdinateEntity.h:57
static RPropertyTypeId PropertyLinetypeScale
Definition RDimOrdinateEntity.h:51
static RPropertyTypeId PropertyCustom
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RDimOrdinateEntity.h:43
void setDefiningPoint(const RVector &p)
Definition RDimOrdinateEntity.h:141
static RPropertyTypeId PropertyDefiningPointZ
Definition RDimOrdinateEntity.h:91
RDimOrdinateData data
Definition RDimOrdinateEntity.h:165
static RPropertyTypeId PropertyMiddleOfTextZ
Definition RDimOrdinateEntity.h:59
static RPropertyTypeId PropertyColor
Definition RDimOrdinateEntity.h:53
static RPropertyTypeId PropertyLeaderEndPointY
Definition RDimOrdinateEntity.h:86
static RS::EntityType getRtti()
Definition RDimOrdinateEntity.h:99
static RPropertyTypeId PropertyMeasuredValue
Definition RDimOrdinateEntity.h:64
static QSet< RPropertyTypeId > getStaticPropertyTypeIds()
Definition RDimOrdinateEntity.h:103
static RPropertyTypeId PropertyText
Definition RDimOrdinateEntity.h:61
void setLeaderEndPoint(const RVector &p)
Definition RDimOrdinateEntity.h:133
virtual QSharedPointer< RObject > clone() const
Definition RDimOrdinateEntity.h:107
bool isMeasuringXAxis() const
Definition RDimOrdinateEntity.h:157
void setData(RDimOrdinateData &d)
Definition RDimOrdinateEntity.h:125
static RPropertyTypeId PropertyTextRotation
Definition RDimOrdinateEntity.h:66
static RPropertyTypeId PropertyType
Definition RDimOrdinateEntity.h:47
static RPropertyTypeId PropertyLinetype
Definition RDimOrdinateEntity.h:50
static RPropertyTypeId PropertyMiddleOfTextY
Definition RDimOrdinateEntity.h:58
static RPropertyTypeId PropertyLowerTolerance
Definition RDimOrdinateEntity.h:63
static RPropertyTypeId PropertyLineweight
Definition RDimOrdinateEntity.h:52
static RPropertyTypeId PropertyDimscale
Definition RDimOrdinateEntity.h:74
virtual RDimOrdinateData & getData()
Definition RDimOrdinateEntity.h:121
static RPropertyTypeId PropertyLayer
Definition RDimOrdinateEntity.h:49
Base class for dimension entity classes.
Definition RDimensionEntity.h:38
virtual void print(QDebug dbg) const
Stream operator for QDebug.
Definition RDimensionEntity.cpp:607
virtual QPair< QVariant, RPropertyAttributes > getProperty(RPropertyTypeId &propertyTypeId, bool humanReadable=false, bool noAttributes=false, bool showOnRequest=false)
Definition RDimensionEntity.cpp:278
static void init()
Definition RDimensionEntity.cpp:103
virtual bool setProperty(RPropertyTypeId propertyTypeId, const QVariant &value, RTransaction *transaction=NULL)
Sets the given property to the given value.
Definition RDimensionEntity.cpp:185
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
EntityType
Entity types used for property handling / filtering.
Definition RS.h:227
@ EntityDimOrdinate
Ordinate Dimension.
Definition RS.h:272
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