Seamly2D
Code documentation
vpattern.h
Go to the documentation of this file.
1 /***************************************************************************
2  ** @file vpattern.h
3  ** @author Douglas S Caskey
4  ** @date Dec 11, 2022
5  **
6  ** @copyright
7  ** Copyright (C) 2017 - 2022 Seamly, LLC
8  ** https://github.com/fashionfreedom/seamly2d
9  **
10  ** @brief
11  ** Seamly2D is free software: you can redistribute it and/or modify
12  ** it under the terms of the GNU General Public License as published by
13  ** the Free Software Foundation, either version 3 of the License, or
14  ** (at your option) any later version.
15  **
16  ** Seamly2D is distributed in the hope that it will be useful,
17  ** but WITHOUT ANY WARRANTY; without even the implied warranty of
18  ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  ** GNU General Public License for more details.
20  **
21  ** You should have received a copy of the GNU General Public License
22  ** along with Seamly2D. If not, see <http://www.gnu.org/licenses/>.
23  **************************************************************************/
24 
25 /************************************************************************
26  **
27  ** @file vpattern.h
28  ** @author Roman Telezhynskyi <dismine(at)gmail.com>
29  ** @date 24 2, 2014
30  **
31  ** @brief
32  ** @copyright
33  ** This source code is part of the Valentina project, a pattern making
34  ** program, whose allow create and modeling patterns of clothing.
35  ** Copyright (C) 2013-2015 Valentina project
36  ** <https://bitbucket.org/dismine/valentina> All Rights Reserved.
37  **
38  ** Valentina is free software: you can redistribute it and/or modify
39  ** it under the terms of the GNU General Public License as published by
40  ** the Free Software Foundation, either version 3 of the License, or
41  ** (at your option) any later version.
42  **
43  ** Valentina is distributed in the hope that it will be useful,
44  ** but WITHOUT ANY WARRANTY; without even the implied warranty of
45  ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46  ** GNU General Public License for more details.
47  **
48  ** You should have received a copy of the GNU General Public License
49  ** along with Valentina. If not, see <http://www.gnu.org/licenses/>.
50  **
51  *************************************************************************/
52 
53 #ifndef VPATTERN_H
54 #define VPATTERN_H
55 
56 #include "../ifc/xml/vabstractpattern.h"
57 #include "../ifc/xml/vtoolrecord.h"
58 #include "../vpatterndb/vcontainer.h"
59 #include "../ifc/xml/vpatternconverter.h"
60 
61 class VMainGraphicsScene;
62 class VNodeDetail;
63 
64 /**
65  * @brief The VPattern class working with pattern file.
66  */
67 class VPattern : public VAbstractPattern
68 {
69  Q_OBJECT
70 public:
72  QObject *parent = nullptr);
73 
74  virtual void CreateEmptyFile() Q_DECL_OVERRIDE;
75 
76  void Parse(const Document &parse);
77 
78  void setCurrentData();
79  virtual void UpdateToolData(const quint32 &id, VContainer *data) Q_DECL_OVERRIDE;
80 
81  virtual void IncrementReferens(quint32 id) const Q_DECL_OVERRIDE;
82  virtual void DecrementReferens(quint32 id) const Q_DECL_OVERRIDE;
83 
84  quint32 getActiveBasePoint();
85 
87 
88  virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE;
89  virtual bool SaveDocument(const QString &fileName, QString &error) Q_DECL_OVERRIDE;
90 
91  QRectF ActiveDrawBoundingRect() const;
92 
93  void addEmptyCustomVariable(const QString &name);
94  void addEmptyCustomVariableAfter(const QString &after, const QString &name);
95  void removeCustomVariable(const QString &name);
96  void MoveUpIncrement(const QString &name);
97  void MoveDownIncrement(const QString &name);
98 
99  void setIncrementName(const QString &name, const QString &text);
100  void SetIncrementFormula(const QString &name, const QString &text);
101  void setIncrementDescription(const QString &name, const QString &text);
102 
103  void replaceNameInFormula(QVector<VFormulaField> &expressions, const QString &name, const QString &newName);
104 
105  virtual QString GenerateLabel(const LabelType &type, const QString &reservedName = QString())const Q_DECL_OVERRIDE;
106  virtual QString GenerateSuffix(const QString &type) const Q_DECL_OVERRIDE;
107 
108  bool IsDefCustom() const;
109  void SetDefCustom(bool value);
110 
111  int GetDefCustomHeight() const;
112  void SetDefCustomHeight(int value);
113 
114  int GetDefCustomSize() const;
115  void SetDefCustomSize(int value);
116 
117  bool IsReadOnly() const;
118  void SetReadOnly(bool rOnly);
119 
120  void LiteParseIncrements();
121 
122  static const QString AttrReadOnly;
123 
124 public slots:
125  virtual void LiteParseTree(const Document &parse) Q_DECL_OVERRIDE;
126 
127 protected:
128  virtual void customEvent(QEvent * event) Q_DECL_OVERRIDE;
129 
130 private:
131  Q_DISABLE_COPY(VPattern)
132 
133  VContainer *data; /** @brief data container with data. */
134  Draw *mode; /** @brief mode current draw mode. */
137 
138  VNodeDetail parsePieceNode(const QDomElement &domElement) const;
139 
140  void parseDraftBlockElement(const QDomNode &node, const Document &parse);
141  void ParseDrawMode(const QDomNode &node, const Document &parse, const Draw &mode);
142  void parsePieceElement(QDomElement &domElement, const Document &parse);
143  void parsePieceNodes(const QDomElement &domElement, VPiece &piece, qreal width, bool closed) const;
144  void ParsePieceDataTag(const QDomElement &domElement, VPiece &piece) const;
145  void ParsePiecePatternInfo(const QDomElement &domElement, VPiece &piece) const;
146  void ParsePieceGrainline(const QDomElement &domElement, VPiece &piece) const;
147  void parsePatternPieces(const QDomElement &domElement, const Document &parse);
148 
149  void ParsePointElement(VMainGraphicsScene *scene, QDomElement &domElement,
150  const Document &parse, const QString &type);
151  void ParseLineElement(VMainGraphicsScene *scene, const QDomElement &domElement,
152  const Document &parse);
153  void ParseSplineElement(VMainGraphicsScene *scene, QDomElement &domElement,
154  const Document &parse, const QString &type);
155  void ParseArcElement(VMainGraphicsScene *scene, QDomElement &domElement,
156  const Document &parse, const QString &type);
157  void ParseEllipticalArcElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse,
158  const QString &type);
159  void ParseToolsElement(VMainGraphicsScene *scene, const QDomElement &domElement,
160  const Document &parse, const QString &type);
161  void ParseOperationElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse,
162  const QString &type);
163 
164  void ParsePathElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
165 
166  void ParseIncrementsElement(const QDomNode &node);
167  void PrepareForParse(const Document &parse);
168  void ToolsCommonAttributes(const QDomElement &domElement, quint32 &id);
169  void PointsCommonAttributes(const QDomElement &domElement, quint32 &id, QString &name, qreal &mx,
170  qreal &my, bool &labelVisible, QString &lineType,
171  QString &lineWeight, QString &lineColor);
172  void PointsCommonAttributes(const QDomElement &domElement, quint32 &id, QString &name, qreal &mx,
173  qreal &my, bool &labelVisible);
174  void PointsCommonAttributes(const QDomElement &domElement, quint32 &id, qreal &mx, qreal &my);
175  void SplinesCommonAttributes(const QDomElement &domElement, quint32 &id, quint32 &idObject,
176  quint32 &idTool);
177  template <typename T>
178  QRectF ToolBoundingRect(const QRectF &rec, const quint32 &id) const;
179  void parseCurrentDraftBlock();
180  QString GetLabelBase(quint32 index)const;
181 
182  void ParseToolBasePoint(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
183  void ParseToolEndLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
184  void ParseToolAlongLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
185  void ParseToolShoulderPoint(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
186  void ParseToolNormal(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
187  void ParseToolBisector(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
188  void ParseToolLineIntersect(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
189  void ParseToolPointOfContact(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
190  void ParseNodePoint(const QDomElement &domElement, const Document &parse);
191  void ParseAnchorPoint(const QDomElement &domElement, const Document &parse);
192  void ParseToolHeight(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
193  void ParseToolTriangle(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
194  void parseIntersectXYTool(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
195  void ParseToolCutSpline(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
196  void ParseToolCutSplinePath(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
197  void ParseToolCutArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
198  void ParseToolLineIntersectAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
199  void ParseToolCurveIntersectAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
200  void ParseToolPointOfIntersectionArcs(VMainGraphicsScene *scene, const QDomElement &domElement,
201  const Document &parse);
202  void ParseToolPointOfIntersectionCircles(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
203  void ParseToolPointOfIntersectionCurves(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
204  void ParseToolPointFromCircleAndTangent(VMainGraphicsScene *scene, QDomElement &domElement,
205  const Document &parse);
206  void ParseToolPointFromArcAndTangent(VMainGraphicsScene *scene, const QDomElement &domElement,
207  const Document &parse);
208  void ParseToolTrueDarts(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
209 
210  // TODO. Delete if minimal supported version is 0.2.7
212  "Time to refactor the code.");
213  void ParseOldToolSpline(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
214 
215  void ParseToolSpline(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
216  void ParseToolCubicBezier(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
217 
218  // TODO. Delete if minimal supported version is 0.2.7
220  "Time to refactor the code.");
221  void ParseOldToolSplinePath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
222 
223  void ParseToolSplinePath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
224  void ParseToolCubicBezierPath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse);
225  void ParseNodeSpline(const QDomElement &domElement, const Document &parse);
226  void ParseNodeSplinePath(const QDomElement &domElement, const Document &parse);
227 
228  void ParseToolArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
229  void ParseNodeArc(const QDomElement &domElement, const Document &parse);
230  void ParseToolArcWithLength(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
231 
232  void ParseToolEllipticalArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
233  void ParseNodeEllipticalArc(const QDomElement &domElement, const Document &parse);
234 
235  void ParseToolRotation(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
236  void ParseToolMirrorByLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
237  void ParseToolMirrorByAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
238  void ParseToolMove(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse);
239 
240  qreal EvalFormula(VContainer *data, const QString &formula, bool *ok) const;
241 
242  QDomElement MakeEmptyIncrement(const QString &name);
243  QDomElement FindIncrement(const QString &name) const;
244 
245  void GarbageCollector();
246 };
247 
248 #endif // VPATTERN_H
The VContainer class container of all variables.
Definition: vcontainer.h:141
The VMainGraphicsScene class main scene.
The VNodeDetail class keep information about detail node.
Definition: vnodedetail.h:70
The VPattern class working with pattern file.
Definition: vpattern.h:68
void SetDefCustomSize(int value)
Definition: vpattern.cpp:3851
virtual void customEvent(QEvent *event) Q_DECL_OVERRIDE
Definition: vpattern.cpp:625
VMainGraphicsScene * draftScene
mode current draw mode.
Definition: vpattern.h:135
void ParseToolEndLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1301
int GetDefCustomSize() const
Definition: vpattern.cpp:3823
void MoveDownIncrement(const QString &name)
Definition: vpattern.cpp:3518
void ParsePieceDataTag(const QDomElement &domElement, VPiece &piece) const
Definition: vpattern.cpp:925
void ParseNodeArc(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2833
void ParseOperationElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse, const QString &type)
Definition: vpattern.cpp:3350
void ParsePiecePatternInfo(const QDomElement &domElement, VPiece &piece) const
Definition: vpattern.cpp:949
QVector< quint32 > getActivePatternPieces() const
Definition: vpattern.cpp:385
QString GetLabelBase(quint32 index) const
Definition: vpattern.cpp:1203
VMainGraphicsScene * pieceScene
Definition: vpattern.h:136
void replaceNameInFormula(QVector< VFormulaField > &expressions, const QString &name, const QString &newName)
Definition: vpattern.cpp:3567
void ParseToolPointOfIntersectionCircles(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2042
void ParsePathElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:3383
quint32 getActiveBasePoint()
getActiveBasePoint return id base point current draft block.
Definition: vpattern.cpp:363
static const QString AttrReadOnly
Definition: vpattern.h:122
void setIncrementDescription(const QString &name, const QString &text)
Definition: vpattern.cpp:3556
void ParseIncrementsElement(const QDomNode &node)
ParseIncrementsElement parse increments tag.
Definition: vpattern.cpp:3425
Draw * mode
data container with data.
Definition: vpattern.h:134
void ParseToolTrueDarts(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2193
VPattern(VContainer *data, Draw *mode, VMainGraphicsScene *draftScene, VMainGraphicsScene *pieceScene, QObject *parent=nullptr)
Definition: vpattern.cpp:105
void ParseToolPointOfIntersectionCurves(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2086
void ParseToolPointFromArcAndTangent(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2160
QRectF ActiveDrawBoundingRect() const
Definition: vpattern.cpp:3959
void ParseAnchorPoint(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1659
void ParseToolHeight(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1681
void ParseToolBisector(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1496
void ParseToolCutSplinePath(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1820
void ToolsCommonAttributes(const QDomElement &domElement, quint32 &id)
Definition: vpattern.cpp:3950
int GetDefCustomHeight() const
Definition: vpattern.cpp:3764
void ParseNodeSplinePath(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2650
void PrepareForParse(const Document &parse)
Definition: vpattern.cpp:3914
Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer< CONVERTER_VERSION_CHECK(0, 2, 7), "Time to refactor the code.")
void ParseNodeEllipticalArc(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2798
void ParseToolLineIntersectAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1905
virtual QString GenerateSuffix(const QString &type) const Q_DECL_OVERRIDE
Definition: vpattern.cpp:3676
VContainer * data
Definition: vpattern.h:133
void parseCurrentDraftBlock()
Definition: vpattern.cpp:1192
void ParseToolArcWithLength(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2868
QRectF ToolBoundingRect(const QRectF &rec, const quint32 &id) const
void ParseToolLineIntersect(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1544
void ParseToolAlongLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1353
void parsePieceElement(QDomElement &domElement, const Document &parse)
parsePieceElement parse piece tag.
Definition: vpattern.cpp:807
void ParseToolCurveIntersectAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1958
void ParseNodePoint(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1620
void LiteParseIncrements()
Definition: vpattern.cpp:441
QDomElement FindIncrement(const QString &name) const
Definition: vpattern.cpp:3112
void addEmptyCustomVariable(const QString &name)
Definition: vpattern.cpp:3465
void ParseToolCubicBezier(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2346
void ParseArcElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse, const QString &type)
ParseArcElement parse arc tag.
Definition: vpattern.cpp:3241
virtual void DecrementReferens(quint32 id) const Q_DECL_OVERRIDE
DecrementReferens decrement reference parent objects.
Definition: vpattern.cpp:4094
void parsePatternPieces(const QDomElement &domElement, const Document &parse)
parsePatternPieces parse pieces tag.
Definition: vpattern.cpp:983
void ParseToolPointOfContact(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1575
void ParseToolPointFromCircleAndTangent(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2118
virtual void CreateEmptyFile() Q_DECL_OVERRIDE
CreateEmptyFile create minimal empty file.
Definition: vpattern.cpp:121
void ParseOldToolSplinePath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2391
void PointsCommonAttributes(const QDomElement &domElement, quint32 &id, QString &name, qreal &mx, qreal &my, bool &labelVisible, QString &lineType, QString &lineWeight, QString &lineColor)
Definition: vpattern.cpp:1005
QDomElement MakeEmptyIncrement(const QString &name)
Definition: vpattern.cpp:3102
void ParseNodeSpline(const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2604
void ParsePieceGrainline(const QDomElement &domElement, VPiece &piece) const
Definition: vpattern.cpp:964
bool IsReadOnly() const
Definition: vpattern.cpp:3882
void SetIncrementFormula(const QString &name, const QString &text)
Definition: vpattern.cpp:3545
void ParseToolSplinePath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2453
void ParseToolArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2695
void ParseToolShoulderPoint(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1400
virtual QString GenerateLabel(const LabelType &type, const QString &reservedName=QString()) const Q_DECL_OVERRIDE
GenerateLabel create name for draft block basepoint.
Definition: vpattern.cpp:3630
void GarbageCollector()
Definition: vpattern.cpp:3133
void ParseToolMirrorByLine(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2960
void SetReadOnly(bool rOnly)
Definition: vpattern.cpp:3895
void ParsePointElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse, const QString &type)
ParsePointElement parse point tag.
Definition: vpattern.cpp:1040
void MoveUpIncrement(const QString &name)
Definition: vpattern.cpp:3502
bool IsDefCustom() const
Definition: vpattern.cpp:3710
void ParseToolsElement(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse, const QString &type)
ParseToolsElement parse tools tag.
Definition: vpattern.cpp:3309
void ParseToolEllipticalArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2743
void ParseToolRotation(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2917
VNodeDetail parsePieceNode(const QDomElement &domElement) const
Definition: vpattern.cpp:638
void setIncrementName(const QString &name, const QString &text)
Definition: vpattern.cpp:3534
void SplinesCommonAttributes(const QDomElement &domElement, quint32 &id, quint32 &idObject, quint32 &idTool)
Definition: vpattern.cpp:1184
void ParseToolBasePoint(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1268
void removeCustomVariable(const QString &name)
Definition: vpattern.cpp:3494
void ParseToolCutSpline(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1778
virtual void setXMLContent(const QString &fileName) Q_DECL_OVERRIDE
Definition: vpattern.cpp:149
virtual void UpdateToolData(const quint32 &id, VContainer *data) Q_DECL_OVERRIDE
UpdateToolData update tool in list tools.
Definition: vpattern.cpp:347
void parseIntersectXYTool(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1745
void ParseToolCutArc(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1863
virtual bool SaveDocument(const QString &fileName, QString &error) Q_DECL_OVERRIDE
Definition: vpattern.cpp:410
void ParseToolCubicBezierPath(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2547
virtual void IncrementReferens(quint32 id) const Q_DECL_OVERRIDE
IncrementReferens increment reference parent objects.
Definition: vpattern.cpp:4080
void ParseToolNormal(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1448
void ParseEllipticalArcElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse, const QString &type)
ParseEllipticalArcElement parse elliptical arc tag.
Definition: vpattern.cpp:3277
void ParseSplineElement(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse, const QString &type)
ParseSplineElement parse spline tag.
Definition: vpattern.cpp:3178
void parseDraftBlockElement(const QDomNode &node, const Document &parse)
parseDraftBlockElement parse draw tag.
Definition: vpattern.cpp:684
virtual void LiteParseTree(const Document &parse) Q_DECL_OVERRIDE
LiteParseTree lite parse file.
Definition: vpattern.cpp:515
void ParseToolSpline(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2280
void ParseToolMove(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:3020
void ParseLineElement(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
ParseLineElement parse line tag.
Definition: vpattern.cpp:1158
void ParseToolTriangle(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:1714
void SetDefCustom(bool value)
Definition: vpattern.cpp:3731
void SetDefCustomHeight(int value)
Definition: vpattern.cpp:3792
void addEmptyCustomVariableAfter(const QString &after, const QString &name)
Definition: vpattern.cpp:3475
void ParseOldToolSpline(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2239
void Parse(const Document &parse)
Parse parse file.
Definition: vpattern.cpp:160
void setCurrentData()
setCurrentData set current data set.
Definition: vpattern.cpp:274
qreal EvalFormula(VContainer *data, const QString &formula, bool *ok) const
Definition: vpattern.cpp:3072
void ParseDrawMode(const QDomNode &node, const Document &parse, const Draw &mode)
ParseDrawMode parse draw tag with draw mode.
Definition: vpattern.cpp:731
void ParseToolPointOfIntersectionArcs(VMainGraphicsScene *scene, const QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2009
void parsePieceNodes(const QDomElement &domElement, VPiece &piece, qreal width, bool closed) const
Definition: vpattern.cpp:907
void ParseToolMirrorByAxis(VMainGraphicsScene *scene, QDomElement &domElement, const Document &parse)
Definition: vpattern.cpp:2990
Definition: vpiece.h:88
#define CONVERTER_VERSION_CHECK(major, minor, patch)
Document
LabelType
Draw
Definition: vgeometrydef.h:55