QCAD Application Framework
CAD Application Development and Automation.
Main Page
Related Pages
Modules
Classes
Files
File List
File Members
All
Classes
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
dl_creationinterface.h
Go to the documentation of this file.
1
/****************************************************************************
2
** Copyright (C) 2001-2011 RibbonSoft. All rights reserved.
3
**
4
** This file is part of the dxflib project.
5
**
6
** This file may be distributed and/or modified under the terms of the
7
** GNU General Public License version 2 as published by the Free Software
8
** Foundation and appearing in the file LICENSE.GPL included in the
9
** packaging of this file.
10
**
11
** Licensees holding valid dxflib Professional Edition licenses may use
12
** this file in accordance with the dxflib Commercial License
13
** Agreement provided with the Software.
14
**
15
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
16
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
17
**
18
** See http://www.ribbonsoft.com for further details.
19
**
20
** Contact info@ribbonsoft.com if any conditions of this licensing are
21
** not clear to you.
22
**
23
**********************************************************************/
24
25
#ifndef DL_CREATIONINTERFACE_H
26
#define DL_CREATIONINTERFACE_H
27
28
#include <string.h>
29
30
#include "
dl_attributes.h
"
31
#include "
dl_codes.h
"
32
#include "
dl_entities.h
"
33
#include "
dl_extrusion.h
"
34
45
class
DL_CreationInterface
{
46
public
:
47
DL_CreationInterface
() {
48
extrusion
=
new
DL_Extrusion
;
49
}
50
virtual
~DL_CreationInterface
() {
51
delete
extrusion
;
52
}
53
58
virtual
void
processCodeValuePair
(
unsigned
int
groupCode,
char
* groupValue) = 0;
59
63
virtual
void
addLayer
(
const
DL_LayerData
& data) = 0;
64
71
virtual
void
addBlock
(
const
DL_BlockData
& data) = 0;
72
74
virtual
void
endBlock
() = 0;
75
77
virtual
void
addPoint
(
const
DL_PointData
& data) = 0;
78
80
virtual
void
addLine
(
const
DL_LineData
& data) = 0;
81
83
virtual
void
addArc
(
const
DL_ArcData
& data) = 0;
84
86
virtual
void
addCircle
(
const
DL_CircleData
& data) = 0;
87
89
virtual
void
addEllipse
(
const
DL_EllipseData
& data) = 0;
90
92
virtual
void
addPolyline
(
const
DL_PolylineData
& data) = 0;
93
95
virtual
void
addVertex
(
const
DL_VertexData
& data) = 0;
96
98
virtual
void
addSpline
(
const
DL_SplineData
& data) = 0;
99
101
virtual
void
addControlPoint
(
const
DL_ControlPointData
& data) = 0;
102
104
virtual
void
addKnot
(
const
DL_KnotData
& data) = 0;
105
107
virtual
void
addInsert
(
const
DL_InsertData
& data) = 0;
108
110
virtual
void
addTrace
(
const
DL_TraceData
& data) = 0;
111
113
virtual
void
add3dFace
(
const
DL_3dFaceData
& data) = 0;
114
116
virtual
void
addSolid
(
const
DL_SolidData
& data) = 0;
117
118
120
virtual
void
addMText
(
const
DL_MTextData
& data) = 0;
121
127
virtual
void
addMTextChunk
(
const
char
* text) = 0;
128
130
virtual
void
addText
(
const
DL_TextData
& data) = 0;
131
135
virtual
void
addDimAlign
(
const
DL_DimensionData
& data,
136
const
DL_DimAlignedData
& edata) = 0;
140
virtual
void
addDimLinear
(
const
DL_DimensionData
& data,
141
const
DL_DimLinearData
& edata) = 0;
142
146
virtual
void
addDimRadial
(
const
DL_DimensionData
& data,
147
const
DL_DimRadialData
& edata) = 0;
148
152
virtual
void
addDimDiametric
(
const
DL_DimensionData
& data,
153
const
DL_DimDiametricData
& edata) = 0;
154
158
virtual
void
addDimAngular
(
const
DL_DimensionData
& data,
159
const
DL_DimAngularData
& edata) = 0;
160
164
virtual
void
addDimAngular3P
(
const
DL_DimensionData
& data,
165
const
DL_DimAngular3PData
& edata) = 0;
166
170
virtual
void
addDimOrdinate
(
const
DL_DimensionData
& data,
171
const
DL_DimOrdinateData
& edata) = 0;
172
176
virtual
void
addLeader
(
const
DL_LeaderData
& data) = 0;
177
181
virtual
void
addLeaderVertex
(
const
DL_LeaderVertexData
& data) = 0;
182
186
virtual
void
addHatch
(
const
DL_HatchData
& data) = 0;
187
191
virtual
void
addImage
(
const
DL_ImageData
& data) = 0;
192
196
virtual
void
linkImage
(
const
DL_ImageDefData
& data) = 0;
197
201
virtual
void
addHatchLoop
(
const
DL_HatchLoopData
& data) = 0;
202
206
virtual
void
addHatchEdge
(
const
DL_HatchEdgeData
& data) = 0;
207
211
virtual
void
endEntity
() = 0;
212
216
virtual
void
addComment
(
const
char
* comment) = 0;
217
221
virtual
void
setVariableVector
(
const
char
* key,
222
double
v1,
double
v2,
double
v3,
int
code) = 0;
223
227
virtual
void
setVariableString
(
const
char
* key,
const
char
* value,
int
code) = 0;
228
232
virtual
void
setVariableInt
(
const
char
* key,
int
value,
int
code) = 0;
233
237
virtual
void
setVariableDouble
(
const
char
* key,
double
value,
int
code) = 0;
238
242
virtual
void
endSequence
() = 0;
243
245
void
setAttributes
(
const
DL_Attributes
& attrib) {
246
attributes
= attrib;
247
}
248
250
DL_Attributes
getAttributes
() {
251
return
attributes
;
252
}
253
255
void
setExtrusion
(
double
dx,
double
dy,
double
dz,
double
elevation) {
256
extrusion
->
setDirection
(dx, dy, dz);
257
extrusion
->
setElevation
(elevation);
258
}
259
261
DL_Extrusion
*
getExtrusion
() {
262
return
extrusion
;
263
}
264
265
protected
:
266
DL_Attributes
attributes
;
267
DL_Extrusion
*
extrusion
;
268
};
269
270
#endif
src
io
dxf
dxflib
src
dl_creationinterface.h
Generated on Tue Jun 26 2012 18:41:08 for QCAD Application Framework by
1.8.1.1