QGIS API Documentation 3.39.0-Master (47f7b3a4989)
Loading...
Searching...
No Matches
qgsdxfexport_p.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsdxfexport_p.h
3 --------------
4 begin : November 2019
5 copyright : (C) 2019 by Matthias Kuhn
7 ***************************************************************************/
8
9/***************************************************************************
10 * *
11 * This program 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 2 of the License, or *
14 * (at your option) any later version. *
15 * *
16 ***************************************************************************/
17
18
19#include "qgsvectorlayer.h"
23#include "qgsrenderer.h"
25#include "qgslabelsink.h"
26#include "qgsmaplayerstyle.h"
27#include "qgsrendercontext.h"
28#include "qgsdxfexport.h"
29
35{
36 DxfLayerJob( QgsVectorLayer *vl, const QString &layerStyleOverride, QgsRenderContext &renderContext, QgsDxfExport *dxfExport, const QString &splitLayerAttribute, const QString &layerDerivedName )
38 , styleOverride( vl )
39 , featureSource( vl )
41 , crs( vl->crs() )
42 , layerName( vl->name() )
45 {
46 if ( !layerStyleOverride.isNull() )
47 {
48 styleOverride.setOverrideStyle( layerStyleOverride );
49 }
50 fields = vl->fields();
52 renderer.reset( vl->renderer()->clone() );
54
55 labeling.reset( vl->labelsEnabled() ? vl->labeling()->clone() : nullptr );
56
57 attributes = renderer->usedAttributes( renderContext );
58 if ( !splitLayerAttribute.isNull() )
59 {
61 }
62
63 if ( labeling )
64 {
66 if ( const QgsRuleBasedLabeling *rbl = dynamic_cast<const QgsRuleBasedLabeling *>( labeling.get() ) )
67 {
69 labelingEngine->addProvider( ruleBasedLabelProvider );
70
72 {
73 labelingEngine->removeProvider( ruleBasedLabelProvider );
74 ruleBasedLabelProvider = nullptr;
75 }
76 }
77 else
78 {
79 QgsPalLayerSettings settings = labeling->settings();
80 labelProvider = new QgsLabelSinkProvider( vl, QString(), dxfExport, &settings );
81 labelingEngine->addProvider( labelProvider );
82
84 {
85 labelingEngine->removeProvider( labelProvider );
86 labelProvider = nullptr;
87 }
88 }
89 }
90
91 // This will need to be started in a separate thread, if threaded somewhere else to
93 };
94
100 std::unique_ptr< QgsFeatureRenderer > renderer;
101 std::unique_ptr<QgsAbstractVectorLayerLabeling> labeling;
104 QString layerName;
108 QString layerDerivedName; // Obtained from overridden name, title or layer name
109 QSet<QString> attributes;
110
111 private:
112 DxfLayerJob( const DxfLayerJob & ) = delete;
113 DxfLayerJob &operator=( const DxfLayerJob & ) = delete;
114};
115
116// dxf color palette
117static const int sDxfColors[][3] =
118{
119 { 255, 255, 255 },
120 { 255, 0, 0 },
121 { 255, 255, 0 },
122 { 0, 255, 0 },
123 { 0, 255, 255 },
124 { 0, 0, 255 },
125 { 255, 0, 255 },
126 { 0, 0, 0 },
127 { 128, 128, 128 },
128 { 192, 192, 192 },
129 { 255, 0, 0 },
130 { 255, 127, 127 },
131 { 204, 0, 0 },
132 { 204, 102, 102 },
133 { 153, 0, 0 },
134 { 153, 76, 76 },
135 { 127, 0, 0 },
136 { 127, 63, 63 },
137 { 76, 0, 0 },
138 { 76, 38, 38 },
139 { 255, 63, 0 },
140 { 255, 159, 127 },
141 { 204, 51, 0 },
142 { 204, 127, 102 },
143 { 153, 38, 0 },
144 { 153, 95, 76 },
145 { 127, 31, 0 },
146 { 127, 79, 63 },
147 { 76, 19, 0 },
148 { 76, 47, 38 },
149 { 255, 127, 0 },
150 { 255, 191, 127 },
151 { 204, 102, 0 },
152 { 204, 153, 102 },
153 { 153, 76, 0 },
154 { 153, 114, 76 },
155 { 127, 63, 0 },
156 { 127, 95, 63 },
157 { 76, 38, 0 },
158 { 76, 57, 38 },
159 { 255, 191, 0 },
160 { 255, 223, 127 },
161 { 204, 153, 0 },
162 { 204, 178, 102 },
163 { 153, 114, 0 },
164 { 153, 133, 76 },
165 { 127, 95, 0 },
166 { 127, 111, 63 },
167 { 76, 57, 0 },
168 { 76, 66, 38 },
169 { 255, 255, 0 },
170 { 255, 255, 127 },
171 { 204, 204, 0 },
172 { 204, 204, 102 },
173 { 153, 153, 0 },
174 { 153, 153, 76 },
175 { 127, 127, 0 },
176 { 127, 127, 63 },
177 { 76, 76, 0 },
178 { 76, 76, 38 },
179 { 191, 255, 0 },
180 { 223, 255, 127 },
181 { 153, 204, 0 },
182 { 178, 204, 102 },
183 { 114, 153, 0 },
184 { 133, 153, 76 },
185 { 95, 127, 0 },
186 { 111, 127, 63 },
187 { 57, 76, 0 },
188 { 66, 76, 38 },
189 { 127, 255, 0 },
190 { 191, 255, 127 },
191 { 102, 204, 0 },
192 { 153, 204, 102 },
193 { 76, 153, 0 },
194 { 114, 153, 76 },
195 { 63, 127, 0 },
196 { 95, 127, 63 },
197 { 38, 76, 0 },
198 { 57, 76, 38 },
199 { 63, 255, 0 },
200 { 159, 255, 127 },
201 { 51, 204, 0 },
202 { 127, 204, 102 },
203 { 38, 153, 0 },
204 { 95, 153, 76 },
205 { 31, 127, 0 },
206 { 79, 127, 63 },
207 { 19, 76, 0 },
208 { 47, 76, 38 },
209 { 0, 255, 0 },
210 { 127, 255, 127 },
211 { 0, 204, 0 },
212 { 102, 204, 102 },
213 { 0, 153, 0 },
214 { 76, 153, 76 },
215 { 0, 127, 0 },
216 { 63, 127, 63 },
217 { 0, 76, 0 },
218 { 38, 76, 38 },
219 { 0, 255, 63 },
220 { 127, 255, 159 },
221 { 0, 204, 51 },
222 { 102, 204, 127 },
223 { 0, 153, 38 },
224 { 76, 153, 95 },
225 { 0, 127, 31 },
226 { 63, 127, 79 },
227 { 0, 76, 19 },
228 { 38, 76, 47 },
229 { 0, 255, 127 },
230 { 127, 255, 191 },
231 { 0, 204, 102 },
232 { 102, 204, 153 },
233 { 0, 153, 76 },
234 { 76, 153, 114 },
235 { 0, 127, 63 },
236 { 63, 127, 95 },
237 { 0, 76, 38 },
238 { 38, 76, 57 },
239 { 0, 255, 191 },
240 { 127, 255, 223 },
241 { 0, 204, 153 },
242 { 102, 204, 178 },
243 { 0, 153, 114 },
244 { 76, 153, 133 },
245 { 0, 127, 95 },
246 { 63, 127, 111 },
247 { 0, 76, 57 },
248 { 38, 76, 66 },
249 { 0, 255, 255 },
250 { 127, 255, 255 },
251 { 0, 204, 204 },
252 { 102, 204, 204 },
253 { 0, 153, 153 },
254 { 76, 153, 153 },
255 { 0, 127, 127 },
256 { 63, 127, 127 },
257 { 0, 76, 76 },
258 { 38, 76, 76 },
259 { 0, 191, 255 },
260 { 127, 223, 255 },
261 { 0, 153, 204 },
262 { 102, 178, 204 },
263 { 0, 114, 153 },
264 { 76, 133, 153 },
265 { 0, 95, 127 },
266 { 63, 111, 127 },
267 { 0, 57, 76 },
268 { 38, 66, 76 },
269 { 0, 127, 255 },
270 { 127, 191, 255 },
271 { 0, 102, 204 },
272 { 102, 153, 204 },
273 { 0, 76, 153 },
274 { 76, 114, 153 },
275 { 0, 63, 127 },
276 { 63, 95, 127 },
277 { 0, 38, 76 },
278 { 38, 57, 76 },
279 { 0, 63, 255 },
280 { 127, 159, 255 },
281 { 0, 51, 204 },
282 { 102, 127, 204 },
283 { 0, 38, 153 },
284 { 76, 95, 153 },
285 { 0, 31, 127 },
286 { 63, 79, 127 },
287 { 0, 19, 76 },
288 { 38, 47, 76 },
289 { 0, 0, 255 },
290 { 127, 127, 255 },
291 { 0, 0, 204 },
292 { 102, 102, 204 },
293 { 0, 0, 153 },
294 { 76, 76, 153 },
295 { 0, 0, 127 },
296 { 63, 63, 127 },
297 { 0, 0, 76 },
298 { 38, 38, 76 },
299 { 63, 0, 255 },
300 { 159, 127, 255 },
301 { 51, 0, 204 },
302 { 127, 102, 204 },
303 { 38, 0, 153 },
304 { 95, 76, 153 },
305 { 31, 0, 127 },
306 { 79, 63, 127 },
307 { 19, 0, 76 },
308 { 47, 38, 76 },
309 { 127, 0, 255 },
310 { 191, 127, 255 },
311 { 102, 0, 204 },
312 { 153, 102, 204 },
313 { 76, 0, 153 },
314 { 114, 76, 153 },
315 { 63, 0, 127 },
316 { 95, 63, 127 },
317 { 38, 0, 76 },
318 { 57, 38, 76 },
319 { 191, 0, 255 },
320 { 223, 127, 255 },
321 { 153, 0, 204 },
322 { 178, 102, 204 },
323 { 114, 0, 153 },
324 { 133, 76, 153 },
325 { 95, 0, 127 },
326 { 111, 63, 127 },
327 { 57, 0, 76 },
328 { 66, 38, 76 },
329 { 255, 0, 255 },
330 { 255, 127, 255 },
331 { 204, 0, 204 },
332 { 204, 102, 204 },
333 { 153, 0, 153 },
334 { 153, 76, 153 },
335 { 127, 0, 127 },
336 { 127, 63, 127 },
337 { 76, 0, 76 },
338 { 76, 38, 76 },
339 { 255, 0, 191 },
340 { 255, 127, 223 },
341 { 204, 0, 153 },
342 { 204, 102, 178 },
343 { 153, 0, 114 },
344 { 153, 76, 133 },
345 { 127, 0, 95 },
346 { 127, 63, 111 },
347 { 76, 0, 57 },
348 { 76, 38, 66 },
349 { 255, 0, 127 },
350 { 255, 127, 191 },
351 { 204, 0, 102 },
352 { 204, 102, 153 },
353 { 153, 0, 76 },
354 { 153, 76, 114 },
355 { 127, 0, 63 },
356 { 127, 63, 95 },
357 { 76, 0, 38 },
358 { 76, 38, 57 },
359 { 255, 0, 63 },
360 { 255, 127, 159 },
361 { 204, 0, 51 },
362 { 204, 102, 127 },
363 { 153, 0, 38 },
364 { 153, 76, 95 },
365 { 127, 0, 31 },
366 { 127, 63, 79 },
367 { 76, 0, 19 },
368 { 76, 38, 47 },
369 { 51, 51, 51 },
370 { 91, 91, 91 },
371 { 132, 132, 132 },
372 { 173, 173, 173 },
373 { 214, 214, 214 },
374 { 255, 255, 255 },
375};
376
377static const char *DXF_ENCODINGS[][2] =
378{
379 { "ASCII", "" },
380 { "8859_1", "ISO-8859-1" },
381 { "8859_2", "ISO-8859-2" },
382 { "8859_3", "ISO-8859-3" },
383 { "8859_4", "ISO-8859-4" },
384 { "8859_5", "ISO-8859-5" },
385 { "8859_6", "ISO-8859-6" },
386 { "8859_7", "ISO-8859-7" },
387 { "8859_8", "ISO-8859-8" },
388 { "8859_9", "ISO-8859-9" },
389// { "DOS437", "" },
390 { "DOS850", "CP850" },
391// { "DOS852", "" },
392// { "DOS855", "" },
393// { "DOS857", "" },
394// { "DOS860", "" },
395// { "DOS861", "" },
396// { "DOS863", "" },
397// { "DOS864", "" },
398// { "DOS865", "" },
399// { "DOS869", "" },
400// { "DOS932", "" },
401 { "MACINTOSH", "MacRoman" },
402 { "BIG5", "Big5" },
403 { "KSC5601", "ksc5601.1987-0" },
404// { "JOHAB", "" },
405 { "DOS866", "CP866" },
406 { "ANSI_1250", "CP1250" },
407 { "ANSI_1251", "CP1251" },
408 { "ANSI_1252", "CP1252" },
409 { "GB2312", "GB2312" },
410 { "ANSI_1253", "CP1253" },
411 { "ANSI_1254", "CP1254" },
412 { "ANSI_1255", "CP1255" },
413 { "ANSI_1256", "CP1256" },
414 { "ANSI_1257", "CP1257" },
415 { "ANSI_874", "CP874" },
416 { "ANSI_932", "Shift_JIS" },
417 { "ANSI_936", "CP936" },
418 { "ANSI_949", "CP949" },
419 { "ANSI_949", "ms949" },
420 { "ANSI_950", "CP950" },
421// { "ANSI_1361", "" },
422// { "ANSI_1200", "" },
423 { "ANSI_1258", "CP1258" },
424};
425
426// From GDAL trailer.dxf
427#define DXF_TRAILER "\
4280\n\
429SECTION\n\
4302\n\
431OBJECTS\n\
4320\n\
433DICTIONARY\n\
4345\n\
435C\n\
436330\n\
4370\n\
438100\n\
439AcDbDictionary\n\
440281\n\
441 1\n\
4423\n\
443ACAD_GROUP\n\
444350\n\
445D\n\
4463\n\
447ACAD_LAYOUT\n\
448350\n\
4491A\n\
4503\n\
451ACAD_MLEADERSTYLE\n\
452350\n\
45343\n\
4543\n\
455ACAD_MLINESTYLE\n\
456350\n\
45717\n\
4583\n\
459ACAD_PLOTSETTINGS\n\
460350\n\
46119\n\
4623\n\
463ACAD_PLOTSTYLENAME\n\
464350\n\
465E\n\
4663\n\
467ACAD_TABLESTYLE\n\
468350\n\
46942\n\
4703\n\
471ACAD_VISUALSTYLE\n\
472350\n\
4732A\n\
4740\n\
475DICTIONARY\n\
4765\n\
477D\n\
478102\n\
479{ACAD_REACTORS\n\
480330\n\
481C\n\
482102\n\
483}\n\
484330\n\
485C\n\
486100\n\
487AcDbDictionary\n\
488281\n\
489 1\n\
4900\n\
491DICTIONARY\n\
4925\n\
4931A\n\
494102\n\
495{ACAD_REACTORS\n\
496330\n\
497C\n\
498102\n\
499}\n\
500330\n\
501C\n\
502100\n\
503AcDbDictionary\n\
504281\n\
505 1\n\
5063\n\
507Layout1\n\
508350\n\
5091E\n\
5103\n\
511Layout2\n\
512350\n\
51326\n\
5143\n\
515Model\n\
516350\n\
51722\n\
5180\n\
519DICTIONARY\n\
5205\n\
52143\n\
522102\n\
523{ACAD_REACTORS\n\
524330\n\
525C\n\
526102\n\
527}\n\
528330\n\
529C\n\
530100\n\
531AcDbDictionary\n\
532281\n\
533 1\n\
5340\n\
535DICTIONARY\n\
5365\n\
53717\n\
538102\n\
539{ACAD_REACTORS\n\
540330\n\
541C\n\
542102\n\
543}\n\
544330\n\
545C\n\
546100\n\
547AcDbDictionary\n\
548281\n\
549 1\n\
5503\n\
551Standard\n\
552350\n\
55318\n\
5540\n\
555DICTIONARY\n\
5565\n\
55719\n\
558102\n\
559{ACAD_REACTORS\n\
560330\n\
561C\n\
562102\n\
563}\n\
564330\n\
565C\n\
566100\n\
567AcDbDictionary\n\
568281\n\
569 1\n\
5700\n\
571ACDBDICTIONARYWDFLT\n\
5725\n\
573E\n\
574102\n\
575{ACAD_REACTORS\n\
576330\n\
577C\n\
578102\n\
579}\n\
580330\n\
581C\n\
582100\n\
583AcDbDictionary\n\
584281\n\
585 1\n\
5863\n\
587Normal\n\
588350\n\
589F\n\
590100\n\
591AcDbDictionaryWithDefault\n\
592340\n\
593F\n\
5940\n\
595DICTIONARY\n\
5965\n\
59742\n\
598102\n\
599{ACAD_REACTORS\n\
600330\n\
601C\n\
602102\n\
603}\n\
604330\n\
605C\n\
606100\n\
607AcDbDictionary\n\
608281\n\
609 1\n\
6100\n\
611DICTIONARY\n\
6125\n\
6132A\n\
614102\n\
615{ACAD_REACTORS\n\
616330\n\
617C\n\
618102\n\
619}\n\
620330\n\
621C\n\
622100\n\
623AcDbDictionary\n\
624281\n\
625 1\n\
6263\n\
6272dWireframe\n\
628350\n\
6292F\n\
6303\n\
6313D Hidden\n\
632350\n\
63331\n\
6343\n\
6353dWireframe\n\
636350\n\
63730\n\
6383\n\
639Basic\n\
640350\n\
64132\n\
6423\n\
643Brighten\n\
644350\n\
64536\n\
6463\n\
647ColorChange\n\
648350\n\
6493A\n\
6503\n\
651Conceptual\n\
652350\n\
65334\n\
6543\n\
655Dim\n\
656350\n\
65735\n\
6583\n\
659Facepattern\n\
660350\n\
66139\n\
6623\n\
663Flat\n\
664350\n\
6652B\n\
6663\n\
667FlatWithEdges\n\
668350\n\
6692C\n\
6703\n\
671Gouraud\n\
672350\n\
6732D\n\
6743\n\
675GouraudWithEdges\n\
676350\n\
6772E\n\
6783\n\
679Linepattern\n\
680350\n\
68138\n\
6823\n\
683Realistic\n\
684350\n\
68533\n\
6863\n\
687Thicken\n\
688350\n\
68937\n\
6900\n\
691LAYOUT\n\
6925\n\
6931E\n\
694102\n\
695{ACAD_REACTORS\n\
696330\n\
6971A\n\
698102\n\
699}\n\
700330\n\
7011A\n\
702100\n\
703AcDbPlotSettings\n\
7041\n\
705\n\
7062\n\
707none_device\n\
7084\n\
709\n\
7106\n\
711\n\
71240\n\
7130.0\n\
71441\n\
7150.0\n\
71642\n\
7170.0\n\
71843\n\
7190.0\n\
72044\n\
7210.0\n\
72245\n\
7230.0\n\
72446\n\
7250.0\n\
72647\n\
7270.0\n\
72848\n\
7290.0\n\
73049\n\
7310.0\n\
732140\n\
7330.0\n\
734141\n\
7350.0\n\
736142\n\
7371.0\n\
738143\n\
7391.0\n\
74070\n\
741 688\n\
74272\n\
743 0\n\
74473\n\
745 0\n\
74674\n\
747 5\n\
7487\n\
749\n\
75075\n\
751 16\n\
75276\n\
753 0\n\
75477\n\
755 2\n\
75678\n\
757 300\n\
758147\n\
7591.0\n\
760148\n\
7610.0\n\
762149\n\
7630.0\n\
764100\n\
765AcDbLayout\n\
7661\n\
767Layout1\n\
76870\n\
769 1\n\
77071\n\
771 1\n\
77210\n\
7730.0\n\
77420\n\
7750.0\n\
77611\n\
77712.0\n\
77821\n\
7799.0\n\
78012\n\
7810.0\n\
78222\n\
7830.0\n\
78432\n\
7850.0\n\
78614\n\
7871.000000000000000E+20\n\
78824\n\
7891.000000000000000E+20\n\
79034\n\
7911.000000000000000E+20\n\
79215\n\
793-1.000000000000000E+20\n\
79425\n\
795-1.000000000000000E+20\n\
79635\n\
797-1.000000000000000E+20\n\
798146\n\
7990.0\n\
80013\n\
8010.0\n\
80223\n\
8030.0\n\
80433\n\
8050.0\n\
80616\n\
8071.0\n\
80826\n\
8090.0\n\
81036\n\
8110.0\n\
81217\n\
8130.0\n\
81427\n\
8151.0\n\
81637\n\
8170.0\n\
81876\n\
819 0\n\
820330\n\
8211B\n\
8220\n\
823LAYOUT\n\
8245\n\
82526\n\
826102\n\
827{ACAD_REACTORS\n\
828330\n\
8291A\n\
830102\n\
831}\n\
832330\n\
8331A\n\
834100\n\
835AcDbPlotSettings\n\
8361\n\
837\n\
8382\n\
839none_device\n\
8404\n\
841\n\
8426\n\
843\n\
84440\n\
8450.0\n\
84641\n\
8470.0\n\
84842\n\
8490.0\n\
85043\n\
8510.0\n\
85244\n\
8530.0\n\
85445\n\
8550.0\n\
85646\n\
8570.0\n\
85847\n\
8590.0\n\
86048\n\
8610.0\n\
86249\n\
8630.0\n\
864140\n\
8650.0\n\
866141\n\
8670.0\n\
868142\n\
8691.0\n\
870143\n\
8711.0\n\
87270\n\
873 688\n\
87472\n\
875 0\n\
87673\n\
877 0\n\
87874\n\
879 5\n\
8807\n\
881\n\
88275\n\
883 16\n\
88476\n\
885 0\n\
88677\n\
887 2\n\
88878\n\
889 300\n\
890147\n\
8911.0\n\
892148\n\
8930.0\n\
894149\n\
8950.0\n\
896100\n\
897AcDbLayout\n\
8981\n\
899Layout2\n\
90070\n\
901 1\n\
90271\n\
903 2\n\
90410\n\
9050.0\n\
90620\n\
9070.0\n\
90811\n\
9090.0\n\
91021\n\
9110.0\n\
91212\n\
9130.0\n\
91422\n\
9150.0\n\
91632\n\
9170.0\n\
91814\n\
9190.0\n\
92024\n\
9210.0\n\
92234\n\
9230.0\n\
92415\n\
9250.0\n\
92625\n\
9270.0\n\
92835\n\
9290.0\n\
930146\n\
9310.0\n\
93213\n\
9330.0\n\
93423\n\
9350.0\n\
93633\n\
9370.0\n\
93816\n\
9391.0\n\
94026\n\
9410.0\n\
94236\n\
9430.0\n\
94417\n\
9450.0\n\
94627\n\
9471.0\n\
94837\n\
9490.0\n\
95076\n\
951 0\n\
952330\n\
95323\n\
9540\n\
955LAYOUT\n\
9565\n\
95722\n\
958102\n\
959{ACAD_REACTORS\n\
960330\n\
9611A\n\
962102\n\
963}\n\
964330\n\
9651A\n\
966100\n\
967AcDbPlotSettings\n\
9681\n\
969\n\
9702\n\
971none_device\n\
9724\n\
973\n\
9746\n\
975\n\
97640\n\
9770.0\n\
97841\n\
9790.0\n\
98042\n\
9810.0\n\
98243\n\
9830.0\n\
98444\n\
9850.0\n\
98645\n\
9870.0\n\
98846\n\
9890.0\n\
99047\n\
9910.0\n\
99248\n\
9930.0\n\
99449\n\
9950.0\n\
996140\n\
9970.0\n\
998141\n\
9990.0\n\
1000142\n\
10011.0\n\
1002143\n\
10031.0\n\
100470\n\
10051712\n\
100672\n\
1007 0\n\
100873\n\
1009 0\n\
101074\n\
1011 0\n\
10127\n\
1013\n\
101475\n\
1015 0\n\
101676\n\
1017 0\n\
101877\n\
1019 2\n\
102078\n\
1021 300\n\
1022147\n\
10231.0\n\
1024148\n\
10250.0\n\
1026149\n\
10270.0\n\
1028100\n\
1029AcDbLayout\n\
10301\n\
1031Model\n\
103270\n\
1033 1\n\
103471\n\
1035 0\n\
103610\n\
10370.0\n\
103820\n\
10390.0\n\
104011\n\
104112.0\n\
104221\n\
10439.0\n\
104412\n\
10450.0\n\
104622\n\
10470.0\n\
104832\n\
10490.0\n\
105014\n\
105130.0\n\
105224\n\
105349.75\n\
105434\n\
10550.0\n\
105615\n\
1057130.5\n\
105825\n\
1059163.1318914119703\n\
106035\n\
10610.0\n\
1062146\n\
10630.0\n\
106413\n\
10650.0\n\
106623\n\
10670.0\n\
106833\n\
10690.0\n\
107016\n\
10711.0\n\
107226\n\
10730.0\n\
107436\n\
10750.0\n\
107617\n\
10770.0\n\
107827\n\
10791.0\n\
108037\n\
10810.0\n\
108276\n\
1083 0\n\
1084330\n\
10851F\n\
1086331\n\
108729\n\
10880\n\
1089MLINESTYLE\n\
10905\n\
109118\n\
1092102\n\
1093{ACAD_REACTORS\n\
1094330\n\
109517\n\
1096102\n\
1097}\n\
1098330\n\
109917\n\
1100100\n\
1101AcDbMlineStyle\n\
11022\n\
1103Standard\n\
110470\n\
1105 0\n\
11063\n\
1107\n\
110862\n\
1109 256\n\
111051\n\
111190.0\n\
111252\n\
111390.0\n\
111471\n\
1115 2\n\
111649\n\
11170.5\n\
111862\n\
1119 256\n\
11206\n\
1121BYLAYER\n\
112249\n\
1123-0.5\n\
112462\n\
1125 256\n\
11266\n\
1127BYLAYER\n\
11280\n\
1129ACDBPLACEHOLDER\n\
11305\n\
1131F\n\
1132102\n\
1133{ACAD_REACTORS\n\
1134330\n\
1135E\n\
1136102\n\
1137}\n\
1138330\n\
1139E\n\
11400\n\
1141VISUALSTYLE\n\
11425\n\
11432F\n\
1144102\n\
1145{ACAD_REACTORS\n\
1146330\n\
11472A\n\
1148102\n\
1149}\n\
1150330\n\
11512A\n\
1152100\n\
1153AcDbVisualStyle\n\
11542\n\
11552dWireframe\n\
115670\n\
1157 4\n\
115871\n\
1159 0\n\
116072\n\
1161 2\n\
116273\n\
1163 0\n\
116490\n\
1165 0\n\
116640\n\
1167-0.6\n\
116841\n\
1169-30.0\n\
117062\n\
1171 5\n\
117263\n\
1173 7\n\
1174421\n\
117516777215\n\
117674\n\
1177 1\n\
117891\n\
1179 4\n\
118064\n\
1181 7\n\
118265\n\
1183 257\n\
118475\n\
1185 1\n\
1186175\n\
1187 1\n\
118842\n\
11891.0\n\
119092\n\
1191 0\n\
119266\n\
1193 257\n\
119443\n\
11951.0\n\
119676\n\
1197 1\n\
119877\n\
1199 6\n\
120078\n\
1201 2\n\
120267\n\
1203 7\n\
120479\n\
1205 5\n\
1206170\n\
1207 0\n\
1208171\n\
1209 0\n\
1210290\n\
1211 0\n\
1212174\n\
1213 0\n\
121493\n\
1215 1\n\
121644\n\
12170.0\n\
1218173\n\
1219 0\n\
1220291\n\
1221 0\n\
122245\n\
12230.0\n\
12241001\n\
1225ACAD\n\
12261000\n\
1227AcDbSavedByObjectVersion\n\
12281070\n\
1229 0\n\
12300\n\
1231VISUALSTYLE\n\
12325\n\
123331\n\
1234102\n\
1235{ACAD_REACTORS\n\
1236330\n\
12372A\n\
1238102\n\
1239}\n\
1240330\n\
12412A\n\
1242100\n\
1243AcDbVisualStyle\n\
12442\n\
12453D Hidden\n\
124670\n\
1247 6\n\
124871\n\
1249 1\n\
125072\n\
1251 2\n\
125273\n\
1253 2\n\
125490\n\
1255 0\n\
125640\n\
1257-0.6\n\
125841\n\
1259-30.0\n\
126062\n\
1261 5\n\
126263\n\
1263 7\n\
1264421\n\
126516777215\n\
126674\n\
1267 2\n\
126891\n\
1269 2\n\
127064\n\
1271 7\n\
127265\n\
1273 257\n\
127475\n\
1275 2\n\
1276175\n\
1277 1\n\
127842\n\
127940.0\n\
128092\n\
1281 0\n\
128266\n\
1283 257\n\
128443\n\
12851.0\n\
128676\n\
1287 1\n\
128877\n\
1289 6\n\
129078\n\
1291 2\n\
129267\n\
1293 7\n\
129479\n\
1295 3\n\
1296170\n\
1297 0\n\
1298171\n\
1299 0\n\
1300290\n\
1301 0\n\
1302174\n\
1303 0\n\
130493\n\
1305 1\n\
130644\n\
13070.0\n\
1308173\n\
1309 0\n\
1310291\n\
1311 0\n\
131245\n\
13130.0\n\
13141001\n\
1315ACAD\n\
13161000\n\
1317AcDbSavedByObjectVersion\n\
13181070\n\
1319 0\n\
13200\n\
1321VISUALSTYLE\n\
13225\n\
132330\n\
1324102\n\
1325{ACAD_REACTORS\n\
1326330\n\
13272A\n\
1328102\n\
1329}\n\
1330330\n\
13312A\n\
1332100\n\
1333AcDbVisualStyle\n\
13342\n\
13353dWireframe\n\
133670\n\
1337 5\n\
133871\n\
1339 0\n\
134072\n\
1341 2\n\
134273\n\
1343 0\n\
134490\n\
1345 0\n\
134640\n\
1347-0.6\n\
134841\n\
1349-30.0\n\
135062\n\
1351 5\n\
135263\n\
1353 7\n\
1354421\n\
135516777215\n\
135674\n\
1357 1\n\
135891\n\
1359 4\n\
136064\n\
1361 7\n\
136265\n\
1363 257\n\
136475\n\
1365 1\n\
1366175\n\
1367 1\n\
136842\n\
13691.0\n\
137092\n\
1371 0\n\
137266\n\
1373 257\n\
137443\n\
13751.0\n\
137676\n\
1377 1\n\
137877\n\
1379 6\n\
138078\n\
1381 2\n\
138267\n\
1383 7\n\
138479\n\
1385 5\n\
1386170\n\
1387 0\n\
1388171\n\
1389 0\n\
1390290\n\
1391 0\n\
1392174\n\
1393 0\n\
139493\n\
1395 1\n\
139644\n\
13970.0\n\
1398173\n\
1399 0\n\
1400291\n\
1401 0\n\
140245\n\
14030.0\n\
14041001\n\
1405ACAD\n\
14061000\n\
1407AcDbSavedByObjectVersion\n\
14081070\n\
1409 0\n\
14100\n\
1411VISUALSTYLE\n\
14125\n\
141332\n\
1414102\n\
1415{ACAD_REACTORS\n\
1416330\n\
14172A\n\
1418102\n\
1419}\n\
1420330\n\
14212A\n\
1422100\n\
1423AcDbVisualStyle\n\
14242\n\
1425Basic\n\
142670\n\
1427 7\n\
142871\n\
1429 1\n\
143072\n\
1431 0\n\
143273\n\
1433 1\n\
143490\n\
1435 0\n\
143640\n\
1437-0.6\n\
143841\n\
1439-30.0\n\
144062\n\
1441 5\n\
144263\n\
1443 7\n\
1444421\n\
144516777215\n\
144674\n\
1447 0\n\
144891\n\
1449 4\n\
145064\n\
1451 7\n\
145265\n\
1453 257\n\
145475\n\
1455 1\n\
1456175\n\
1457 1\n\
145842\n\
14591.0\n\
146092\n\
1461 8\n\
146266\n\
1463 7\n\
146443\n\
14651.0\n\
146676\n\
1467 1\n\
146877\n\
1469 6\n\
147078\n\
1471 2\n\
147267\n\
1473 7\n\
147479\n\
1475 5\n\
1476170\n\
1477 0\n\
1478171\n\
1479 0\n\
1480290\n\
1481 0\n\
1482174\n\
1483 0\n\
148493\n\
1485 1\n\
148644\n\
14870.0\n\
1488173\n\
1489 0\n\
1490291\n\
1491 1\n\
149245\n\
14930.0\n\
14941001\n\
1495ACAD\n\
14961000\n\
1497AcDbSavedByObjectVersion\n\
14981070\n\
1499 0\n\
15000\n\
1501VISUALSTYLE\n\
15025\n\
150336\n\
1504102\n\
1505{ACAD_REACTORS\n\
1506330\n\
15072A\n\
1508102\n\
1509}\n\
1510330\n\
15112A\n\
1512100\n\
1513AcDbVisualStyle\n\
15142\n\
1515Brighten\n\
151670\n\
1517 12\n\
151871\n\
1519 2\n\
152072\n\
1521 2\n\
152273\n\
1523 0\n\
152490\n\
1525 0\n\
152640\n\
1527-0.6\n\
152841\n\
1529-30.0\n\
153062\n\
1531 5\n\
153263\n\
1533 7\n\
1534421\n\
153516777215\n\
153674\n\
1537 1\n\
153891\n\
1539 4\n\
154064\n\
1541 7\n\
154265\n\
1543 257\n\
154475\n\
1545 1\n\
1546175\n\
1547 1\n\
154842\n\
15491.0\n\
155092\n\
1551 8\n\
155266\n\
1553 7\n\
155443\n\
15551.0\n\
155676\n\
1557 1\n\
155877\n\
1559 6\n\
156078\n\
1561 2\n\
156267\n\
1563 7\n\
156479\n\
1565 5\n\
1566170\n\
1567 0\n\
1568171\n\
1569 0\n\
1570290\n\
1571 0\n\
1572174\n\
1573 0\n\
157493\n\
1575 1\n\
157644\n\
157750.0\n\
1578173\n\
1579 0\n\
1580291\n\
1581 1\n\
158245\n\
15830.0\n\
15841001\n\
1585ACAD\n\
15861000\n\
1587AcDbSavedByObjectVersion\n\
15881070\n\
1589 0\n\
15900\n\
1591VISUALSTYLE\n\
15925\n\
15933A\n\
1594102\n\
1595{ACAD_REACTORS\n\
1596330\n\
15972A\n\
1598102\n\
1599}\n\
1600330\n\
16012A\n\
1602100\n\
1603AcDbVisualStyle\n\
16042\n\
1605ColorChange\n\
160670\n\
1607 16\n\
160871\n\
1609 2\n\
161072\n\
1611 2\n\
161273\n\
1613 3\n\
161490\n\
1615 0\n\
161640\n\
1617-0.6\n\
161841\n\
1619-30.0\n\
162062\n\
1621 5\n\
162263\n\
1623 8\n\
1624421\n\
16258421504\n\
162674\n\
1627 1\n\
162891\n\
1629 4\n\
163064\n\
1631 7\n\
163265\n\
1633 257\n\
163475\n\
1635 1\n\
1636175\n\
1637 1\n\
163842\n\
16391.0\n\
164092\n\
1641 8\n\
164266\n\
1643 8\n\
1644424\n\
16458421504\n\
164643\n\
16471.0\n\
164876\n\
1649 1\n\
165077\n\
1651 6\n\
165278\n\
1653 2\n\
165467\n\
1655 7\n\
165679\n\
1657 5\n\
1658170\n\
1659 0\n\
1660171\n\
1661 0\n\
1662290\n\
1663 0\n\
1664174\n\
1665 0\n\
166693\n\
1667 1\n\
166844\n\
16690.0\n\
1670173\n\
1671 0\n\
1672291\n\
1673 1\n\
167445\n\
16750.0\n\
16761001\n\
1677ACAD\n\
16781000\n\
1679AcDbSavedByObjectVersion\n\
16801070\n\
1681 0\n\
16820\n\
1683VISUALSTYLE\n\
16845\n\
168534\n\
1686102\n\
1687{ACAD_REACTORS\n\
1688330\n\
16892A\n\
1690102\n\
1691}\n\
1692330\n\
16932A\n\
1694100\n\
1695AcDbVisualStyle\n\
16962\n\
1697Conceptual\n\
169870\n\
1699 9\n\
170071\n\
1701 3\n\
170272\n\
1703 2\n\
170473\n\
1705 0\n\
170690\n\
1707 0\n\
170840\n\
1709-0.6\n\
171041\n\
1711-30.0\n\
171262\n\
1713 5\n\
171463\n\
1715 7\n\
1716421\n\
171716777215\n\
171874\n\
1719 2\n\
172091\n\
1721 2\n\
172264\n\
1723 7\n\
172465\n\
1725 257\n\
172675\n\
1727 1\n\
1728175\n\
1729 1\n\
173042\n\
173140.0\n\
173292\n\
1733 8\n\
173466\n\
1735 7\n\
173643\n\
17371.0\n\
173876\n\
1739 1\n\
174077\n\
1741 6\n\
174278\n\
1743 2\n\
174467\n\
1745 7\n\
174679\n\
1747 3\n\
1748170\n\
1749 0\n\
1750171\n\
1751 0\n\
1752290\n\
1753 0\n\
1754174\n\
1755 0\n\
175693\n\
1757 1\n\
175844\n\
17590.0\n\
1760173\n\
1761 0\n\
1762291\n\
1763 0\n\
176445\n\
17650.0\n\
17661001\n\
1767ACAD\n\
17681000\n\
1769AcDbSavedByObjectVersion\n\
17701070\n\
1771 0\n\
17720\n\
1773VISUALSTYLE\n\
17745\n\
177535\n\
1776102\n\
1777{ACAD_REACTORS\n\
1778330\n\
17792A\n\
1780102\n\
1781}\n\
1782330\n\
17832A\n\
1784100\n\
1785AcDbVisualStyle\n\
17862\n\
1787Dim\n\
178870\n\
1789 11\n\
179071\n\
1791 2\n\
179272\n\
1793 2\n\
179473\n\
1795 0\n\
179690\n\
1797 0\n\
179840\n\
1799-0.6\n\
180041\n\
1801-30.0\n\
180262\n\
1803 5\n\
180463\n\
1805 7\n\
1806421\n\
180716777215\n\
180874\n\
1809 1\n\
181091\n\
1811 4\n\
181264\n\
1813 7\n\
181465\n\
1815 257\n\
181675\n\
1817 1\n\
1818175\n\
1819 1\n\
182042\n\
18211.0\n\
182292\n\
1823 8\n\
182466\n\
1825 7\n\
182643\n\
18271.0\n\
182876\n\
1829 1\n\
183077\n\
1831 6\n\
183278\n\
1833 2\n\
183467\n\
1835 7\n\
183679\n\
1837 5\n\
1838170\n\
1839 0\n\
1840171\n\
1841 0\n\
1842290\n\
1843 0\n\
1844174\n\
1845 0\n\
184693\n\
1847 1\n\
184844\n\
1849-50.0\n\
1850173\n\
1851 0\n\
1852291\n\
1853 1\n\
185445\n\
18550.0\n\
18561001\n\
1857ACAD\n\
18581000\n\
1859AcDbSavedByObjectVersion\n\
18601070\n\
1861 0\n\
18620\n\
1863VISUALSTYLE\n\
18645\n\
186539\n\
1866102\n\
1867{ACAD_REACTORS\n\
1868330\n\
18692A\n\
1870102\n\
1871}\n\
1872330\n\
18732A\n\
1874100\n\
1875AcDbVisualStyle\n\
18762\n\
1877Facepattern\n\
187870\n\
1879 15\n\
188071\n\
1881 2\n\
188272\n\
1883 2\n\
188473\n\
1885 0\n\
188690\n\
1887 0\n\
188840\n\
1889-0.6\n\
189041\n\
1891-30.0\n\
189262\n\
1893 5\n\
189463\n\
1895 7\n\
1896421\n\
189716777215\n\
189874\n\
1899 1\n\
190091\n\
1901 4\n\
190264\n\
1903 7\n\
190465\n\
1905 257\n\
190675\n\
1907 1\n\
1908175\n\
1909 1\n\
191042\n\
19111.0\n\
191292\n\
1913 8\n\
191466\n\
1915 7\n\
191643\n\
19171.0\n\
191876\n\
1919 1\n\
192077\n\
1921 6\n\
192278\n\
1923 2\n\
192467\n\
1925 7\n\
192679\n\
1927 5\n\
1928170\n\
1929 0\n\
1930171\n\
1931 0\n\
1932290\n\
1933 0\n\
1934174\n\
1935 0\n\
193693\n\
1937 1\n\
193844\n\
19390.0\n\
1940173\n\
1941 0\n\
1942291\n\
1943 1\n\
194445\n\
19450.0\n\
19461001\n\
1947ACAD\n\
19481000\n\
1949AcDbSavedByObjectVersion\n\
19501070\n\
1951 0\n\
19520\n\
1953VISUALSTYLE\n\
19545\n\
19552B\n\
1956102\n\
1957{ACAD_REACTORS\n\
1958330\n\
19592A\n\
1960102\n\
1961}\n\
1962330\n\
19632A\n\
1964100\n\
1965AcDbVisualStyle\n\
19662\n\
1967Flat\n\
196870\n\
1969 0\n\
197071\n\
1971 2\n\
197272\n\
1973 1\n\
197473\n\
1975 1\n\
197690\n\
1977 2\n\
197840\n\
1979-0.6\n\
198041\n\
198130.0\n\
198262\n\
1983 5\n\
198463\n\
1985 7\n\
1986421\n\
198716777215\n\
198874\n\
1989 0\n\
199091\n\
1991 4\n\
199264\n\
1993 7\n\
199465\n\
1995 257\n\
199675\n\
1997 1\n\
1998175\n\
1999 1\n\
200042\n\
20011.0\n\
200292\n\
2003 8\n\
200466\n\
2005 7\n\
200643\n\
20071.0\n\
200876\n\
2009 1\n\
201077\n\
2011 6\n\
201278\n\
2013 2\n\
201467\n\
2015 7\n\
201679\n\
2017 5\n\
2018170\n\
2019 0\n\
2020171\n\
2021 0\n\
2022290\n\
2023 0\n\
2024174\n\
2025 0\n\
202693\n\
2027 13\n\
202844\n\
20290.0\n\
2030173\n\
2031 0\n\
2032291\n\
2033 1\n\
203445\n\
20350.0\n\
20361001\n\
2037ACAD\n\
20381000\n\
2039AcDbSavedByObjectVersion\n\
20401070\n\
2041 0\n\
20420\n\
2043VISUALSTYLE\n\
20445\n\
20452C\n\
2046102\n\
2047{ACAD_REACTORS\n\
2048330\n\
20492A\n\
2050102\n\
2051}\n\
2052330\n\
20532A\n\
2054100\n\
2055AcDbVisualStyle\n\
20562\n\
2057FlatWithEdges\n\
205870\n\
2059 1\n\
206071\n\
2061 2\n\
206272\n\
2063 1\n\
206473\n\
2065 1\n\
206690\n\
2067 2\n\
206840\n\
2069-0.6\n\
207041\n\
207130.0\n\
207262\n\
2073 5\n\
207463\n\
2075 7\n\
2076421\n\
207716777215\n\
207874\n\
2079 1\n\
208091\n\
2081 4\n\
208264\n\
2083 7\n\
208465\n\
2085 257\n\
208675\n\
2087 1\n\
2088175\n\
2089 1\n\
209042\n\
20911.0\n\
209292\n\
2093 0\n\
209466\n\
2095 257\n\
209643\n\
20971.0\n\
209876\n\
2099 1\n\
210077\n\
2101 6\n\
210278\n\
2103 2\n\
210467\n\
2105 7\n\
210679\n\
2107 5\n\
2108170\n\
2109 0\n\
2110171\n\
2111 0\n\
2112290\n\
2113 0\n\
2114174\n\
2115 0\n\
211693\n\
2117 13\n\
211844\n\
21190.0\n\
2120173\n\
2121 0\n\
2122291\n\
2123 1\n\
212445\n\
21250.0\n\
21261001\n\
2127ACAD\n\
21281000\n\
2129AcDbSavedByObjectVersion\n\
21301070\n\
2131 0\n\
21320\n\
2133VISUALSTYLE\n\
21345\n\
21352D\n\
2136102\n\
2137{ACAD_REACTORS\n\
2138330\n\
21392A\n\
2140102\n\
2141}\n\
2142330\n\
21432A\n\
2144100\n\
2145AcDbVisualStyle\n\
21462\n\
2147Gouraud\n\
214870\n\
2149 2\n\
215071\n\
2151 2\n\
215272\n\
2153 2\n\
215473\n\
2155 1\n\
215690\n\
2157 2\n\
215840\n\
2159-0.6\n\
216041\n\
216130.0\n\
216262\n\
2163 5\n\
216463\n\
2165 7\n\
2166421\n\
216716777215\n\
216874\n\
2169 0\n\
217091\n\
2171 4\n\
217264\n\
2173 7\n\
217465\n\
2175 257\n\
217675\n\
2177 1\n\
2178175\n\
2179 1\n\
218042\n\
21811.0\n\
218292\n\
2183 0\n\
218466\n\
2185 7\n\
218643\n\
21871.0\n\
218876\n\
2189 1\n\
219077\n\
2191 6\n\
219278\n\
2193 2\n\
219467\n\
2195 7\n\
219679\n\
2197 5\n\
2198170\n\
2199 0\n\
2200171\n\
2201 0\n\
2202290\n\
2203 0\n\
2204174\n\
2205 0\n\
220693\n\
2207 13\n\
220844\n\
22090.0\n\
2210173\n\
2211 0\n\
2212291\n\
2213 1\n\
221445\n\
22150.0\n\
22161001\n\
2217ACAD\n\
22181000\n\
2219AcDbSavedByObjectVersion\n\
22201070\n\
2221 0\n\
22220\n\
2223VISUALSTYLE\n\
22245\n\
22252E\n\
2226102\n\
2227{ACAD_REACTORS\n\
2228330\n\
22292A\n\
2230102\n\
2231}\n\
2232330\n\
22332A\n\
2234100\n\
2235AcDbVisualStyle\n\
22362\n\
2237GouraudWithEdges\n\
223870\n\
2239 3\n\
224071\n\
2241 2\n\
224272\n\
2243 2\n\
224473\n\
2245 1\n\
224690\n\
2247 2\n\
224840\n\
2249-0.6\n\
225041\n\
225130.0\n\
225262\n\
2253 5\n\
225463\n\
2255 7\n\
2256421\n\
225716777215\n\
225874\n\
2259 1\n\
226091\n\
2261 4\n\
226264\n\
2263 7\n\
226465\n\
2265 257\n\
226675\n\
2267 1\n\
2268175\n\
2269 1\n\
227042\n\
22711.0\n\
227292\n\
2273 0\n\
227466\n\
2275 257\n\
227643\n\
22771.0\n\
227876\n\
2279 1\n\
228077\n\
2281 6\n\
228278\n\
2283 2\n\
228467\n\
2285 7\n\
228679\n\
2287 5\n\
2288170\n\
2289 0\n\
2290171\n\
2291 0\n\
2292290\n\
2293 0\n\
2294174\n\
2295 0\n\
229693\n\
2297 13\n\
229844\n\
22990.0\n\
2300173\n\
2301 0\n\
2302291\n\
2303 1\n\
230445\n\
23050.0\n\
23061001\n\
2307ACAD\n\
23081000\n\
2309AcDbSavedByObjectVersion\n\
23101070\n\
2311 0\n\
23120\n\
2313VISUALSTYLE\n\
23145\n\
231538\n\
2316102\n\
2317{ACAD_REACTORS\n\
2318330\n\
23192A\n\
2320102\n\
2321}\n\
2322330\n\
23232A\n\
2324100\n\
2325AcDbVisualStyle\n\
23262\n\
2327Linepattern\n\
232870\n\
2329 14\n\
233071\n\
2331 2\n\
233272\n\
2333 2\n\
233473\n\
2335 0\n\
233690\n\
2337 0\n\
233840\n\
2339-0.6\n\
234041\n\
2341-30.0\n\
234262\n\
2343 5\n\
234463\n\
2345 7\n\
2346421\n\
234716777215\n\
234874\n\
2349 1\n\
235091\n\
2351 4\n\
235264\n\
2353 7\n\
235465\n\
2355 257\n\
235675\n\
2357 7\n\
2358175\n\
2359 7\n\
236042\n\
23611.0\n\
236292\n\
2363 8\n\
236466\n\
2365 7\n\
236643\n\
23671.0\n\
236876\n\
2369 1\n\
237077\n\
2371 6\n\
237278\n\
2373 2\n\
237467\n\
2375 7\n\
237679\n\
2377 5\n\
2378170\n\
2379 0\n\
2380171\n\
2381 0\n\
2382290\n\
2383 0\n\
2384174\n\
2385 0\n\
238693\n\
2387 1\n\
238844\n\
23890.0\n\
2390173\n\
2391 0\n\
2392291\n\
2393 1\n\
239445\n\
23950.0\n\
23961001\n\
2397ACAD\n\
23981000\n\
2399AcDbSavedByObjectVersion\n\
24001070\n\
2401 0\n\
24020\n\
2403VISUALSTYLE\n\
24045\n\
240533\n\
2406102\n\
2407{ACAD_REACTORS\n\
2408330\n\
24092A\n\
2410102\n\
2411}\n\
2412330\n\
24132A\n\
2414100\n\
2415AcDbVisualStyle\n\
24162\n\
2417Realistic\n\
241870\n\
2419 8\n\
242071\n\
2421 2\n\
242272\n\
2423 2\n\
242473\n\
2425 0\n\
242690\n\
2427 0\n\
242840\n\
2429-0.6\n\
243041\n\
2431-30.0\n\
243262\n\
2433 5\n\
243463\n\
2435 7\n\
2436421\n\
243716777215\n\
243874\n\
2439 1\n\
244091\n\
2441 0\n\
244264\n\
2443 7\n\
244465\n\
2445 257\n\
244675\n\
2447 1\n\
2448175\n\
2449 1\n\
245042\n\
24511.0\n\
245292\n\
2453 8\n\
245466\n\
2455 8\n\
2456424\n\
24577895160\n\
245843\n\
24591.0\n\
246076\n\
2461 1\n\
246277\n\
2463 6\n\
246478\n\
2465 2\n\
246667\n\
2467 7\n\
246879\n\
2469 5\n\
2470170\n\
2471 0\n\
2472171\n\
2473 0\n\
2474290\n\
2475 0\n\
2476174\n\
2477 0\n\
247893\n\
2479 13\n\
248044\n\
24810.0\n\
2482173\n\
2483 0\n\
2484291\n\
2485 0\n\
248645\n\
24870.0\n\
24881001\n\
2489ACAD\n\
24901000\n\
2491AcDbSavedByObjectVersion\n\
24921070\n\
2493 0\n\
24940\n\
2495VISUALSTYLE\n\
24965\n\
249737\n\
2498102\n\
2499{ACAD_REACTORS\n\
2500330\n\
25012A\n\
2502102\n\
2503}\n\
2504330\n\
25052A\n\
2506100\n\
2507AcDbVisualStyle\n\
25082\n\
2509Thicken\n\
251070\n\
2511 13\n\
251271\n\
2513 2\n\
251472\n\
2515 2\n\
251673\n\
2517 0\n\
251890\n\
2519 0\n\
252040\n\
2521-0.6\n\
252241\n\
2523-30.0\n\
252462\n\
2525 5\n\
252663\n\
2527 7\n\
2528421\n\
252916777215\n\
253074\n\
2531 1\n\
253291\n\
2533 4\n\
253464\n\
2535 7\n\
253665\n\
2537 257\n\
253875\n\
2539 1\n\
2540175\n\
2541 1\n\
254242\n\
25431.0\n\
254492\n\
2545 12\n\
254666\n\
2547 7\n\
254843\n\
25491.0\n\
255076\n\
2551 1\n\
255277\n\
2553 6\n\
255478\n\
2555 2\n\
255667\n\
2557 7\n\
255879\n\
2559 5\n\
2560170\n\
2561 0\n\
2562171\n\
2563 0\n\
2564290\n\
2565 0\n\
2566174\n\
2567 0\n\
256893\n\
2569 1\n\
257044\n\
25710.0\n\
2572173\n\
2573 0\n\
2574291\n\
2575 1\n\
257645\n\
25770.0\n\
25781001\n\
2579ACAD\n\
25801000\n\
2581AcDbSavedByObjectVersion\n\
25821070\n\
2583 0\n\
25840\n\
2585ENDSEC\n\
2586"
virtual QgsAbstractVectorLayerLabeling * clone() const =0
Returns a new copy of the object.
This class represents a coordinate reference system (CRS).
Exports QGIS layers to the DXF format.
static QgsExpressionContextScope * layerScope(const QgsMapLayer *layer)
Creates a new scope which contains variables and functions relating to a QgsMapLayer.
void appendScope(QgsExpressionContextScope *scope)
Appends a scope to the end of the context.
virtual QgsFeatureRenderer * clone() const =0
Create a deep copy of this renderer.
Container of fields for a vector layer.
Definition qgsfields.h:46
Implements a derived label provider for use with QgsLabelSink.
The QgsLabelingEngine class provides map labeling functionality.
void addProvider(QgsAbstractLabelProvider *provider)
Add provider of label features. Takes ownership of the provider.
void removeProvider(QgsAbstractLabelProvider *provider)
Remove provider if the provider's initialization failed. Provider instance is deleted.
Restore overridden layer style on destruction.
void setOverrideStyle(const QString &style)
Temporarily apply a different style to the layer.
Contains settings for how a map layer will be labeled.
Contains information about the context of a rendering operation.
QgsExpressionContext & expressionContext()
Gets the expression context.
QgsLabelingEngine * labelingEngine() const
Gets access to new labeling engine (may be nullptr).
bool prepare(QgsRenderContext &context, QSet< QString > &attributeNames) override
Prepare for registration of features.
Implements a derived label provider for rule based labels for use with QgsLabelSink.
Rule based labeling for a vector layer.
Partial snapshot of vector layer's state (only the members necessary for access to features)
virtual bool prepare(QgsRenderContext &context, QSet< QString > &attributeNames)
Prepare for registration of features.
void startRender(QgsRenderContext &context) override
To be called before rendering of labels begins.
Represents a vector layer which manages a vector based data sets.
bool labelsEnabled() const
Returns whether the layer contains labels which are enabled and should be drawn.
Q_INVOKABLE const QgsFeatureIds & selectedFeatureIds() const
Returns a list of the selected features IDs in this layer.
const QgsAbstractVectorLayerLabeling * labeling() const
Access to const labeling configuration.
QgsFeatureRenderer * renderer()
Returns the feature renderer used for rendering the features in the layer in 2D map views.
QSet< QgsFeatureId > QgsFeatureIds
Holds information about each layer in a DXF job.
QString splitLayerAttribute
QSet< QString > attributes
QgsDxfExport * dxfExport
DxfLayerJob(QgsVectorLayer *vl, const QString &layerStyleOverride, QgsRenderContext &renderContext, QgsDxfExport *dxfExport, const QString &splitLayerAttribute, const QString &layerDerivedName)
QgsFields fields
QString layerName
std::unique_ptr< QgsFeatureRenderer > renderer
QgsRenderContext renderContext
QString layerDerivedName
QgsMapLayerStyleOverride styleOverride
QgsLabelSinkProvider * labelProvider
QgsFeatureIds selectedFeatureIds
QgsCoordinateReferenceSystem crs
QgsRuleBasedLabelSinkProvider * ruleBasedLabelProvider
QgsVectorLayerFeatureSource featureSource
std::unique_ptr< QgsAbstractVectorLayerLabeling > labeling