├── demo
├── .gitignore
├── demo4.png
├── misc.png
├── ellipse.png
├── ellipse2.png
├── ellipse3.png
├── peludito.png
├── demo3.php
├── demo2.php
├── demo1.php
├── demo3.dxf
├── demo2.dxf
└── demo1.dxf
├── .gitignore
├── LICENSE.md
├── composer.json
├── README.md
├── LineType.php
├── Color.php
├── template.dxf
└── Creator.php
/demo/.gitignore:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | test
2 | .idea
3 | vendor/
4 | *.lock
--------------------------------------------------------------------------------
/demo/demo4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/demo4.png
--------------------------------------------------------------------------------
/demo/misc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/misc.png
--------------------------------------------------------------------------------
/demo/ellipse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/ellipse.png
--------------------------------------------------------------------------------
/demo/ellipse2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/ellipse2.png
--------------------------------------------------------------------------------
/demo/ellipse3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/ellipse3.png
--------------------------------------------------------------------------------
/demo/peludito.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KOYU-Tech/DXF-Creator-for-PHP/HEAD/demo/peludito.png
--------------------------------------------------------------------------------
/LICENSE.md:
--------------------------------------------------------------------------------
1 | GNU AGPL
2 | GNU AFFERO GENERAL PUBLIC LICENSE
3 | Version 3, 19 November 2007
4 | https://www.gnu.org/licenses/agpl-3.0.en.html
5 |
6 |
7 | Code added to this version.
8 | addImage Function
9 | was developed by Universidad de Buenos Aires. UBA.
10 | http://www.uba.ar/
11 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "adamasantares/dxf",
3 | "description": "A simple DXF creator for PHP",
4 | "keywords": ["php", "dxf"],
5 | "homepage": "https://github.com/KOYU-Tech/DXF-Creator-for-PHP#readme",
6 | "type": "library",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "Konstantin Kutsevalov",
11 | "email": "konstantin@kutsevalov.name"
12 | }
13 | ],
14 | "require": {
15 | "php": ">=5.4.0"
16 | },
17 | "autoload": {
18 | "psr-4": {
19 | "adamasantares\\dxf\\": ""
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/demo/demo3.php:
--------------------------------------------------------------------------------
1 | setColor(Color::rgb(0, 100, 0))
16 | ->addEllipse(-20, 0, 0, -20, 30, 0, 0.5)
17 | ->setLayer('2', Color::MAGENTA, LineType::SOLID)
18 | ->addEllipseBy3Points(20, 0, 0, 20, 30, 0, 35, 0, 0)
19 | ->saveToFile(dirname(__FILE__) . '/demo3.dxf');
20 |
21 | exit(" Done (" . dirname(__FILE__) . "/demo3.dxf)\n");
22 |
23 |
24 |
--------------------------------------------------------------------------------
/demo/demo2.php:
--------------------------------------------------------------------------------
1 | setColor(Color::rgb(0, 100, 0))
16 | ->setLineType(LineType::DASHDOTX2)
17 | ->addCircle(0, 0, 0, 33)
18 | ->setLayer('poly', Color::MAGENTA, LineType::SOLID)
19 | ->addPolyline([
20 | 100, 100,
21 | 100, 50,
22 | 50, 50,
23 | 50, 100,
24 | 30, 100,
25 | 30, 40,
26 | 35, 40,
27 | 35, 20,
28 | ])
29 | ->saveToFile(dirname(__FILE__) . '/demo2.dxf');
30 |
31 | exit(" Done (" . dirname(__FILE__) . "/demo2.dxf)\n");
32 |
33 |
34 |
--------------------------------------------------------------------------------
/demo/demo1.php:
--------------------------------------------------------------------------------
1 | setTextStyle('Consolas Regular', 'consola')
22 | ->addText(26, 46, 0, 'DXF testing', 8)
23 | ->setLayer('cyan', Color::CYAN)
24 | ->addLine(25, 0, 0, 100, 0, 0)
25 | ->addLine(100, 0, 0, 100, 75, 0)
26 | ->addLine(75, 100, 0, 0, 100, 0)
27 | ->addLine(0, 100, 0, 0, 25, 0)
28 | ->setLayer('blue', Color::BLUE, LineType::DASHDOT)
29 | ->addCircle(0, 0, 0, 25)
30 | ->setLayer('custom', Color::rgb(10, 145, 230))//, LineType::DASHED)
31 | ->addCircle(100, 100, 0, 25)
32 | ->setLayer('red', Color::RED)
33 | ->addArc(0, 100, 0, 25, 0.0, 270.0)
34 | ->setLayer('magenta', Color::MAGENTA)
35 | ->addArc(100, 0, 0, 25, 180.0, 90.0)
36 | ->setLayer('black')
37 | ->addPoint(0, 0, 0)
38 | ->addPoint(0, 100, 0)
39 | ->addPoint(100, 100, 0)
40 | ->addPoint(100, 0, 0)
41 | ->addImage(0, 0, 0, 50, 50, 0, $path, $width, $height)
42 | ->saveToFile(dirname(__FILE__) . '/demo1.dxf');
43 |
44 | exit(" Done (" . dirname(__FILE__) . "/demo1.dxf)\n");
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # DXF Creator for PHP
2 |
3 | A simple DXF creator for PHP.
4 | This code is the upgrade of [DXF-Writer](http://www.phpclasses.org/package/7954-PHP-Generate-CAD-files-in-the-AutoCAD-DXF-format.html).
5 |
6 | ## Examples
7 |
8 | Miscellaneous with image:
9 |
10 | ```
11 | // Setting image data
12 | $path="./peludito.png";
13 | $size=getimagesize($path);
14 | $width=$size[0];
15 | $height=$size[1];
16 |
17 | $dxf = new Creator(Creator::MILLIMETERS);
18 | $dxf->setTextStyle('Consolas Regular', 'consola')
19 | ->addText(26, 46, 0, 'DXF testing', 8)
20 | ->setColor(Color::CYAN) // change color of default layer
21 | ->addLine(25, 0, 0, 100, 0, 0)
22 | ->addLine(100, 0, 0, 100, 75, 0)
23 | ->addLine(75, 100, 0, 0, 100, 0)
24 | ->addLine(0, 100, 0, 0, 25, 0)
25 | ->setLayer('blue', Color::BLUE, LineType::DASHDOT) // create new layer
26 | ->addCircle(0, 0, 0, 25)
27 | ->setLayer('custom', Color::rgb(10, 145, 230), LineType::DASHED)
28 | ->addCircle(100, 100, 0, 25)
29 | ->setLayer('red', Color::RED)
30 | ->addArc(0, 100, 0, 25, 0.0, 270.0)
31 | ->setLayer('magenta', Color::MAGENTA)
32 | ->addArc(100, 0, 0, 25, 180.0, 90.0)
33 | ->setLayer('black')
34 | ->addPoint(0, 0, 0)
35 | ->addPoint(0, 100, 0)
36 | ->addPoint(100, 100, 0)
37 | ->addPoint(100, 0, 0)
38 | ->addImage(0, 0, 0, 50, 50, 0, $path, $width, $height)
39 | ->saveToFile('demo.dxf');
40 | ```
41 |
42 | Result:
43 |
44 |
45 |
46 |
47 | ## Install by Composer
48 |
49 | ```
50 | composer require adamasantares/dxf "0.1.6"
51 | ```
52 |
53 | or
54 |
55 | ```
56 | "require": {
57 | "adamasantares/dxf": "0.1.6"
58 | }
59 | ```
60 |
61 |
--------------------------------------------------------------------------------
/LineType.php:
--------------------------------------------------------------------------------
1 | http://speleoalex.altervista.org
5 | * @copyright Copyright (c) 2013
6 | * @license http://opensource.org/licenses/gpl-license.php GNU General Public License
7 | *
8 | * Upgrade script to "Creator"
9 | * @author Konstantin Kutsevalov
10 | * @since 2015/08
11 | *
12 | * @see http://www.autodesk.com/techpubs/autocad/acad2000/dxf/
13 | */
14 |
15 | namespace adamasantares\dxf;
16 |
17 |
18 | /**
19 | * Class LineType
20 | * @package adamasantares\dxf
21 | *
22 | * @see https://pythonhosted.org/dxfwrite/entities/linepattern.html#linepattern
23 | */
24 | final class LineType {
25 |
26 | const SOLID = 'CONTINUOUS';
27 | const CENTER = 'CENTER';
28 | const CENTERX2 = 'CENTERX2';
29 | const CENTER2 = 'CENTER2';
30 | const DASHED = 'DASHED';
31 | const DASHEDX2 = 'DASHEDX2';
32 | const DASHED2 = 'DASHED2';
33 | const PHANTOM = 'PHANTOM';
34 | const PHANTOMX2 = 'PHANTOMX2';
35 | const PHANTOM2 = 'PHANTOM2';
36 | const DASHDOT = 'DASHDOT';
37 | const DASHDOTX2 = 'DASHDOTX2';
38 | const DASHDOT2 = 'DASHDOT2';
39 | const DOT = 'DOT';
40 | const DOTX2 = 'DOTX2';
41 | const DOT2 = 'DOT2';
42 | const DIVIDE = 'DIVIDE';
43 | const DIVIDEX2 = 'DIVIDEX2';
44 | const DIVIDE2 = 'DIVIDE2';
45 |
46 |
47 | public static $lines = [
48 | self::SOLID => ['Solid line', "73\n0\n40\n0.0"],
49 | self::CENTER => ['Center ____ _ ____ _ ____ _ ____ _ ____ _ ____', "73\n4\n40\n50.8\n49\n31.75\n74\n0\n49\n-6.35\n74\n0\n49\n6.35\n74\n0\n49\n-6.35\n74\n0"],
50 | self::CENTERX2 => ['Center (2x) ________ __ ________ __ _____', "73\n4\n40\n101.6\n49\n63.5\n74\n0\n49\n-12.7\n74\n0\n49\n12.7\n74\n0\n49\n-12.7\n74\n0"],
51 | self::CENTER2 => ['Center (.5x) ___ _ ___ _ ___ _ ___ _ ___ _ ___', "73\n4\n40\n28.575\n49\n19.05\n74\n0\n49\n-3.175\n74\n0\n49\n3.175\n74\n0\n49\n-3.175\n74\n0"],
52 | self::DASHED => ['Dashed _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _', "73\n2\n40\n19.05\n49\n12.7\n74\n0\n49\n-6.35\n74\n0"],
53 | self::DASHEDX2 => ['Dashed (2x) ____ ____ ____ ____ ____ ___', "73\n2\n40\n38.09\n49\n25.4\n74\n0\n49\n-12.7\n74\n0"],
54 | self::DASHED2 => ['Dashed (.5x) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _', "73\n2\n40\n9.5249\n49\n6.35\n74\n0\n49\n-3.175\n74\n0"],
55 | self::PHANTOM => ['Phantom ______ __ __ ______ __ __ ______', "73\n6\n40\n12.7\n49\n6.35\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0"],
56 |
57 | // TODO wrong pattern
58 | self::PHANTOMX2 => ['Phantom (2x)____________ ____ ____ ____________', "73\n6\n40\n12.7\n49\n6.35\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0"],
59 | // TODO wrong pattern
60 | self::PHANTOM2 => ['Phantom (.5x) ___ _ _ ___ _ _ ___ _ _ ___ _ _ ___', "73\n6\n40\n12.7\n49\n6.35\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0\n49\n1.27\n74\n0\n49\n-1.27\n74\n0"],
61 |
62 | self::DASHDOT => ['Dash dot __ . __ . __ . __ . __ . __ . __ . __', "73\n4\n40\n25.4\n49\n12.7\n74\n0\n49\n-6.35\n74\n0\n49\n0\n74\n0\n49\n-6.35\n74\n0"],
63 | self::DASHDOTX2 => ['Dash dot (2x) ____ . ____ . ____ . ___', "73\n4\n40\n50.8\n49\n25.4\n74\n0\n49\n-12.7\n74\n0\n49\n0\n74\n0\n49\n-12.7\n74\n0"],
64 | self::DASHDOT2 => ['Dash dot (.5x) _._._._._._._._._._._._._._._.', "73\n4\n40\n12.7\n49\n6.35\n74\n0\n49\n-3.175\n74\n0\n49\n0\n74\n0\n49\n-3.175\n74\n0"],
65 | self::DOT => ['Dot . . . . . . . . . . . . . . . . . . . . . .', "73\n2\n40\n6.35\n49\n0\n74\n0\n49\n-6.35\n74\n0"],
66 | self::DOTX2 => ['Dot (2x) . . . . . . . . . . . . .', "73\n2\n40\n12.7\n49\n0\n74\n0\n49\n-12.7\n74\n0"],
67 | self::DOT2 => ['Dot (.5x) .....................................', "73\n2\n40\n3.175\n49\n0\n74\n0\n49\n-3.175\n74\n0"],
68 | self::DIVIDE => ['Divide ____ . . ____ . . ____ . . ____ . . ____', "73\n6\n40\n31.75\n49\n12.7\n74\n0\n49\n-6.35\n74\n0\n49\n0\n74\n0\n49\n-6.35\n74\n0\n49\n0\n74\n0\n49\n-6.35\n74\n0"],
69 | self::DIVIDEX2 => ['Divide (2x) ________ . . ________ . . _', "73\n6\n40\n63.5\n49\n25.4\n74\n0\n49\n-12.7\n74\n0\n49\n0\n74\n0\n49\n-12.7\n74\n0\n49\n0\n74\n0\n49\n-12.7\n74\n0"],
70 | self::DIVIDE2 => ['Divide (.5x) __..__..__..__..__..__..__..__.._', "73\n6\n40\n15.875\n49\n6.35\n74\n0\n49\n-3.175\n74\n0\n49\n0\n74\n0\n49\n-3.175\n74\n0\n49\n0\n74\n0\n49\n-3.175\n74\n0"],
71 | ];
72 |
73 | }
74 |
--------------------------------------------------------------------------------
/Color.php:
--------------------------------------------------------------------------------
1 | http://speleoalex.altervista.org
5 | * @copyright Copyright (c) 2013
6 | * @license http://opensource.org/licenses/gpl-license.php GNU General Public License
7 | *
8 | * Upgrade script to "Creator"
9 | * @author Konstantin Kutsevalov
10 | * @since 2015/08
11 | *
12 | * @see http://www.autodesk.com/techpubs/autocad/acad2000/dxf/
13 | */
14 |
15 | namespace adamasantares\dxf;
16 |
17 |
18 | /**
19 | * Class Color
20 | * @package adamasantares\dxf
21 | */
22 | class Color {
23 |
24 | const RED = 1;
25 |
26 | const YELLOW = 2;
27 |
28 | const GREEN = 3;
29 |
30 | const CYAN = 4;
31 |
32 | const BLUE = 5;
33 |
34 | const MAGENTA = 6;
35 |
36 | const WHITE = 7;
37 |
38 | const GRAY = 8;
39 |
40 | const LIGHT_GRAY = 9;
41 |
42 | const BLACK = 250;
43 |
44 |
45 | /**
46 | * All ACI colors
47 | * @var array
48 | * @see ./this_project/DXF Colortable.ods
49 | */
50 | private static $all = [
51 | // DXF Color Number => [Red, Green, Blue]
52 | 1 => [255, 0, 0], 2 => [255, 255, 0], 3 => [0, 255, 0], 4 => [0, 255, 255], 5 => [0, 0, 255],
53 | 6 => [255, 0, 255], 7 => [255, 255, 255], 8 => [128, 128, 128], 9 => [192, 192, 192], 10 => [255, 0, 0],
54 | 11 => [255, 127, 127], 12 => [165, 0, 0], 13 => [165, 82, 82], 14 => [127, 0, 0], 15 => [127, 63, 63],
55 | 16 => [76, 0, 0], 17 => [76, 38, 38], 18 => [38, 0, 0], 19 => [38, 19, 19], 20 => [255, 63, 0],
56 | 21 => [255, 159, 127], 22 => [165, 41, 0], 23 => [165, 103, 82], 24 => [127, 31, 0], 25 => [127, 79, 63],
57 | 26 => [76, 19, 0], 27 => [76, 47, 38], 28 => [38, 9, 0], 29 => [38, 23, 19], 30 => [255, 127, 0],
58 | 31 => [255, 191, 127], 32 => [165, 82, 0], 33 => [165, 124, 82], 34 => [127, 63, 0], 35 => [127, 95, 63],
59 | 36 => [76, 38, 0], 37 => [76, 57, 38], 38 => [38, 19, 0], 39 => [38, 28, 19], 40 => [255, 191, 0],
60 | 41 => [255, 223, 127], 42 => [165, 124, 0], 43 => [165, 145, 82], 44 => [127, 95, 0], 45 => [127, 111, 63],
61 | 46 => [76, 57, 0], 47 => [76, 66, 38], 48 => [38, 28, 0], 49 => [38, 33, 19], 50 => [255, 255, 0],
62 | 51 => [255, 255, 127], 52 => [165, 165, 0], 53 => [165, 165, 82], 54 => [127, 127, 0], 55 => [127, 127, 63],
63 | 56 => [76, 76, 0], 57 => [76, 76, 38], 58 => [38, 38, 0], 59 => [38, 38, 19], 60 => [191, 255, 0],
64 | 61 => [223, 255, 127], 62 => [124, 165, 0], 63 => [145, 165, 82], 64 => [95, 127, 0], 65 => [111, 127, 63],
65 | 66 => [57, 76, 0], 67 => [66, 76, 38], 68 => [28, 38, 0], 69 => [33, 38, 19], 70 => [127, 255, 0],
66 | 71 => [191, 255, 127], 72 => [82, 165, 0], 73 => [124, 165, 82], 74 => [63, 127, 0], 75 => [95, 127, 63],
67 | 76 => [38, 76, 0], 77 => [57, 76, 38], 78 => [19, 38, 0], 79 => [28, 38, 19], 80 => [63, 255, 0],
68 | 81 => [159, 255, 127], 82 => [41, 165, 0], 83 => [103, 165, 82], 84 => [31, 127, 0], 85 => [79, 127, 63],
69 | 86 => [19, 76, 0], 87 => [47, 76, 38], 88 => [9, 38, 0], 89 => [23, 38, 19], 90 => [0, 255, 0],
70 | 91 => [127, 255, 127], 92 => [0, 165, 0], 93 => [82, 165, 82], 94 => [0, 127, 0], 95 => [63, 127, 63],
71 | 96 => [0, 76, 0], 97 => [38, 76, 38], 98 => [0, 38, 0], 99 => [19, 38, 19], 100 => [0, 255, 63],
72 | 101 => [127, 255, 159], 102 => [0, 165, 41], 103 => [82, 165, 103], 104 => [0, 127, 31], 105 => [63, 127, 79],
73 | 106 => [0, 76, 19], 107 => [38, 76, 47], 108 => [0, 38, 9], 109 => [19, 38, 23], 110 => [0, 255, 127],
74 | 111 => [127, 255, 191], 112 => [0, 165, 82], 113 => [82, 165, 124], 114 => [0, 127, 63], 115 => [63, 127, 95],
75 | 116 => [0, 76, 38], 117 => [38, 76, 57], 118 => [0, 38, 19], 119 => [19, 38, 28], 120 => [0, 255, 191],
76 | 121 => [127, 255, 223], 122 => [0, 165, 124], 123 => [82, 165, 145], 124 => [0, 127, 95], 125 => [63, 127, 111],
77 | 126 => [0, 76, 57], 127 => [38, 76, 66], 128 => [0, 38, 28], 129 => [19, 38, 33], 130 => [0, 255, 255],
78 | 131 => [127, 255, 255], 132 => [0, 165, 165], 133 => [82, 165, 165], 134 => [0, 127, 127], 135 => [63, 127, 127],
79 | 136 => [0, 76, 76], 137 => [38, 76, 76], 138 => [0, 38, 38], 139 => [19, 38, 38], 140 => [0, 191, 255],
80 | 141 => [127, 223, 255], 142 => [0, 124, 165], 143 => [82, 145, 165], 144 => [0, 95, 127], 145 => [63, 111, 127],
81 | 146 => [0, 57, 76], 147 => [38, 66, 76], 148 => [0, 28, 38], 149 => [19, 33, 38], 150 => [0, 127, 255],
82 | 151 => [127, 191, 255], 152 => [0, 82, 165], 153 => [82, 124, 165], 154 => [0, 63, 127], 155 => [63, 95, 127],
83 | 156 => [0, 38, 76], 157 => [38, 57, 76], 158 => [0, 19, 38], 159 => [19, 28, 38], 160 => [0, 63, 255],
84 | 161 => [127, 159, 255], 162 => [0, 41, 165], 163 => [82, 103, 165], 164 => [0, 31, 127], 165 => [63, 79, 127],
85 | 166 => [0, 19, 76], 167 => [38, 47, 76], 168 => [0, 9, 38], 169 => [19, 23, 38], 170 => [0, 0, 255],
86 | 171 => [127, 127, 255], 172 => [0, 0, 165], 173 => [82, 82, 165], 174 => [0, 0, 127], 175 => [63, 63, 127],
87 | 176 => [0, 0, 76], 177 => [38, 38, 76], 178 => [0, 0, 38], 179 => [19, 19, 38], 180 => [63, 0, 255],
88 | 181 => [159, 127, 255], 182 => [41, 0, 165], 183 => [103, 82, 165], 184 => [31, 0, 127], 185 => [79, 63, 127],
89 | 186 => [19, 0, 76], 187 => [47, 38, 76], 188 => [9, 0, 38], 189 => [23, 19, 38], 190 => [127, 0, 255],
90 | 191 => [191, 127, 255], 192 => [82, 0, 165], 193 => [124, 82, 165], 194 => [63, 0, 127], 195 => [95, 63, 127],
91 | 196 => [38, 0, 76], 197 => [57, 38, 76], 198 => [19, 0, 38], 199 => [28, 19, 38], 200 => [191, 0, 255],
92 | 201 => [223, 127, 255], 202 => [124, 0, 165], 203 => [145, 82, 165], 204 => [95, 0, 127], 205 => [111, 63, 127],
93 | 206 => [57, 0, 76], 207 => [66, 38, 76], 208 => [28, 0, 38], 209 => [33, 19, 38], 210 => [255, 0, 255],
94 | 211 => [255, 127, 255], 212 => [165, 0, 165], 213 => [165, 82, 165], 214 => [127, 0, 127], 215 => [127, 63, 127],
95 | 216 => [76, 0, 76], 217 => [76, 38, 76], 218 => [38, 0, 38], 219 => [38, 19, 38], 220 => [255, 0, 191],
96 | 221 => [255, 127, 223], 222 => [165, 0, 124], 223 => [165, 82, 145], 224 => [127, 0, 95], 225 => [127, 63, 111],
97 | 226 => [76, 0, 57], 227 => [76, 38, 66], 228 => [38, 0, 28], 229 => [38, 19, 33], 230 => [255, 0, 127],
98 | 231 => [255, 127, 191], 232 => [165, 0, 82], 233 => [165, 82, 124], 234 => [127, 0, 63],235 => [127, 63, 95],
99 | 236 => [76, 0, 38], 237 => [76, 38, 57], 238 => [38, 0, 19], 239 => [38, 19, 28], 240 => [255, 0, 63],
100 | 241 => [255, 127, 159], 242 => [165, 0, 41], 243 => [165, 82, 103], 244 => [127, 0, 31], 245 => [127, 63, 79],
101 | 246 => [76, 0, 19], 247 => [76, 38, 47], 248 => [38, 0, 9], 249 => [38, 19, 23], 250 => [84, 84, 84],
102 | 251 => [118, 118, 118], 252 => [160, 160, 160], 253 => [192, 192, 192], 254 => [224, 224, 224], 255 => [0, 0, 0]
103 | ];
104 |
105 |
106 | /**
107 | * Convert RGB color to DXF color code
108 | * @param int $red
109 | * @param int $green
110 | * @param int $blue
111 | * @return int
112 | * @see http://stackoverflow.com/questions/4485229/rgb-to-closest-predefined-color
113 | */
114 | public static function rgb($red, $green, $blue)
115 | {
116 | $best = 1000;
117 | $match = 0;
118 | foreach (self::$all as $key => $color) {
119 | // sqrt(((r - r1) * .299)^2 + ((g - g1) * .587)^2 + ((b - b1) * .114)^2)
120 | $r = pow((($red - $color[0]) * 0.299), 2);
121 | $g = pow(($green - $color[1]) * 0.587, 2);
122 | $b = pow(($blue - $color[2]) * 0.114, 2);
123 | $c = sqrt($r + $g + $b);
124 | if ($c < $best) {
125 | $best = $c;
126 | $match = $key;
127 | }
128 | }
129 | return $match;
130 | }
131 |
132 | }
133 |
--------------------------------------------------------------------------------
/template.dxf:
--------------------------------------------------------------------------------
1 | 0
2 | SECTION
3 | 2
4 | HEADER
5 | 9
6 | $ACADVER
7 | 1
8 | AC1021
9 | 9
10 | $DWGCODEPAGE
11 | 3
12 | ANSI_1252
13 | 9
14 | $INSBASE
15 | 10
16 | 0
17 | 20
18 | 0
19 | 30
20 | 0
21 | 9
22 | $EXTMIN
23 | 10
24 | -35
25 | 20
26 | -30
27 | 30
28 | 0
29 | 9
30 | $EXTMAX
31 | 10
32 | 35
33 | 20
34 | 30
35 | 30
36 | 0
37 | 9
38 | $LIMMIN
39 | 10
40 | 0
41 | 20
42 | 0
43 | 9
44 | $LIMMAX
45 | 10
46 | 420
47 | 20
48 | 297
49 | 9
50 | $ORTHOMODE
51 | 70
52 | 0
53 | 9
54 | $REGENMODE
55 | 70
56 | 1
57 | 9
58 | $FILLMODE
59 | 70
60 | 1
61 | 9
62 | $QTEXTMODE
63 | 70
64 | 0
65 | 9
66 | $MIRRTEXT
67 | 70
68 | 1
69 | 9
70 | $LTSCALE
71 | 40
72 | 1
73 | 9
74 | $ATTMODE
75 | 70
76 | 1
77 | 9
78 | $TEXTSIZE
79 | 40
80 | 3.5
81 | 9
82 | $TRACEWID
83 | 40
84 | 1
85 | 9
86 | $TEXTSTYLE
87 | 7
88 | Standard
89 | 9
90 | $CLAYER
91 | 8
92 | red
93 | 9
94 | $CELTYPE
95 | 6
96 | ByLayer
97 | 9
98 | $CECOLOR
99 | 62
100 | 256
101 | 9
102 | $CELTSCALE
103 | 40
104 | 1
105 | 9
106 | $DISPSILH
107 | 70
108 | 0
109 | 9
110 | $DIMSCALE
111 | 40
112 | 1
113 | 9
114 | $DIMASZ
115 | 40
116 | 3.302
117 | 9
118 | $DIMEXO
119 | 40
120 | 1
121 | 9
122 | $DIMDLI
123 | 40
124 | 3.75
125 | 9
126 | $DIMRND
127 | 40
128 | 0
129 | 9
130 | $DIMDLE
131 | 40
132 | 0
133 | 9
134 | $DIMEXE
135 | 40
136 | 1
137 | 9
138 | $DIMTP
139 | 40
140 | 0
141 | 9
142 | $DIMTM
143 | 40
144 | 0
145 | 9
146 | $DIMTXT
147 | 40
148 | 3.5
149 | 9
150 | $DIMCEN
151 | 40
152 | 2.5
153 | 9
154 | $DIMTSZ
155 | 40
156 | 0
157 | 9
158 | $DIMTOL
159 | 70
160 | 0
161 | 9
162 | $DIMLIM
163 | 70
164 | 0
165 | 9
166 | $DIMTIH
167 | 70
168 | 1
169 | 9
170 | $DIMTOH
171 | 70
172 | 1
173 | 9
174 | $DIMSE1
175 | 70
176 | 0
177 | 9
178 | $DIMSE2
179 | 70
180 | 0
181 | 9
182 | $DIMTAD
183 | 70
184 | 1
185 | 9
186 | $DIMZIN
187 | 70
188 | 0
189 | 9
190 | $DIMBLK
191 | 1
192 |
193 | 9
194 | $DIMASO
195 | 70
196 | 1
197 | 9
198 | $DIMSHO
199 | 70
200 | 1
201 | 9
202 | $DIMPOST
203 | 1
204 |
205 | 9
206 | $DIMAPOST
207 | 1
208 |
209 | 9
210 | $DIMALT
211 | 70
212 | 0
213 | 9
214 | $DIMALTD
215 | 70
216 | 3
217 | 9
218 | $DIMALTF
219 | 40
220 | 0.0393700787
221 | 9
222 | $DIMLFAC
223 | 40
224 | 1
225 | 9
226 | $DIMTOFL
227 | 70
228 | 1
229 | 9
230 | $DIMTVP
231 | 40
232 | 0
233 | 9
234 | $DIMTIX
235 | 70
236 | 0
237 | 9
238 | $DIMSOXD
239 | 70
240 | 0
241 | 9
242 | $DIMSAH
243 | 70
244 | 0
245 | 9
246 | $DIMBLK1
247 | 1
248 |
249 | 9
250 | $DIMBLK2
251 | 1
252 |
253 | 9
254 | $DIMSTYLE
255 | 2
256 | ISO-25
257 | 9
258 | $DIMCLRD
259 | 70
260 | 0
261 | 9
262 | $DIMCLRE
263 | 70
264 | 0
265 | 9
266 | $DIMCLRT
267 | 70
268 | 0
269 | 9
270 | $DIMTFAC
271 | 40
272 | 1
273 | 9
274 | $DIMGAP
275 | 40
276 | 1.524
277 | 9
278 | $DIMJUST
279 | 70
280 | 0
281 | 9
282 | $DIMSD1
283 | 70
284 | 0
285 | 9
286 | $DIMSD2
287 | 70
288 | 0
289 | 9
290 | $DIMTOLJ
291 | 70
292 | 0
293 | 9
294 | $DIMTZIN
295 | 70
296 | 0
297 | 9
298 | $DIMALTZ
299 | 70
300 | 0
301 | 9
302 | $DIMALTTZ
303 | 70
304 | 0
305 | 9
306 | $DIMUPT
307 | 70
308 | 0
309 | 9
310 | $DIMDEC
311 | 70
312 | 2
313 | 9
314 | $DIMTDEC
315 | 70
316 | 2
317 | 9
318 | $DIMALTU
319 | 70
320 | 2
321 | 9
322 | $DIMALTTD
323 | 70
324 | 3
325 | 9
326 | $DIMTXSTY
327 | 7
328 | Standard
329 | 9
330 | $DIMAUNIT
331 | 70
332 | 0
333 | 9
334 | $DIMADEC
335 | 70
336 | 0
337 | 9
338 | $DIMALTRND
339 | 40
340 | 0
341 | 9
342 | $DIMAZIN
343 | 70
344 | 0
345 | 9
346 | $DIMDSEP
347 | 70
348 | 44
349 | 9
350 | $DIMATFIT
351 | 70
352 | 3
353 | 9
354 | $DIMFRAC
355 | 70
356 | 0
357 | 9
358 | $DIMLDRBLK
359 | 1
360 |
361 | 9
362 | $DIMLUNIT
363 | 70
364 | 2
365 | 9
366 | $DIMLWD
367 | 70
368 | -2
369 | 9
370 | $DIMLWE
371 | 70
372 | -2
373 | 9
374 | $DIMTMOVE
375 | 70
376 | 0
377 | 9
378 | $DIMFXL
379 | 40
380 | 1
381 | 9
382 | $DIMFXLON
383 | 70
384 | 0
385 | 9
386 | $DIMJOGANG
387 | 40
388 | 0.7854
389 | 9
390 | $DIMTFILL
391 | 70
392 | 0
393 | 9
394 | $DIMTFILLCLR
395 | 70
396 | 0
397 | 9
398 | $DIMARCSYM
399 | 70
400 | 0
401 | 9
402 | $DIMLTYPE
403 | 6
404 |
405 | 9
406 | $DIMLTEX1
407 | 6
408 |
409 | 9
410 | $DIMLTEX2
411 | 6
412 |
413 | 9
414 | $LUNITS
415 | 70
416 | 2
417 | 9
418 | $LUPREC
419 | 70
420 | 2
421 | 9
422 | $SKETCHINC
423 | 40
424 | 1
425 | 9
426 | $FILLETRAD
427 | 40
428 | 10
429 | 9
430 | $AUNITS
431 | 70
432 | 0
433 | 9
434 | $AUPREC
435 | 70
436 | 2
437 | 9
438 | $MENU
439 | 1
440 | .
441 | 9
442 | $ELEVATION
443 | 40
444 | 0
445 | 9
446 | $PELEVATION
447 | 40
448 | 0
449 | 9
450 | $THICKNESS
451 | 40
452 | 0
453 | 9
454 | $LIMCHECK
455 | 70
456 | 0
457 | 9
458 | $CHAMFERA
459 | 40
460 | 0
461 | 9
462 | $CHAMFERB
463 | 40
464 | 0
465 | 9
466 | $CHAMFERC
467 | 40
468 | 0
469 | 9
470 | $CHAMFERD
471 | 40
472 | 0
473 | 9
474 | $SKPOLY
475 | 70
476 | 0
477 | 9
478 | $USRTIMER
479 | 70
480 | 1
481 | 9
482 | $ANGBASE
483 | 50
484 | 0
485 | 9
486 | $ANGDIR
487 | 70
488 | 0
489 | 9
490 | $PDMODE
491 | 70
492 | 0
493 | 9
494 | $PDSIZE
495 | 40
496 | -1
497 | 9
498 | $PLINEWID
499 | 40
500 | 0
501 | 9
502 | $SPLFRAME
503 | 70
504 | 0
505 | 9
506 | $SPLINETYPE
507 | 70
508 | 6
509 | 9
510 | $SPLINESEGS
511 | 70
512 | 8
513 | 9
514 | $HANDSEED
515 | 5
516 | 20000
517 | 9
518 | $SURFTAB1
519 | 70
520 | 6
521 | 9
522 | $SURFTAB2
523 | 70
524 | 6
525 | 9
526 | $SURFTYPE
527 | 70
528 | 6
529 | 9
530 | $SURFU
531 | 70
532 | 6
533 | 9
534 | $SURFV
535 | 70
536 | 6
537 | 9
538 | $UCSBASE
539 | 2
540 |
541 | 9
542 | $UCSNAME
543 | 2
544 |
545 | 9
546 | $UCSORG
547 | 10
548 | 0
549 | 20
550 | 0
551 | 30
552 | 0
553 | 9
554 | $UCSXDIR
555 | 10
556 | 1
557 | 20
558 | 0
559 | 30
560 | 0
561 | 9
562 | $UCSYDIR
563 | 10
564 | 0
565 | 20
566 | 1
567 | 30
568 | 0
569 | 9
570 | $UCSORTHOREF
571 | 2
572 |
573 | 9
574 | $UCSORTHOVIEW
575 | 70
576 | 0
577 | 9
578 | $UCSORGTOP
579 | 10
580 | 0
581 | 20
582 | 0
583 | 30
584 | 0
585 | 9
586 | $UCSORGBOTTOM
587 | 10
588 | 0
589 | 20
590 | 0
591 | 30
592 | 0
593 | 9
594 | $UCSORGLEFT
595 | 10
596 | 0
597 | 20
598 | 0
599 | 30
600 | 0
601 | 9
602 | $UCSORGRIGHT
603 | 10
604 | 0
605 | 20
606 | 0
607 | 30
608 | 0
609 | 9
610 | $UCSORGFRONT
611 | 10
612 | 0
613 | 20
614 | 0
615 | 30
616 | 0
617 | 9
618 | $UCSORGBACK
619 | 10
620 | 0
621 | 20
622 | 0
623 | 30
624 | 0
625 | 9
626 | $PUCSBASE
627 | 2
628 |
629 | 9
630 | $PUCSNAME
631 | 2
632 |
633 | 9
634 | $PUCSORG
635 | 10
636 | 0
637 | 20
638 | 0
639 | 30
640 | 0
641 | 9
642 | $PUCSXDIR
643 | 10
644 | 1
645 | 20
646 | 0
647 | 30
648 | 0
649 | 9
650 | $PUCSYDIR
651 | 10
652 | 0
653 | 20
654 | 1
655 | 30
656 | 0
657 | 9
658 | $PUCSORTHOREF
659 | 2
660 |
661 | 9
662 | $PUCSORTHOVIEW
663 | 70
664 | 0
665 | 9
666 | $PUCSORGTOP
667 | 10
668 | 0
669 | 20
670 | 0
671 | 30
672 | 0
673 | 9
674 | $PUCSORGBOTTOM
675 | 10
676 | 0
677 | 20
678 | 0
679 | 30
680 | 0
681 | 9
682 | $PUCSORGLEFT
683 | 10
684 | 0
685 | 20
686 | 0
687 | 30
688 | 0
689 | 9
690 | $PUCSORGRIGHT
691 | 10
692 | 0
693 | 20
694 | 0
695 | 30
696 | 0
697 | 9
698 | $PUCSORGFRONT
699 | 10
700 | 0
701 | 20
702 | 0
703 | 30
704 | 0
705 | 9
706 | $PUCSORGBACK
707 | 10
708 | 0
709 | 20
710 | 0
711 | 30
712 | 0
713 | 9
714 | $USERI1
715 | 70
716 | 0
717 | 9
718 | $USERI2
719 | 70
720 | 0
721 | 9
722 | $USERI3
723 | 70
724 | 0
725 | 9
726 | $USERI4
727 | 70
728 | 0
729 | 9
730 | $USERI5
731 | 70
732 | 0
733 | 9
734 | $USERR1
735 | 40
736 | 0
737 | 9
738 | $USERR2
739 | 40
740 | 0
741 | 9
742 | $USERR3
743 | 40
744 | 0
745 | 9
746 | $USERR4
747 | 40
748 | 0
749 | 9
750 | $USERR5
751 | 40
752 | 0
753 | 9
754 | $WORLDVIEW
755 | 70
756 | 1
757 | 9
758 | $SHADEDGE
759 | 70
760 | 3
761 | 9
762 | $SHADEDIF
763 | 70
764 | 70
765 | 9
766 | $TILEMODE
767 | 70
768 | 1
769 | 9
770 | $MAXACTVP
771 | 70
772 | 64
773 | 9
774 | $PINSBASE
775 | 10
776 | 0
777 | 20
778 | 0
779 | 30
780 | 0
781 | 9
782 | $PLIMCHECK
783 | 70
784 | 0
785 | 9
786 | $PEXTMIN
787 | 10
788 | 1e+20
789 | 20
790 | 1e+20
791 | 30
792 | 1e+20
793 | 9
794 | $PEXTMAX
795 | 10
796 | -1e+20
797 | 20
798 | -1e+20
799 | 30
800 | -1e+20
801 | 9
802 | $GRIDMODE
803 | 70
804 | 0
805 | 9
806 | $SNAPSTYLE
807 | 70
808 | 0
809 | 9
810 | $PLIMMIN
811 | 10
812 | 0
813 | 20
814 | 0
815 | 9
816 | $PLIMMAX
817 | 10
818 | 420
819 | 20
820 | 297
821 | 9
822 | $UNITMODE
823 | 70
824 | 0
825 | 9
826 | $VISRETAIN
827 | 70
828 | 1
829 | 9
830 | $PLINEGEN
831 | 70
832 | 0
833 | 9
834 | $PSLTSCALE
835 | 70
836 | 1
837 | 9
838 | $TREEDEPTH
839 | 70
840 | 3020
841 | 9
842 | $CMLSTYLE
843 | 2
844 | Standard
845 | 9
846 | $CMLJUST
847 | 70
848 | 0
849 | 9
850 | $CMLSCALE
851 | 40
852 | 20
853 | 9
854 | $PROXYGRAPHICS
855 | 70
856 | 1
857 | 9
858 | $MEASUREMENT
859 | 70
860 | 1
861 | 9
862 | $CELWEIGHT
863 | 370
864 | -1
865 | 9
866 | $ENDCAPS
867 | 280
868 | 0
869 | 9
870 | $JOINSTYLE
871 | 280
872 | 0
873 | 9
874 | $LWDISPLAY
875 | 290
876 | 1
877 | 9
878 | $INSUNITS
879 | 70
880 | {UNITS}
881 | 9
882 | $HYPERLINKBASE
883 | 1
884 |
885 | 9
886 | $STYLESHEET
887 | 1
888 |
889 | 9
890 | $XEDIT
891 | 290
892 | 1
893 | 9
894 | $CEPSNTYPE
895 | 380
896 | 0
897 | 9
898 | $PSTYLEMODE
899 | 290
900 | 1
901 | 9
902 | $EXTNAMES
903 | 290
904 | 1
905 | 9
906 | $PSVPSCALE
907 | 40
908 | 0
909 | 9
910 | $OLESTARTUP
911 | 290
912 | 0
913 | 9
914 | $SORTENTS
915 | 280
916 | 127
917 | 9
918 | $INDEXCTL
919 | 280
920 | 0
921 | 9
922 | $HIDETEXT
923 | 280
924 | 1
925 | 9
926 | $XCLIPFRAME
927 | 290
928 | 0
929 | 9
930 | $HALOGAP
931 | 280
932 | 0
933 | 9
934 | $OBSCOLOR
935 | 70
936 | 257
937 | 9
938 | $OBSLTYPE
939 | 280
940 | 0
941 | 9
942 | $INTERSECTIONDISPLAY
943 | 280
944 | 0
945 | 9
946 | $INTERSECTIONCOLOR
947 | 70
948 | 257
949 | 9
950 | $DIMASSOC
951 | 280
952 | 1
953 | 9
954 | $PROJECTNAME
955 | 1
956 |
957 | 9
958 | $CAMERADISPLAY
959 | 290
960 | 0
961 | 9
962 | $LENSLENGTH
963 | 40
964 | 50
965 | 9
966 | $CAMERAHEIGHT
967 | 40
968 | 0
969 | 9
970 | $STEPSPERSEC
971 | 40
972 | 2
973 | 9
974 | $STEPSIZE
975 | 40
976 | 50
977 | 9
978 | $3DDWFPREC
979 | 40
980 | 2
981 | 9
982 | $PSOLWIDTH
983 | 40
984 | 5
985 | 9
986 | $PSOLHEIGHT
987 | 40
988 | 80
989 | 9
990 | $LOFTANG1
991 | 40
992 | 1.570796326794897
993 | 9
994 | $LOFTANG2
995 | 40
996 | 1.570796326794897
997 | 9
998 | $LOFTMAG1
999 | 40
1000 | 0
1001 | 9
1002 | $LOFTMAG2
1003 | 40
1004 | 0
1005 | 9
1006 | $LOFTPARAM
1007 | 70
1008 | 7
1009 | 9
1010 | $LOFTNORMALS
1011 | 280
1012 | 1
1013 | 9
1014 | $LATITUDE
1015 | 40
1016 | 1
1017 | 9
1018 | $LONGITUDE
1019 | 40
1020 | 1
1021 | 9
1022 | $NORTHDIRECTION
1023 | 40
1024 | 0
1025 | 9
1026 | $TIMEZONE
1027 | 70
1028 | -8000
1029 | 9
1030 | $LIGHTGLYPHDISPLAY
1031 | 280
1032 | 1
1033 | 9
1034 | $TILEMODELIGHTSYNCH
1035 | 280
1036 | 1
1037 | 9
1038 | $SOLIDHIST
1039 | 280
1040 | 1
1041 | 9
1042 | $SHOWHIST
1043 | 280
1044 | 1
1045 | 9
1046 | $DWFFRAME
1047 | 280
1048 | 2
1049 | 9
1050 | $DGNFRAME
1051 | 280
1052 | 0
1053 | 9
1054 | $REALWORLDSCALE
1055 | 290
1056 | 1
1057 | 9
1058 | $INTERFERECOLOR
1059 | 62
1060 | 1
1061 | 9
1062 | $CSHADOW
1063 | 280
1064 | 0
1065 | 9
1066 | $SHADOWPLANELOCATION
1067 | 40
1068 | 0
1069 | 0
1070 | ENDSEC
1071 | 0
1072 | SECTION
1073 | 2
1074 | CLASSES
1075 | 0{CLASSES_FOR_IMAGES}
1076 | ENDSEC
1077 | 0
1078 | SECTION
1079 | 2
1080 | TABLES
1081 | 0
1082 | TABLE
1083 | 2
1084 | VPORT
1085 | 5
1086 | 8
1087 | 330
1088 | 0
1089 | 100
1090 | AcDbSymbolTable
1091 | 70
1092 | 1
1093 | 0
1094 | VPORT
1095 | 5
1096 | 31
1097 | 330
1098 | 2
1099 | 100
1100 | AcDbSymbolTableRecord
1101 | 100
1102 | AcDbViewportTableRecord
1103 | 2
1104 | *ACTIVE
1105 | 70
1106 | 0
1107 | 10
1108 | 0
1109 | 20
1110 | 0
1111 | 11
1112 | 1
1113 | 21
1114 | 1
1115 | 12
1116 | 44.22616565550683
1117 | 22
1118 | 23.67269572240605
1119 | 13
1120 | 0
1121 | 23
1122 | 0
1123 | 14
1124 | 10
1125 | 24
1126 | 10
1127 | 15
1128 | 10
1129 | 25
1130 | 10
1131 | 16
1132 | 0
1133 | 26
1134 | 0
1135 | 36
1136 | 1
1137 | 17
1138 | 0
1139 | 27
1140 | 0
1141 | 37
1142 | 0
1143 | 40
1144 | 89.12073683729336
1145 | 41
1146 | 1.97625
1147 | 42
1148 | 50
1149 | 43
1150 | 0
1151 | 44
1152 | 0
1153 | 50
1154 | 0
1155 | 51
1156 | 0
1157 | 71
1158 | 0
1159 | 72
1160 | 100
1161 | 73
1162 | 1
1163 | 74
1164 | 3
1165 | 75
1166 | 0
1167 | 76
1168 | 0
1169 | 77
1170 | 0
1171 | 78
1172 | 0
1173 | 281
1174 | 0
1175 | 65
1176 | 1
1177 | 110
1178 | 0
1179 | 120
1180 | 0
1181 | 130
1182 | 0
1183 | 111
1184 | 1
1185 | 121
1186 | 0
1187 | 131
1188 | 0
1189 | 112
1190 | 0
1191 | 122
1192 | 1
1193 | 132
1194 | 0
1195 | 79
1196 | 0
1197 | 146
1198 | 0
1199 | 348
1200 | 10020
1201 | 60
1202 | 7
1203 | 61
1204 | 5
1205 | 292
1206 | 1
1207 | 282
1208 | 1
1209 | 141
1210 | 0
1211 | 142
1212 | 0
1213 | 63
1214 | 250
1215 | 421
1216 | 3358443
1217 | 0
1218 | ENDTAB
1219 | 0
1220 | TABLE
1221 | 2
1222 | {LTYPES_TABLE}
1223 | ENDTAB
1224 | 0
1225 | TABLE
1226 | 2
1227 | {LAYERS_TABLE}
1228 | ENDTAB
1229 | 0
1230 | TABLE
1231 | 2
1232 | STYLE
1233 | 5
1234 | 3
1235 | 330
1236 | 0
1237 | 100
1238 | AcDbSymbolTable
1239 | 70
1240 | 3
1241 | 0
1242 | STYLE
1243 | 5
1244 | 51
1245 | 330
1246 | 2
1247 | 100
1248 | AcDbSymbolTableRecord
1249 | 100
1250 | AcDbTextStyleTableRecord
1251 | 2
1252 | Standard
1253 | 70
1254 | 0
1255 | 40
1256 | 0
1257 | 41
1258 | 1
1259 | 50
1260 | 0
1261 | 71
1262 | 0
1263 | 42
1264 | 1
1265 | 3
1266 | txt
1267 | 4
1268 |
1269 | 0
1270 | ENDTAB
1271 | 0
1272 | TABLE
1273 | 2
1274 | VIEW
1275 | 5
1276 | 6
1277 | 330
1278 | 0
1279 | 100
1280 | AcDbSymbolTable
1281 | 70
1282 | 0
1283 | 0
1284 | ENDTAB
1285 | 0
1286 | TABLE
1287 | 2
1288 | UCS
1289 | 5
1290 | 7
1291 | 330
1292 | 0
1293 | 100
1294 | AcDbSymbolTable
1295 | 70
1296 | 0
1297 | 0
1298 | ENDTAB
1299 | 0
1300 | TABLE
1301 | 2
1302 | APPID
1303 | 5
1304 | 9
1305 | 330
1306 | 0
1307 | 100
1308 | AcDbSymbolTable
1309 | 70
1310 | 1
1311 | 0
1312 | APPID
1313 | 5
1314 | 12
1315 | 330
1316 | 9
1317 | 100
1318 | AcDbSymbolTableRecord
1319 | 100
1320 | AcDbRegAppTableRecord
1321 | 2
1322 | ACAD
1323 | 70
1324 | 0
1325 | 0
1326 | APPID
1327 | 5
1328 | 52
1329 | 330
1330 | 9
1331 | 100
1332 | AcDbSymbolTableRecord
1333 | 100
1334 | AcDbRegAppTableRecord
1335 | 2
1336 | LibreCad
1337 | 70
1338 | 0
1339 | 0
1340 | ENDTAB
1341 | 0
1342 | TABLE
1343 | 2
1344 | DIMSTYLE
1345 | 5
1346 | A
1347 | 330
1348 | 0
1349 | 100
1350 | AcDbSymbolTable
1351 | 70
1352 | 1
1353 | 100
1354 | AcDbDimStyleTable
1355 | 71
1356 | 1
1357 | 0
1358 | DIMSTYLE
1359 | 105
1360 | 53
1361 | 330
1362 | A
1363 | 100
1364 | AcDbSymbolTableRecord
1365 | 100
1366 | AcDbDimStyleTableRecord
1367 | 2
1368 | Standard
1369 | 70
1370 | 0
1371 | 40
1372 | 1
1373 | 41
1374 | 3.302
1375 | 42
1376 | 1
1377 | 43
1378 | 0.38
1379 | 44
1380 | 1
1381 | 45
1382 | 0
1383 | 46
1384 | 0
1385 | 47
1386 | 0
1387 | 48
1388 | 0
1389 | 49
1390 | 1
1391 | 140
1392 | 3.5
1393 | 141
1394 | 0.09
1395 | 142
1396 | 0
1397 | 143
1398 | 25.4
1399 | 144
1400 | 1
1401 | 145
1402 | 0
1403 | 146
1404 | 1
1405 | 147
1406 | 1.524
1407 | 148
1408 | 0
1409 | 71
1410 | 0
1411 | 72
1412 | 0
1413 | 73
1414 | 1
1415 | 74
1416 | 1
1417 | 75
1418 | 0
1419 | 76
1420 | 0
1421 | 77
1422 | 0
1423 | 78
1424 | 0
1425 | 79
1426 | 0
1427 | 170
1428 | 0
1429 | 171
1430 | 2
1431 | 172
1432 | 0
1433 | 173
1434 | 0
1435 | 174
1436 | 0
1437 | 175
1438 | 0
1439 | 176
1440 | 0
1441 | 177
1442 | 0
1443 | 178
1444 | 0
1445 | 179
1446 | 0
1447 | 271
1448 | 2
1449 | 272
1450 | 4
1451 | 273
1452 | 2
1453 | 274
1454 | 2
1455 | 275
1456 | 0
1457 | 276
1458 | 0
1459 | 277
1460 | 2
1461 | 278
1462 | 44
1463 | 279
1464 | 0
1465 | 280
1466 | 0
1467 | 281
1468 | 0
1469 | 282
1470 | 0
1471 | 283
1472 | 1
1473 | 284
1474 | 0
1475 | 285
1476 | 0
1477 | 286
1478 | 0
1479 | 288
1480 | 0
1481 | 289
1482 | 3
1483 | 340
1484 | Standard
1485 | 341
1486 |
1487 | 371
1488 | -2
1489 | 372
1490 | -2
1491 | 0
1492 | ENDTAB
1493 | 0
1494 | TABLE
1495 | 2
1496 | BLOCK_RECORD
1497 | 5
1498 | 1
1499 | 330
1500 | 0
1501 | 100
1502 | AcDbSymbolTable
1503 | 70
1504 | 2
1505 | 0
1506 | BLOCK_RECORD
1507 | 5
1508 | 1F
1509 | 330
1510 | 1
1511 | 100
1512 | AcDbSymbolTableRecord
1513 | 100
1514 | AcDbBlockTableRecord
1515 | 2
1516 | *Model_Space
1517 | 70
1518 | 0
1519 | 280
1520 | 1
1521 | 281
1522 | 0
1523 | 0
1524 | BLOCK_RECORD
1525 | 5
1526 | 1E
1527 | 330
1528 | 1
1529 | 100
1530 | AcDbSymbolTableRecord
1531 | 100
1532 | AcDbBlockTableRecord
1533 | 2
1534 | *Paper_Space
1535 | 70
1536 | 0
1537 | 280
1538 | 1
1539 | 281
1540 | 0
1541 | 0
1542 | ENDTAB
1543 | 0
1544 | ENDSEC
1545 | 0
1546 | SECTION
1547 | 2
1548 | BLOCKS
1549 | 0
1550 | BLOCK
1551 | 5
1552 | 20
1553 | 330
1554 | 1F
1555 | 100
1556 | AcDbEntity
1557 | 8
1558 | 0
1559 | 100
1560 | AcDbBlockBegin
1561 | 2
1562 | *Model_Space
1563 | 70
1564 | 0
1565 | 10
1566 | 0.0
1567 | 20
1568 | 0.0
1569 | 30
1570 | 0.0
1571 | 3
1572 | *Model_Space
1573 | 1
1574 |
1575 | 0
1576 | ENDBLK
1577 | 5
1578 | 21
1579 | 330
1580 | 1F
1581 | 100
1582 | AcDbEntity
1583 | 8
1584 | 0
1585 | 100
1586 | AcDbBlockEnd
1587 | 0
1588 | BLOCK
1589 | 5
1590 | 1C
1591 | 330
1592 | 1B
1593 | 100
1594 | AcDbEntity
1595 | 8
1596 | 0
1597 | 100
1598 | AcDbBlockBegin
1599 | 2
1600 | *Paper_Space
1601 | 70
1602 | 0
1603 | 10
1604 | 0.0
1605 | 20
1606 | 0.0
1607 | 30
1608 | 0.0
1609 | 3
1610 | *Paper_Space
1611 | 1
1612 |
1613 | 0
1614 | ENDBLK
1615 | 5
1616 | 1D
1617 | 330
1618 | 1F
1619 | 100
1620 | AcDbEntity
1621 | 8
1622 | 0
1623 | 100
1624 | AcDbBlockEnd
1625 | 0
1626 | ENDSEC
1627 | 0
1628 | SECTION
1629 | 2
1630 | ENTITIES
1631 | 0
1632 | {ENTITIES_SECTION}
1633 | ENDSEC
1634 | 0
1635 | SECTION
1636 | 2
1637 | OBJECTS
1638 | 0
1639 | DICTIONARY
1640 | 5
1641 | C
1642 | 330
1643 | 0
1644 | 100
1645 | AcDbDictionary
1646 | 281
1647 | 1
1648 | 3
1649 | ACAD_GROUP
1650 | 350
1651 | D{DICTIONARY_IMAGE_VAR}{IMAGEDEF_REACTOR}{DICTIONARY_IMAGES}
1652 | DICTIONARY
1653 | 5
1654 | D
1655 | 330
1656 | C
1657 | 100
1658 | AcDbDictionary
1659 | 281
1660 | 1
1661 | 0{IMAGEDEFS}
1662 | ENDSEC
1663 | 0
1664 | EOF
1665 |
--------------------------------------------------------------------------------
/demo/demo3.dxf:
--------------------------------------------------------------------------------
1 | 0
2 | SECTION
3 | 2
4 | HEADER
5 | 9
6 | $ACADVER
7 | 1
8 | AC1021
9 | 9
10 | $DWGCODEPAGE
11 | 3
12 | ANSI_1252
13 | 9
14 | $INSBASE
15 | 10
16 | 0
17 | 20
18 | 0
19 | 30
20 | 0
21 | 9
22 | $EXTMIN
23 | 10
24 | -35
25 | 20
26 | -30
27 | 30
28 | 0
29 | 9
30 | $EXTMAX
31 | 10
32 | 35
33 | 20
34 | 30
35 | 30
36 | 0
37 | 9
38 | $LIMMIN
39 | 10
40 | 0
41 | 20
42 | 0
43 | 9
44 | $LIMMAX
45 | 10
46 | 420
47 | 20
48 | 297
49 | 9
50 | $ORTHOMODE
51 | 70
52 | 0
53 | 9
54 | $REGENMODE
55 | 70
56 | 1
57 | 9
58 | $FILLMODE
59 | 70
60 | 1
61 | 9
62 | $QTEXTMODE
63 | 70
64 | 0
65 | 9
66 | $MIRRTEXT
67 | 70
68 | 1
69 | 9
70 | $LTSCALE
71 | 40
72 | 1
73 | 9
74 | $ATTMODE
75 | 70
76 | 1
77 | 9
78 | $TEXTSIZE
79 | 40
80 | 3.5
81 | 9
82 | $TRACEWID
83 | 40
84 | 1
85 | 9
86 | $TEXTSTYLE
87 | 7
88 | Standard
89 | 9
90 | $CLAYER
91 | 8
92 | red
93 | 9
94 | $CELTYPE
95 | 6
96 | ByLayer
97 | 9
98 | $CECOLOR
99 | 62
100 | 256
101 | 9
102 | $CELTSCALE
103 | 40
104 | 1
105 | 9
106 | $DISPSILH
107 | 70
108 | 0
109 | 9
110 | $DIMSCALE
111 | 40
112 | 1
113 | 9
114 | $DIMASZ
115 | 40
116 | 3.302
117 | 9
118 | $DIMEXO
119 | 40
120 | 1
121 | 9
122 | $DIMDLI
123 | 40
124 | 3.75
125 | 9
126 | $DIMRND
127 | 40
128 | 0
129 | 9
130 | $DIMDLE
131 | 40
132 | 0
133 | 9
134 | $DIMEXE
135 | 40
136 | 1
137 | 9
138 | $DIMTP
139 | 40
140 | 0
141 | 9
142 | $DIMTM
143 | 40
144 | 0
145 | 9
146 | $DIMTXT
147 | 40
148 | 3.5
149 | 9
150 | $DIMCEN
151 | 40
152 | 2.5
153 | 9
154 | $DIMTSZ
155 | 40
156 | 0
157 | 9
158 | $DIMTOL
159 | 70
160 | 0
161 | 9
162 | $DIMLIM
163 | 70
164 | 0
165 | 9
166 | $DIMTIH
167 | 70
168 | 1
169 | 9
170 | $DIMTOH
171 | 70
172 | 1
173 | 9
174 | $DIMSE1
175 | 70
176 | 0
177 | 9
178 | $DIMSE2
179 | 70
180 | 0
181 | 9
182 | $DIMTAD
183 | 70
184 | 1
185 | 9
186 | $DIMZIN
187 | 70
188 | 0
189 | 9
190 | $DIMBLK
191 | 1
192 |
193 | 9
194 | $DIMASO
195 | 70
196 | 1
197 | 9
198 | $DIMSHO
199 | 70
200 | 1
201 | 9
202 | $DIMPOST
203 | 1
204 |
205 | 9
206 | $DIMAPOST
207 | 1
208 |
209 | 9
210 | $DIMALT
211 | 70
212 | 0
213 | 9
214 | $DIMALTD
215 | 70
216 | 3
217 | 9
218 | $DIMALTF
219 | 40
220 | 0.0393700787
221 | 9
222 | $DIMLFAC
223 | 40
224 | 1
225 | 9
226 | $DIMTOFL
227 | 70
228 | 1
229 | 9
230 | $DIMTVP
231 | 40
232 | 0
233 | 9
234 | $DIMTIX
235 | 70
236 | 0
237 | 9
238 | $DIMSOXD
239 | 70
240 | 0
241 | 9
242 | $DIMSAH
243 | 70
244 | 0
245 | 9
246 | $DIMBLK1
247 | 1
248 |
249 | 9
250 | $DIMBLK2
251 | 1
252 |
253 | 9
254 | $DIMSTYLE
255 | 2
256 | ISO-25
257 | 9
258 | $DIMCLRD
259 | 70
260 | 0
261 | 9
262 | $DIMCLRE
263 | 70
264 | 0
265 | 9
266 | $DIMCLRT
267 | 70
268 | 0
269 | 9
270 | $DIMTFAC
271 | 40
272 | 1
273 | 9
274 | $DIMGAP
275 | 40
276 | 1.524
277 | 9
278 | $DIMJUST
279 | 70
280 | 0
281 | 9
282 | $DIMSD1
283 | 70
284 | 0
285 | 9
286 | $DIMSD2
287 | 70
288 | 0
289 | 9
290 | $DIMTOLJ
291 | 70
292 | 0
293 | 9
294 | $DIMTZIN
295 | 70
296 | 0
297 | 9
298 | $DIMALTZ
299 | 70
300 | 0
301 | 9
302 | $DIMALTTZ
303 | 70
304 | 0
305 | 9
306 | $DIMUPT
307 | 70
308 | 0
309 | 9
310 | $DIMDEC
311 | 70
312 | 2
313 | 9
314 | $DIMTDEC
315 | 70
316 | 2
317 | 9
318 | $DIMALTU
319 | 70
320 | 2
321 | 9
322 | $DIMALTTD
323 | 70
324 | 3
325 | 9
326 | $DIMTXSTY
327 | 7
328 | Standard
329 | 9
330 | $DIMAUNIT
331 | 70
332 | 0
333 | 9
334 | $DIMADEC
335 | 70
336 | 0
337 | 9
338 | $DIMALTRND
339 | 40
340 | 0
341 | 9
342 | $DIMAZIN
343 | 70
344 | 0
345 | 9
346 | $DIMDSEP
347 | 70
348 | 44
349 | 9
350 | $DIMATFIT
351 | 70
352 | 3
353 | 9
354 | $DIMFRAC
355 | 70
356 | 0
357 | 9
358 | $DIMLDRBLK
359 | 1
360 |
361 | 9
362 | $DIMLUNIT
363 | 70
364 | 2
365 | 9
366 | $DIMLWD
367 | 70
368 | -2
369 | 9
370 | $DIMLWE
371 | 70
372 | -2
373 | 9
374 | $DIMTMOVE
375 | 70
376 | 0
377 | 9
378 | $DIMFXL
379 | 40
380 | 1
381 | 9
382 | $DIMFXLON
383 | 70
384 | 0
385 | 9
386 | $DIMJOGANG
387 | 40
388 | 0.7854
389 | 9
390 | $DIMTFILL
391 | 70
392 | 0
393 | 9
394 | $DIMTFILLCLR
395 | 70
396 | 0
397 | 9
398 | $DIMARCSYM
399 | 70
400 | 0
401 | 9
402 | $DIMLTYPE
403 | 6
404 |
405 | 9
406 | $DIMLTEX1
407 | 6
408 |
409 | 9
410 | $DIMLTEX2
411 | 6
412 |
413 | 9
414 | $LUNITS
415 | 70
416 | 2
417 | 9
418 | $LUPREC
419 | 70
420 | 2
421 | 9
422 | $SKETCHINC
423 | 40
424 | 1
425 | 9
426 | $FILLETRAD
427 | 40
428 | 10
429 | 9
430 | $AUNITS
431 | 70
432 | 0
433 | 9
434 | $AUPREC
435 | 70
436 | 2
437 | 9
438 | $MENU
439 | 1
440 | .
441 | 9
442 | $ELEVATION
443 | 40
444 | 0
445 | 9
446 | $PELEVATION
447 | 40
448 | 0
449 | 9
450 | $THICKNESS
451 | 40
452 | 0
453 | 9
454 | $LIMCHECK
455 | 70
456 | 0
457 | 9
458 | $CHAMFERA
459 | 40
460 | 0
461 | 9
462 | $CHAMFERB
463 | 40
464 | 0
465 | 9
466 | $CHAMFERC
467 | 40
468 | 0
469 | 9
470 | $CHAMFERD
471 | 40
472 | 0
473 | 9
474 | $SKPOLY
475 | 70
476 | 0
477 | 9
478 | $USRTIMER
479 | 70
480 | 1
481 | 9
482 | $ANGBASE
483 | 50
484 | 0
485 | 9
486 | $ANGDIR
487 | 70
488 | 0
489 | 9
490 | $PDMODE
491 | 70
492 | 0
493 | 9
494 | $PDSIZE
495 | 40
496 | -1
497 | 9
498 | $PLINEWID
499 | 40
500 | 0
501 | 9
502 | $SPLFRAME
503 | 70
504 | 0
505 | 9
506 | $SPLINETYPE
507 | 70
508 | 6
509 | 9
510 | $SPLINESEGS
511 | 70
512 | 8
513 | 9
514 | $HANDSEED
515 | 5
516 | 20000
517 | 9
518 | $SURFTAB1
519 | 70
520 | 6
521 | 9
522 | $SURFTAB2
523 | 70
524 | 6
525 | 9
526 | $SURFTYPE
527 | 70
528 | 6
529 | 9
530 | $SURFU
531 | 70
532 | 6
533 | 9
534 | $SURFV
535 | 70
536 | 6
537 | 9
538 | $UCSBASE
539 | 2
540 |
541 | 9
542 | $UCSNAME
543 | 2
544 |
545 | 9
546 | $UCSORG
547 | 10
548 | 0
549 | 20
550 | 0
551 | 30
552 | 0
553 | 9
554 | $UCSXDIR
555 | 10
556 | 1
557 | 20
558 | 0
559 | 30
560 | 0
561 | 9
562 | $UCSYDIR
563 | 10
564 | 0
565 | 20
566 | 1
567 | 30
568 | 0
569 | 9
570 | $UCSORTHOREF
571 | 2
572 |
573 | 9
574 | $UCSORTHOVIEW
575 | 70
576 | 0
577 | 9
578 | $UCSORGTOP
579 | 10
580 | 0
581 | 20
582 | 0
583 | 30
584 | 0
585 | 9
586 | $UCSORGBOTTOM
587 | 10
588 | 0
589 | 20
590 | 0
591 | 30
592 | 0
593 | 9
594 | $UCSORGLEFT
595 | 10
596 | 0
597 | 20
598 | 0
599 | 30
600 | 0
601 | 9
602 | $UCSORGRIGHT
603 | 10
604 | 0
605 | 20
606 | 0
607 | 30
608 | 0
609 | 9
610 | $UCSORGFRONT
611 | 10
612 | 0
613 | 20
614 | 0
615 | 30
616 | 0
617 | 9
618 | $UCSORGBACK
619 | 10
620 | 0
621 | 20
622 | 0
623 | 30
624 | 0
625 | 9
626 | $PUCSBASE
627 | 2
628 |
629 | 9
630 | $PUCSNAME
631 | 2
632 |
633 | 9
634 | $PUCSORG
635 | 10
636 | 0
637 | 20
638 | 0
639 | 30
640 | 0
641 | 9
642 | $PUCSXDIR
643 | 10
644 | 1
645 | 20
646 | 0
647 | 30
648 | 0
649 | 9
650 | $PUCSYDIR
651 | 10
652 | 0
653 | 20
654 | 1
655 | 30
656 | 0
657 | 9
658 | $PUCSORTHOREF
659 | 2
660 |
661 | 9
662 | $PUCSORTHOVIEW
663 | 70
664 | 0
665 | 9
666 | $PUCSORGTOP
667 | 10
668 | 0
669 | 20
670 | 0
671 | 30
672 | 0
673 | 9
674 | $PUCSORGBOTTOM
675 | 10
676 | 0
677 | 20
678 | 0
679 | 30
680 | 0
681 | 9
682 | $PUCSORGLEFT
683 | 10
684 | 0
685 | 20
686 | 0
687 | 30
688 | 0
689 | 9
690 | $PUCSORGRIGHT
691 | 10
692 | 0
693 | 20
694 | 0
695 | 30
696 | 0
697 | 9
698 | $PUCSORGFRONT
699 | 10
700 | 0
701 | 20
702 | 0
703 | 30
704 | 0
705 | 9
706 | $PUCSORGBACK
707 | 10
708 | 0
709 | 20
710 | 0
711 | 30
712 | 0
713 | 9
714 | $USERI1
715 | 70
716 | 0
717 | 9
718 | $USERI2
719 | 70
720 | 0
721 | 9
722 | $USERI3
723 | 70
724 | 0
725 | 9
726 | $USERI4
727 | 70
728 | 0
729 | 9
730 | $USERI5
731 | 70
732 | 0
733 | 9
734 | $USERR1
735 | 40
736 | 0
737 | 9
738 | $USERR2
739 | 40
740 | 0
741 | 9
742 | $USERR3
743 | 40
744 | 0
745 | 9
746 | $USERR4
747 | 40
748 | 0
749 | 9
750 | $USERR5
751 | 40
752 | 0
753 | 9
754 | $WORLDVIEW
755 | 70
756 | 1
757 | 9
758 | $SHADEDGE
759 | 70
760 | 3
761 | 9
762 | $SHADEDIF
763 | 70
764 | 70
765 | 9
766 | $TILEMODE
767 | 70
768 | 1
769 | 9
770 | $MAXACTVP
771 | 70
772 | 64
773 | 9
774 | $PINSBASE
775 | 10
776 | 0
777 | 20
778 | 0
779 | 30
780 | 0
781 | 9
782 | $PLIMCHECK
783 | 70
784 | 0
785 | 9
786 | $PEXTMIN
787 | 10
788 | 1e+20
789 | 20
790 | 1e+20
791 | 30
792 | 1e+20
793 | 9
794 | $PEXTMAX
795 | 10
796 | -1e+20
797 | 20
798 | -1e+20
799 | 30
800 | -1e+20
801 | 9
802 | $GRIDMODE
803 | 70
804 | 0
805 | 9
806 | $SNAPSTYLE
807 | 70
808 | 0
809 | 9
810 | $PLIMMIN
811 | 10
812 | 0
813 | 20
814 | 0
815 | 9
816 | $PLIMMAX
817 | 10
818 | 420
819 | 20
820 | 297
821 | 9
822 | $UNITMODE
823 | 70
824 | 0
825 | 9
826 | $VISRETAIN
827 | 70
828 | 1
829 | 9
830 | $PLINEGEN
831 | 70
832 | 0
833 | 9
834 | $PSLTSCALE
835 | 70
836 | 1
837 | 9
838 | $TREEDEPTH
839 | 70
840 | 3020
841 | 9
842 | $CMLSTYLE
843 | 2
844 | Standard
845 | 9
846 | $CMLJUST
847 | 70
848 | 0
849 | 9
850 | $CMLSCALE
851 | 40
852 | 20
853 | 9
854 | $PROXYGRAPHICS
855 | 70
856 | 1
857 | 9
858 | $MEASUREMENT
859 | 70
860 | 1
861 | 9
862 | $CELWEIGHT
863 | 370
864 | -1
865 | 9
866 | $ENDCAPS
867 | 280
868 | 0
869 | 9
870 | $JOINSTYLE
871 | 280
872 | 0
873 | 9
874 | $LWDISPLAY
875 | 290
876 | 1
877 | 9
878 | $INSUNITS
879 | 70
880 | 4
881 | 9
882 | $HYPERLINKBASE
883 | 1
884 |
885 | 9
886 | $STYLESHEET
887 | 1
888 |
889 | 9
890 | $XEDIT
891 | 290
892 | 1
893 | 9
894 | $CEPSNTYPE
895 | 380
896 | 0
897 | 9
898 | $PSTYLEMODE
899 | 290
900 | 1
901 | 9
902 | $EXTNAMES
903 | 290
904 | 1
905 | 9
906 | $PSVPSCALE
907 | 40
908 | 0
909 | 9
910 | $OLESTARTUP
911 | 290
912 | 0
913 | 9
914 | $SORTENTS
915 | 280
916 | 127
917 | 9
918 | $INDEXCTL
919 | 280
920 | 0
921 | 9
922 | $HIDETEXT
923 | 280
924 | 1
925 | 9
926 | $XCLIPFRAME
927 | 290
928 | 0
929 | 9
930 | $HALOGAP
931 | 280
932 | 0
933 | 9
934 | $OBSCOLOR
935 | 70
936 | 257
937 | 9
938 | $OBSLTYPE
939 | 280
940 | 0
941 | 9
942 | $INTERSECTIONDISPLAY
943 | 280
944 | 0
945 | 9
946 | $INTERSECTIONCOLOR
947 | 70
948 | 257
949 | 9
950 | $DIMASSOC
951 | 280
952 | 1
953 | 9
954 | $PROJECTNAME
955 | 1
956 |
957 | 9
958 | $CAMERADISPLAY
959 | 290
960 | 0
961 | 9
962 | $LENSLENGTH
963 | 40
964 | 50
965 | 9
966 | $CAMERAHEIGHT
967 | 40
968 | 0
969 | 9
970 | $STEPSPERSEC
971 | 40
972 | 2
973 | 9
974 | $STEPSIZE
975 | 40
976 | 50
977 | 9
978 | $3DDWFPREC
979 | 40
980 | 2
981 | 9
982 | $PSOLWIDTH
983 | 40
984 | 5
985 | 9
986 | $PSOLHEIGHT
987 | 40
988 | 80
989 | 9
990 | $LOFTANG1
991 | 40
992 | 1.570796326794897
993 | 9
994 | $LOFTANG2
995 | 40
996 | 1.570796326794897
997 | 9
998 | $LOFTMAG1
999 | 40
1000 | 0
1001 | 9
1002 | $LOFTMAG2
1003 | 40
1004 | 0
1005 | 9
1006 | $LOFTPARAM
1007 | 70
1008 | 7
1009 | 9
1010 | $LOFTNORMALS
1011 | 280
1012 | 1
1013 | 9
1014 | $LATITUDE
1015 | 40
1016 | 1
1017 | 9
1018 | $LONGITUDE
1019 | 40
1020 | 1
1021 | 9
1022 | $NORTHDIRECTION
1023 | 40
1024 | 0
1025 | 9
1026 | $TIMEZONE
1027 | 70
1028 | -8000
1029 | 9
1030 | $LIGHTGLYPHDISPLAY
1031 | 280
1032 | 1
1033 | 9
1034 | $TILEMODELIGHTSYNCH
1035 | 280
1036 | 1
1037 | 9
1038 | $SOLIDHIST
1039 | 280
1040 | 1
1041 | 9
1042 | $SHOWHIST
1043 | 280
1044 | 1
1045 | 9
1046 | $DWFFRAME
1047 | 280
1048 | 2
1049 | 9
1050 | $DGNFRAME
1051 | 280
1052 | 0
1053 | 9
1054 | $REALWORLDSCALE
1055 | 290
1056 | 1
1057 | 9
1058 | $INTERFERECOLOR
1059 | 62
1060 | 1
1061 | 9
1062 | $CSHADOW
1063 | 280
1064 | 0
1065 | 9
1066 | $SHADOWPLANELOCATION
1067 | 40
1068 | 0
1069 | 0
1070 | ENDSEC
1071 | 0
1072 | SECTION
1073 | 2
1074 | CLASSES
1075 | 0
1076 | ENDSEC
1077 | 0
1078 | SECTION
1079 | 2
1080 | TABLES
1081 | 0
1082 | TABLE
1083 | 2
1084 | VPORT
1085 | 5
1086 | 8
1087 | 330
1088 | 0
1089 | 100
1090 | AcDbSymbolTable
1091 | 70
1092 | 1
1093 | 0
1094 | VPORT
1095 | 5
1096 | 31
1097 | 330
1098 | 2
1099 | 100
1100 | AcDbSymbolTableRecord
1101 | 100
1102 | AcDbViewportTableRecord
1103 | 2
1104 | *ACTIVE
1105 | 70
1106 | 0
1107 | 10
1108 | 0
1109 | 20
1110 | 0
1111 | 11
1112 | 1
1113 | 21
1114 | 1
1115 | 12
1116 | 44.22616565550683
1117 | 22
1118 | 23.67269572240605
1119 | 13
1120 | 0
1121 | 23
1122 | 0
1123 | 14
1124 | 10
1125 | 24
1126 | 10
1127 | 15
1128 | 10
1129 | 25
1130 | 10
1131 | 16
1132 | 0
1133 | 26
1134 | 0
1135 | 36
1136 | 1
1137 | 17
1138 | 0
1139 | 27
1140 | 0
1141 | 37
1142 | 0
1143 | 40
1144 | 89.12073683729336
1145 | 41
1146 | 1.97625
1147 | 42
1148 | 50
1149 | 43
1150 | 0
1151 | 44
1152 | 0
1153 | 50
1154 | 0
1155 | 51
1156 | 0
1157 | 71
1158 | 0
1159 | 72
1160 | 100
1161 | 73
1162 | 1
1163 | 74
1164 | 3
1165 | 75
1166 | 0
1167 | 76
1168 | 0
1169 | 77
1170 | 0
1171 | 78
1172 | 0
1173 | 281
1174 | 0
1175 | 65
1176 | 1
1177 | 110
1178 | 0
1179 | 120
1180 | 0
1181 | 130
1182 | 0
1183 | 111
1184 | 1
1185 | 121
1186 | 0
1187 | 131
1188 | 0
1189 | 112
1190 | 0
1191 | 122
1192 | 1
1193 | 132
1194 | 0
1195 | 79
1196 | 0
1197 | 146
1198 | 0
1199 | 348
1200 | 10020
1201 | 60
1202 | 7
1203 | 61
1204 | 5
1205 | 292
1206 | 1
1207 | 282
1208 | 1
1209 | 141
1210 | 0
1211 | 142
1212 | 0
1213 | 63
1214 | 250
1215 | 421
1216 | 3358443
1217 | 0
1218 | ENDTAB
1219 | 0
1220 | TABLE
1221 | 2
1222 | LTYPE
1223 | 5
1224 | 500
1225 | 330
1226 | 0
1227 | 100
1228 | AcDbSymbolTable
1229 | 70
1230 | 4
1231 | 0
1232 | LTYPE
1233 | 5
1234 | 501
1235 | 330
1236 | 500
1237 | 100
1238 | AcDbSymbolTableRecord
1239 | 100
1240 | AcDbLinetypeTableRecord
1241 | 2
1242 | ByBlock
1243 | 70
1244 | 0
1245 | 3
1246 |
1247 | 72
1248 | 65
1249 | 73
1250 | 0
1251 | 40
1252 | 0
1253 | 0
1254 | LTYPE
1255 | 5
1256 | 502
1257 | 330
1258 | 500
1259 | 100
1260 | AcDbSymbolTableRecord
1261 | 100
1262 | AcDbLinetypeTableRecord
1263 | 2
1264 | ByLayer
1265 | 70
1266 | 0
1267 | 3
1268 |
1269 | 72
1270 | 65
1271 | 73
1272 | 0
1273 | 40
1274 | 0
1275 | 0
1276 | LTYPE
1277 | 5
1278 | 503
1279 | 330
1280 | 500
1281 | 100
1282 | AcDbSymbolTableRecord
1283 | 100
1284 | AcDbLinetypeTableRecord
1285 | 2
1286 | CONTINUOUS
1287 | 70
1288 | 64
1289 | 3
1290 | Solid line
1291 | 72
1292 | 65
1293 | 73
1294 | 0
1295 | 40
1296 | 0.0
1297 | 0
1298 | ENDTAB
1299 | 0
1300 | TABLE
1301 | 2
1302 | LAYER
1303 | 5
1304 | 504
1305 | 330
1306 | 0
1307 | 100
1308 | AcDbSymbolTable
1309 | 70
1310 | 1
1311 | 0
1312 | LAYER
1313 | 5
1314 | 505
1315 | 330
1316 | 504
1317 | 100
1318 | AcDbSymbolTableRecord
1319 | 100
1320 | AcDbLayerTableRecord
1321 | 2
1322 | 0
1323 | 70
1324 | 64
1325 | 62
1326 | 96
1327 | 6
1328 | CONTINUOUS
1329 | 390
1330 | F
1331 | 0
1332 | LAYER
1333 | 5
1334 | 506
1335 | 330
1336 | 504
1337 | 100
1338 | AcDbSymbolTableRecord
1339 | 100
1340 | AcDbLayerTableRecord
1341 | 2
1342 | 2
1343 | 70
1344 | 64
1345 | 62
1346 | 6
1347 | 6
1348 | CONTINUOUS
1349 | 390
1350 | F
1351 | 0
1352 | ENDTAB
1353 | 0
1354 | TABLE
1355 | 2
1356 | STYLE
1357 | 5
1358 | 3
1359 | 330
1360 | 0
1361 | 100
1362 | AcDbSymbolTable
1363 | 70
1364 | 3
1365 | 0
1366 | STYLE
1367 | 5
1368 | 51
1369 | 330
1370 | 2
1371 | 100
1372 | AcDbSymbolTableRecord
1373 | 100
1374 | AcDbTextStyleTableRecord
1375 | 2
1376 | Standard
1377 | 70
1378 | 0
1379 | 40
1380 | 0
1381 | 41
1382 | 1
1383 | 50
1384 | 0
1385 | 71
1386 | 0
1387 | 42
1388 | 1
1389 | 3
1390 | txt
1391 | 4
1392 |
1393 | 0
1394 | ENDTAB
1395 | 0
1396 | TABLE
1397 | 2
1398 | VIEW
1399 | 5
1400 | 6
1401 | 330
1402 | 0
1403 | 100
1404 | AcDbSymbolTable
1405 | 70
1406 | 0
1407 | 0
1408 | ENDTAB
1409 | 0
1410 | TABLE
1411 | 2
1412 | UCS
1413 | 5
1414 | 7
1415 | 330
1416 | 0
1417 | 100
1418 | AcDbSymbolTable
1419 | 70
1420 | 0
1421 | 0
1422 | ENDTAB
1423 | 0
1424 | TABLE
1425 | 2
1426 | APPID
1427 | 5
1428 | 9
1429 | 330
1430 | 0
1431 | 100
1432 | AcDbSymbolTable
1433 | 70
1434 | 1
1435 | 0
1436 | APPID
1437 | 5
1438 | 12
1439 | 330
1440 | 9
1441 | 100
1442 | AcDbSymbolTableRecord
1443 | 100
1444 | AcDbRegAppTableRecord
1445 | 2
1446 | ACAD
1447 | 70
1448 | 0
1449 | 0
1450 | APPID
1451 | 5
1452 | 52
1453 | 330
1454 | 9
1455 | 100
1456 | AcDbSymbolTableRecord
1457 | 100
1458 | AcDbRegAppTableRecord
1459 | 2
1460 | LibreCad
1461 | 70
1462 | 0
1463 | 0
1464 | ENDTAB
1465 | 0
1466 | TABLE
1467 | 2
1468 | DIMSTYLE
1469 | 5
1470 | A
1471 | 330
1472 | 0
1473 | 100
1474 | AcDbSymbolTable
1475 | 70
1476 | 1
1477 | 100
1478 | AcDbDimStyleTable
1479 | 71
1480 | 1
1481 | 0
1482 | DIMSTYLE
1483 | 105
1484 | 53
1485 | 330
1486 | A
1487 | 100
1488 | AcDbSymbolTableRecord
1489 | 100
1490 | AcDbDimStyleTableRecord
1491 | 2
1492 | Standard
1493 | 70
1494 | 0
1495 | 40
1496 | 1
1497 | 41
1498 | 3.302
1499 | 42
1500 | 1
1501 | 43
1502 | 0.38
1503 | 44
1504 | 1
1505 | 45
1506 | 0
1507 | 46
1508 | 0
1509 | 47
1510 | 0
1511 | 48
1512 | 0
1513 | 49
1514 | 1
1515 | 140
1516 | 3.5
1517 | 141
1518 | 0.09
1519 | 142
1520 | 0
1521 | 143
1522 | 25.4
1523 | 144
1524 | 1
1525 | 145
1526 | 0
1527 | 146
1528 | 1
1529 | 147
1530 | 1.524
1531 | 148
1532 | 0
1533 | 71
1534 | 0
1535 | 72
1536 | 0
1537 | 73
1538 | 1
1539 | 74
1540 | 1
1541 | 75
1542 | 0
1543 | 76
1544 | 0
1545 | 77
1546 | 0
1547 | 78
1548 | 0
1549 | 79
1550 | 0
1551 | 170
1552 | 0
1553 | 171
1554 | 2
1555 | 172
1556 | 0
1557 | 173
1558 | 0
1559 | 174
1560 | 0
1561 | 175
1562 | 0
1563 | 176
1564 | 0
1565 | 177
1566 | 0
1567 | 178
1568 | 0
1569 | 179
1570 | 0
1571 | 271
1572 | 2
1573 | 272
1574 | 4
1575 | 273
1576 | 2
1577 | 274
1578 | 2
1579 | 275
1580 | 0
1581 | 276
1582 | 0
1583 | 277
1584 | 2
1585 | 278
1586 | 44
1587 | 279
1588 | 0
1589 | 280
1590 | 0
1591 | 281
1592 | 0
1593 | 282
1594 | 0
1595 | 283
1596 | 1
1597 | 284
1598 | 0
1599 | 285
1600 | 0
1601 | 286
1602 | 0
1603 | 288
1604 | 0
1605 | 289
1606 | 3
1607 | 340
1608 | Standard
1609 | 341
1610 |
1611 | 371
1612 | -2
1613 | 372
1614 | -2
1615 | 0
1616 | ENDTAB
1617 | 0
1618 | TABLE
1619 | 2
1620 | BLOCK_RECORD
1621 | 5
1622 | 1
1623 | 330
1624 | 0
1625 | 100
1626 | AcDbSymbolTable
1627 | 70
1628 | 2
1629 | 0
1630 | BLOCK_RECORD
1631 | 5
1632 | 1F
1633 | 330
1634 | 1
1635 | 100
1636 | AcDbSymbolTableRecord
1637 | 100
1638 | AcDbBlockTableRecord
1639 | 2
1640 | *Model_Space
1641 | 70
1642 | 0
1643 | 280
1644 | 1
1645 | 281
1646 | 0
1647 | 0
1648 | BLOCK_RECORD
1649 | 5
1650 | 1E
1651 | 330
1652 | 1
1653 | 100
1654 | AcDbSymbolTableRecord
1655 | 100
1656 | AcDbBlockTableRecord
1657 | 2
1658 | *Paper_Space
1659 | 70
1660 | 0
1661 | 280
1662 | 1
1663 | 281
1664 | 0
1665 | 0
1666 | ENDTAB
1667 | 0
1668 | ENDSEC
1669 | 0
1670 | SECTION
1671 | 2
1672 | BLOCKS
1673 | 0
1674 | BLOCK
1675 | 5
1676 | 20
1677 | 330
1678 | 1F
1679 | 100
1680 | AcDbEntity
1681 | 8
1682 | 0
1683 | 100
1684 | AcDbBlockBegin
1685 | 2
1686 | *Model_Space
1687 | 70
1688 | 0
1689 | 10
1690 | 0.0
1691 | 20
1692 | 0.0
1693 | 30
1694 | 0.0
1695 | 3
1696 | *Model_Space
1697 | 1
1698 |
1699 | 0
1700 | ENDBLK
1701 | 5
1702 | 21
1703 | 330
1704 | 1F
1705 | 100
1706 | AcDbEntity
1707 | 8
1708 | 0
1709 | 100
1710 | AcDbBlockEnd
1711 | 0
1712 | BLOCK
1713 | 5
1714 | 1C
1715 | 330
1716 | 1B
1717 | 100
1718 | AcDbEntity
1719 | 8
1720 | 0
1721 | 100
1722 | AcDbBlockBegin
1723 | 2
1724 | *Paper_Space
1725 | 70
1726 | 0
1727 | 10
1728 | 0.0
1729 | 20
1730 | 0.0
1731 | 30
1732 | 0.0
1733 | 3
1734 | *Paper_Space
1735 | 1
1736 |
1737 | 0
1738 | ENDBLK
1739 | 5
1740 | 1D
1741 | 330
1742 | 1F
1743 | 100
1744 | AcDbEntity
1745 | 8
1746 | 0
1747 | 100
1748 | AcDbBlockEnd
1749 | 0
1750 | ENDSEC
1751 | 0
1752 | SECTION
1753 | 2
1754 | ENTITIES
1755 | 0
1756 | ELLIPSE
1757 | 5
1758 | 507
1759 | 100
1760 | AcDbEntity
1761 | 8
1762 | 0
1763 | 100
1764 | AcDbEllipse
1765 | 10
1766 | -20
1767 | 20
1768 | 0
1769 | 30
1770 | 0
1771 | 11
1772 | 0
1773 | 21
1774 | 30
1775 | 31
1776 | 0
1777 | 40
1778 | 0.5
1779 | 41
1780 | 0
1781 | 42
1782 | 6.2831853071796
1783 | 0
1784 | ELLIPSE
1785 | 5
1786 | 508
1787 | 100
1788 | AcDbEntity
1789 | 8
1790 | 2
1791 | 100
1792 | AcDbEllipse
1793 | 10
1794 | 20
1795 | 20
1796 | 0
1797 | 30
1798 | 0
1799 | 11
1800 | 0
1801 | 21
1802 | 30
1803 | 31
1804 | 0
1805 | 40
1806 | 0.5
1807 | 41
1808 | 0
1809 | 42
1810 | 6.2831853071796
1811 | 0
1812 | ENDSEC
1813 | 0
1814 | SECTION
1815 | 2
1816 | OBJECTS
1817 | 0
1818 | DICTIONARY
1819 | 5
1820 | C
1821 | 330
1822 | 0
1823 | 100
1824 | AcDbDictionary
1825 | 281
1826 | 1
1827 | 3
1828 | ACAD_GROUP
1829 | 350
1830 | D
1831 | 0
1832 | DICTIONARY
1833 | 5
1834 | D
1835 | 330
1836 | C
1837 | 100
1838 | AcDbDictionary
1839 | 281
1840 | 1
1841 | 0
1842 | ENDSEC
1843 | 0
1844 | EOF
1845 |
--------------------------------------------------------------------------------
/demo/demo2.dxf:
--------------------------------------------------------------------------------
1 | 0
2 | SECTION
3 | 2
4 | HEADER
5 | 9
6 | $ACADVER
7 | 1
8 | AC1021
9 | 9
10 | $DWGCODEPAGE
11 | 3
12 | ANSI_1252
13 | 9
14 | $INSBASE
15 | 10
16 | 0
17 | 20
18 | 0
19 | 30
20 | 0
21 | 9
22 | $EXTMIN
23 | 10
24 | -35
25 | 20
26 | -30
27 | 30
28 | 0
29 | 9
30 | $EXTMAX
31 | 10
32 | 35
33 | 20
34 | 30
35 | 30
36 | 0
37 | 9
38 | $LIMMIN
39 | 10
40 | 0
41 | 20
42 | 0
43 | 9
44 | $LIMMAX
45 | 10
46 | 420
47 | 20
48 | 297
49 | 9
50 | $ORTHOMODE
51 | 70
52 | 0
53 | 9
54 | $REGENMODE
55 | 70
56 | 1
57 | 9
58 | $FILLMODE
59 | 70
60 | 1
61 | 9
62 | $QTEXTMODE
63 | 70
64 | 0
65 | 9
66 | $MIRRTEXT
67 | 70
68 | 1
69 | 9
70 | $LTSCALE
71 | 40
72 | 1
73 | 9
74 | $ATTMODE
75 | 70
76 | 1
77 | 9
78 | $TEXTSIZE
79 | 40
80 | 3.5
81 | 9
82 | $TRACEWID
83 | 40
84 | 1
85 | 9
86 | $TEXTSTYLE
87 | 7
88 | Standard
89 | 9
90 | $CLAYER
91 | 8
92 | red
93 | 9
94 | $CELTYPE
95 | 6
96 | ByLayer
97 | 9
98 | $CECOLOR
99 | 62
100 | 256
101 | 9
102 | $CELTSCALE
103 | 40
104 | 1
105 | 9
106 | $DISPSILH
107 | 70
108 | 0
109 | 9
110 | $DIMSCALE
111 | 40
112 | 1
113 | 9
114 | $DIMASZ
115 | 40
116 | 3.302
117 | 9
118 | $DIMEXO
119 | 40
120 | 1
121 | 9
122 | $DIMDLI
123 | 40
124 | 3.75
125 | 9
126 | $DIMRND
127 | 40
128 | 0
129 | 9
130 | $DIMDLE
131 | 40
132 | 0
133 | 9
134 | $DIMEXE
135 | 40
136 | 1
137 | 9
138 | $DIMTP
139 | 40
140 | 0
141 | 9
142 | $DIMTM
143 | 40
144 | 0
145 | 9
146 | $DIMTXT
147 | 40
148 | 3.5
149 | 9
150 | $DIMCEN
151 | 40
152 | 2.5
153 | 9
154 | $DIMTSZ
155 | 40
156 | 0
157 | 9
158 | $DIMTOL
159 | 70
160 | 0
161 | 9
162 | $DIMLIM
163 | 70
164 | 0
165 | 9
166 | $DIMTIH
167 | 70
168 | 1
169 | 9
170 | $DIMTOH
171 | 70
172 | 1
173 | 9
174 | $DIMSE1
175 | 70
176 | 0
177 | 9
178 | $DIMSE2
179 | 70
180 | 0
181 | 9
182 | $DIMTAD
183 | 70
184 | 1
185 | 9
186 | $DIMZIN
187 | 70
188 | 0
189 | 9
190 | $DIMBLK
191 | 1
192 |
193 | 9
194 | $DIMASO
195 | 70
196 | 1
197 | 9
198 | $DIMSHO
199 | 70
200 | 1
201 | 9
202 | $DIMPOST
203 | 1
204 |
205 | 9
206 | $DIMAPOST
207 | 1
208 |
209 | 9
210 | $DIMALT
211 | 70
212 | 0
213 | 9
214 | $DIMALTD
215 | 70
216 | 3
217 | 9
218 | $DIMALTF
219 | 40
220 | 0.0393700787
221 | 9
222 | $DIMLFAC
223 | 40
224 | 1
225 | 9
226 | $DIMTOFL
227 | 70
228 | 1
229 | 9
230 | $DIMTVP
231 | 40
232 | 0
233 | 9
234 | $DIMTIX
235 | 70
236 | 0
237 | 9
238 | $DIMSOXD
239 | 70
240 | 0
241 | 9
242 | $DIMSAH
243 | 70
244 | 0
245 | 9
246 | $DIMBLK1
247 | 1
248 |
249 | 9
250 | $DIMBLK2
251 | 1
252 |
253 | 9
254 | $DIMSTYLE
255 | 2
256 | ISO-25
257 | 9
258 | $DIMCLRD
259 | 70
260 | 0
261 | 9
262 | $DIMCLRE
263 | 70
264 | 0
265 | 9
266 | $DIMCLRT
267 | 70
268 | 0
269 | 9
270 | $DIMTFAC
271 | 40
272 | 1
273 | 9
274 | $DIMGAP
275 | 40
276 | 1.524
277 | 9
278 | $DIMJUST
279 | 70
280 | 0
281 | 9
282 | $DIMSD1
283 | 70
284 | 0
285 | 9
286 | $DIMSD2
287 | 70
288 | 0
289 | 9
290 | $DIMTOLJ
291 | 70
292 | 0
293 | 9
294 | $DIMTZIN
295 | 70
296 | 0
297 | 9
298 | $DIMALTZ
299 | 70
300 | 0
301 | 9
302 | $DIMALTTZ
303 | 70
304 | 0
305 | 9
306 | $DIMUPT
307 | 70
308 | 0
309 | 9
310 | $DIMDEC
311 | 70
312 | 2
313 | 9
314 | $DIMTDEC
315 | 70
316 | 2
317 | 9
318 | $DIMALTU
319 | 70
320 | 2
321 | 9
322 | $DIMALTTD
323 | 70
324 | 3
325 | 9
326 | $DIMTXSTY
327 | 7
328 | Standard
329 | 9
330 | $DIMAUNIT
331 | 70
332 | 0
333 | 9
334 | $DIMADEC
335 | 70
336 | 0
337 | 9
338 | $DIMALTRND
339 | 40
340 | 0
341 | 9
342 | $DIMAZIN
343 | 70
344 | 0
345 | 9
346 | $DIMDSEP
347 | 70
348 | 44
349 | 9
350 | $DIMATFIT
351 | 70
352 | 3
353 | 9
354 | $DIMFRAC
355 | 70
356 | 0
357 | 9
358 | $DIMLDRBLK
359 | 1
360 |
361 | 9
362 | $DIMLUNIT
363 | 70
364 | 2
365 | 9
366 | $DIMLWD
367 | 70
368 | -2
369 | 9
370 | $DIMLWE
371 | 70
372 | -2
373 | 9
374 | $DIMTMOVE
375 | 70
376 | 0
377 | 9
378 | $DIMFXL
379 | 40
380 | 1
381 | 9
382 | $DIMFXLON
383 | 70
384 | 0
385 | 9
386 | $DIMJOGANG
387 | 40
388 | 0.7854
389 | 9
390 | $DIMTFILL
391 | 70
392 | 0
393 | 9
394 | $DIMTFILLCLR
395 | 70
396 | 0
397 | 9
398 | $DIMARCSYM
399 | 70
400 | 0
401 | 9
402 | $DIMLTYPE
403 | 6
404 |
405 | 9
406 | $DIMLTEX1
407 | 6
408 |
409 | 9
410 | $DIMLTEX2
411 | 6
412 |
413 | 9
414 | $LUNITS
415 | 70
416 | 2
417 | 9
418 | $LUPREC
419 | 70
420 | 2
421 | 9
422 | $SKETCHINC
423 | 40
424 | 1
425 | 9
426 | $FILLETRAD
427 | 40
428 | 10
429 | 9
430 | $AUNITS
431 | 70
432 | 0
433 | 9
434 | $AUPREC
435 | 70
436 | 2
437 | 9
438 | $MENU
439 | 1
440 | .
441 | 9
442 | $ELEVATION
443 | 40
444 | 0
445 | 9
446 | $PELEVATION
447 | 40
448 | 0
449 | 9
450 | $THICKNESS
451 | 40
452 | 0
453 | 9
454 | $LIMCHECK
455 | 70
456 | 0
457 | 9
458 | $CHAMFERA
459 | 40
460 | 0
461 | 9
462 | $CHAMFERB
463 | 40
464 | 0
465 | 9
466 | $CHAMFERC
467 | 40
468 | 0
469 | 9
470 | $CHAMFERD
471 | 40
472 | 0
473 | 9
474 | $SKPOLY
475 | 70
476 | 0
477 | 9
478 | $USRTIMER
479 | 70
480 | 1
481 | 9
482 | $ANGBASE
483 | 50
484 | 0
485 | 9
486 | $ANGDIR
487 | 70
488 | 0
489 | 9
490 | $PDMODE
491 | 70
492 | 0
493 | 9
494 | $PDSIZE
495 | 40
496 | -1
497 | 9
498 | $PLINEWID
499 | 40
500 | 0
501 | 9
502 | $SPLFRAME
503 | 70
504 | 0
505 | 9
506 | $SPLINETYPE
507 | 70
508 | 6
509 | 9
510 | $SPLINESEGS
511 | 70
512 | 8
513 | 9
514 | $HANDSEED
515 | 5
516 | 20000
517 | 9
518 | $SURFTAB1
519 | 70
520 | 6
521 | 9
522 | $SURFTAB2
523 | 70
524 | 6
525 | 9
526 | $SURFTYPE
527 | 70
528 | 6
529 | 9
530 | $SURFU
531 | 70
532 | 6
533 | 9
534 | $SURFV
535 | 70
536 | 6
537 | 9
538 | $UCSBASE
539 | 2
540 |
541 | 9
542 | $UCSNAME
543 | 2
544 |
545 | 9
546 | $UCSORG
547 | 10
548 | 0
549 | 20
550 | 0
551 | 30
552 | 0
553 | 9
554 | $UCSXDIR
555 | 10
556 | 1
557 | 20
558 | 0
559 | 30
560 | 0
561 | 9
562 | $UCSYDIR
563 | 10
564 | 0
565 | 20
566 | 1
567 | 30
568 | 0
569 | 9
570 | $UCSORTHOREF
571 | 2
572 |
573 | 9
574 | $UCSORTHOVIEW
575 | 70
576 | 0
577 | 9
578 | $UCSORGTOP
579 | 10
580 | 0
581 | 20
582 | 0
583 | 30
584 | 0
585 | 9
586 | $UCSORGBOTTOM
587 | 10
588 | 0
589 | 20
590 | 0
591 | 30
592 | 0
593 | 9
594 | $UCSORGLEFT
595 | 10
596 | 0
597 | 20
598 | 0
599 | 30
600 | 0
601 | 9
602 | $UCSORGRIGHT
603 | 10
604 | 0
605 | 20
606 | 0
607 | 30
608 | 0
609 | 9
610 | $UCSORGFRONT
611 | 10
612 | 0
613 | 20
614 | 0
615 | 30
616 | 0
617 | 9
618 | $UCSORGBACK
619 | 10
620 | 0
621 | 20
622 | 0
623 | 30
624 | 0
625 | 9
626 | $PUCSBASE
627 | 2
628 |
629 | 9
630 | $PUCSNAME
631 | 2
632 |
633 | 9
634 | $PUCSORG
635 | 10
636 | 0
637 | 20
638 | 0
639 | 30
640 | 0
641 | 9
642 | $PUCSXDIR
643 | 10
644 | 1
645 | 20
646 | 0
647 | 30
648 | 0
649 | 9
650 | $PUCSYDIR
651 | 10
652 | 0
653 | 20
654 | 1
655 | 30
656 | 0
657 | 9
658 | $PUCSORTHOREF
659 | 2
660 |
661 | 9
662 | $PUCSORTHOVIEW
663 | 70
664 | 0
665 | 9
666 | $PUCSORGTOP
667 | 10
668 | 0
669 | 20
670 | 0
671 | 30
672 | 0
673 | 9
674 | $PUCSORGBOTTOM
675 | 10
676 | 0
677 | 20
678 | 0
679 | 30
680 | 0
681 | 9
682 | $PUCSORGLEFT
683 | 10
684 | 0
685 | 20
686 | 0
687 | 30
688 | 0
689 | 9
690 | $PUCSORGRIGHT
691 | 10
692 | 0
693 | 20
694 | 0
695 | 30
696 | 0
697 | 9
698 | $PUCSORGFRONT
699 | 10
700 | 0
701 | 20
702 | 0
703 | 30
704 | 0
705 | 9
706 | $PUCSORGBACK
707 | 10
708 | 0
709 | 20
710 | 0
711 | 30
712 | 0
713 | 9
714 | $USERI1
715 | 70
716 | 0
717 | 9
718 | $USERI2
719 | 70
720 | 0
721 | 9
722 | $USERI3
723 | 70
724 | 0
725 | 9
726 | $USERI4
727 | 70
728 | 0
729 | 9
730 | $USERI5
731 | 70
732 | 0
733 | 9
734 | $USERR1
735 | 40
736 | 0
737 | 9
738 | $USERR2
739 | 40
740 | 0
741 | 9
742 | $USERR3
743 | 40
744 | 0
745 | 9
746 | $USERR4
747 | 40
748 | 0
749 | 9
750 | $USERR5
751 | 40
752 | 0
753 | 9
754 | $WORLDVIEW
755 | 70
756 | 1
757 | 9
758 | $SHADEDGE
759 | 70
760 | 3
761 | 9
762 | $SHADEDIF
763 | 70
764 | 70
765 | 9
766 | $TILEMODE
767 | 70
768 | 1
769 | 9
770 | $MAXACTVP
771 | 70
772 | 64
773 | 9
774 | $PINSBASE
775 | 10
776 | 0
777 | 20
778 | 0
779 | 30
780 | 0
781 | 9
782 | $PLIMCHECK
783 | 70
784 | 0
785 | 9
786 | $PEXTMIN
787 | 10
788 | 1e+20
789 | 20
790 | 1e+20
791 | 30
792 | 1e+20
793 | 9
794 | $PEXTMAX
795 | 10
796 | -1e+20
797 | 20
798 | -1e+20
799 | 30
800 | -1e+20
801 | 9
802 | $GRIDMODE
803 | 70
804 | 0
805 | 9
806 | $SNAPSTYLE
807 | 70
808 | 0
809 | 9
810 | $PLIMMIN
811 | 10
812 | 0
813 | 20
814 | 0
815 | 9
816 | $PLIMMAX
817 | 10
818 | 420
819 | 20
820 | 297
821 | 9
822 | $UNITMODE
823 | 70
824 | 0
825 | 9
826 | $VISRETAIN
827 | 70
828 | 1
829 | 9
830 | $PLINEGEN
831 | 70
832 | 0
833 | 9
834 | $PSLTSCALE
835 | 70
836 | 1
837 | 9
838 | $TREEDEPTH
839 | 70
840 | 3020
841 | 9
842 | $CMLSTYLE
843 | 2
844 | Standard
845 | 9
846 | $CMLJUST
847 | 70
848 | 0
849 | 9
850 | $CMLSCALE
851 | 40
852 | 20
853 | 9
854 | $PROXYGRAPHICS
855 | 70
856 | 1
857 | 9
858 | $MEASUREMENT
859 | 70
860 | 1
861 | 9
862 | $CELWEIGHT
863 | 370
864 | -1
865 | 9
866 | $ENDCAPS
867 | 280
868 | 0
869 | 9
870 | $JOINSTYLE
871 | 280
872 | 0
873 | 9
874 | $LWDISPLAY
875 | 290
876 | 1
877 | 9
878 | $INSUNITS
879 | 70
880 | 4
881 | 9
882 | $HYPERLINKBASE
883 | 1
884 |
885 | 9
886 | $STYLESHEET
887 | 1
888 |
889 | 9
890 | $XEDIT
891 | 290
892 | 1
893 | 9
894 | $CEPSNTYPE
895 | 380
896 | 0
897 | 9
898 | $PSTYLEMODE
899 | 290
900 | 1
901 | 9
902 | $EXTNAMES
903 | 290
904 | 1
905 | 9
906 | $PSVPSCALE
907 | 40
908 | 0
909 | 9
910 | $OLESTARTUP
911 | 290
912 | 0
913 | 9
914 | $SORTENTS
915 | 280
916 | 127
917 | 9
918 | $INDEXCTL
919 | 280
920 | 0
921 | 9
922 | $HIDETEXT
923 | 280
924 | 1
925 | 9
926 | $XCLIPFRAME
927 | 290
928 | 0
929 | 9
930 | $HALOGAP
931 | 280
932 | 0
933 | 9
934 | $OBSCOLOR
935 | 70
936 | 257
937 | 9
938 | $OBSLTYPE
939 | 280
940 | 0
941 | 9
942 | $INTERSECTIONDISPLAY
943 | 280
944 | 0
945 | 9
946 | $INTERSECTIONCOLOR
947 | 70
948 | 257
949 | 9
950 | $DIMASSOC
951 | 280
952 | 1
953 | 9
954 | $PROJECTNAME
955 | 1
956 |
957 | 9
958 | $CAMERADISPLAY
959 | 290
960 | 0
961 | 9
962 | $LENSLENGTH
963 | 40
964 | 50
965 | 9
966 | $CAMERAHEIGHT
967 | 40
968 | 0
969 | 9
970 | $STEPSPERSEC
971 | 40
972 | 2
973 | 9
974 | $STEPSIZE
975 | 40
976 | 50
977 | 9
978 | $3DDWFPREC
979 | 40
980 | 2
981 | 9
982 | $PSOLWIDTH
983 | 40
984 | 5
985 | 9
986 | $PSOLHEIGHT
987 | 40
988 | 80
989 | 9
990 | $LOFTANG1
991 | 40
992 | 1.570796326794897
993 | 9
994 | $LOFTANG2
995 | 40
996 | 1.570796326794897
997 | 9
998 | $LOFTMAG1
999 | 40
1000 | 0
1001 | 9
1002 | $LOFTMAG2
1003 | 40
1004 | 0
1005 | 9
1006 | $LOFTPARAM
1007 | 70
1008 | 7
1009 | 9
1010 | $LOFTNORMALS
1011 | 280
1012 | 1
1013 | 9
1014 | $LATITUDE
1015 | 40
1016 | 1
1017 | 9
1018 | $LONGITUDE
1019 | 40
1020 | 1
1021 | 9
1022 | $NORTHDIRECTION
1023 | 40
1024 | 0
1025 | 9
1026 | $TIMEZONE
1027 | 70
1028 | -8000
1029 | 9
1030 | $LIGHTGLYPHDISPLAY
1031 | 280
1032 | 1
1033 | 9
1034 | $TILEMODELIGHTSYNCH
1035 | 280
1036 | 1
1037 | 9
1038 | $SOLIDHIST
1039 | 280
1040 | 1
1041 | 9
1042 | $SHOWHIST
1043 | 280
1044 | 1
1045 | 9
1046 | $DWFFRAME
1047 | 280
1048 | 2
1049 | 9
1050 | $DGNFRAME
1051 | 280
1052 | 0
1053 | 9
1054 | $REALWORLDSCALE
1055 | 290
1056 | 1
1057 | 9
1058 | $INTERFERECOLOR
1059 | 62
1060 | 1
1061 | 9
1062 | $CSHADOW
1063 | 280
1064 | 0
1065 | 9
1066 | $SHADOWPLANELOCATION
1067 | 40
1068 | 0
1069 | 0
1070 | ENDSEC
1071 | 0
1072 | SECTION
1073 | 2
1074 | CLASSES
1075 | 0
1076 | ENDSEC
1077 | 0
1078 | SECTION
1079 | 2
1080 | TABLES
1081 | 0
1082 | TABLE
1083 | 2
1084 | VPORT
1085 | 5
1086 | 8
1087 | 330
1088 | 0
1089 | 100
1090 | AcDbSymbolTable
1091 | 70
1092 | 1
1093 | 0
1094 | VPORT
1095 | 5
1096 | 31
1097 | 330
1098 | 2
1099 | 100
1100 | AcDbSymbolTableRecord
1101 | 100
1102 | AcDbViewportTableRecord
1103 | 2
1104 | *ACTIVE
1105 | 70
1106 | 0
1107 | 10
1108 | 0
1109 | 20
1110 | 0
1111 | 11
1112 | 1
1113 | 21
1114 | 1
1115 | 12
1116 | 44.22616565550683
1117 | 22
1118 | 23.67269572240605
1119 | 13
1120 | 0
1121 | 23
1122 | 0
1123 | 14
1124 | 10
1125 | 24
1126 | 10
1127 | 15
1128 | 10
1129 | 25
1130 | 10
1131 | 16
1132 | 0
1133 | 26
1134 | 0
1135 | 36
1136 | 1
1137 | 17
1138 | 0
1139 | 27
1140 | 0
1141 | 37
1142 | 0
1143 | 40
1144 | 89.12073683729336
1145 | 41
1146 | 1.97625
1147 | 42
1148 | 50
1149 | 43
1150 | 0
1151 | 44
1152 | 0
1153 | 50
1154 | 0
1155 | 51
1156 | 0
1157 | 71
1158 | 0
1159 | 72
1160 | 100
1161 | 73
1162 | 1
1163 | 74
1164 | 3
1165 | 75
1166 | 0
1167 | 76
1168 | 0
1169 | 77
1170 | 0
1171 | 78
1172 | 0
1173 | 281
1174 | 0
1175 | 65
1176 | 1
1177 | 110
1178 | 0
1179 | 120
1180 | 0
1181 | 130
1182 | 0
1183 | 111
1184 | 1
1185 | 121
1186 | 0
1187 | 131
1188 | 0
1189 | 112
1190 | 0
1191 | 122
1192 | 1
1193 | 132
1194 | 0
1195 | 79
1196 | 0
1197 | 146
1198 | 0
1199 | 348
1200 | 10020
1201 | 60
1202 | 7
1203 | 61
1204 | 5
1205 | 292
1206 | 1
1207 | 282
1208 | 1
1209 | 141
1210 | 0
1211 | 142
1212 | 0
1213 | 63
1214 | 250
1215 | 421
1216 | 3358443
1217 | 0
1218 | ENDTAB
1219 | 0
1220 | TABLE
1221 | 2
1222 | LTYPE
1223 | 5
1224 | 500
1225 | 330
1226 | 0
1227 | 100
1228 | AcDbSymbolTable
1229 | 70
1230 | 4
1231 | 0
1232 | LTYPE
1233 | 5
1234 | 501
1235 | 330
1236 | 500
1237 | 100
1238 | AcDbSymbolTableRecord
1239 | 100
1240 | AcDbLinetypeTableRecord
1241 | 2
1242 | ByBlock
1243 | 70
1244 | 0
1245 | 3
1246 |
1247 | 72
1248 | 65
1249 | 73
1250 | 0
1251 | 40
1252 | 0
1253 | 0
1254 | LTYPE
1255 | 5
1256 | 502
1257 | 330
1258 | 500
1259 | 100
1260 | AcDbSymbolTableRecord
1261 | 100
1262 | AcDbLinetypeTableRecord
1263 | 2
1264 | ByLayer
1265 | 70
1266 | 0
1267 | 3
1268 |
1269 | 72
1270 | 65
1271 | 73
1272 | 0
1273 | 40
1274 | 0
1275 | 0
1276 | LTYPE
1277 | 5
1278 | 503
1279 | 330
1280 | 500
1281 | 100
1282 | AcDbSymbolTableRecord
1283 | 100
1284 | AcDbLinetypeTableRecord
1285 | 2
1286 | CONTINUOUS
1287 | 70
1288 | 64
1289 | 3
1290 | Solid line
1291 | 72
1292 | 65
1293 | 73
1294 | 0
1295 | 40
1296 | 0.0
1297 | 0
1298 | LTYPE
1299 | 5
1300 | 504
1301 | 330
1302 | 500
1303 | 100
1304 | AcDbSymbolTableRecord
1305 | 100
1306 | AcDbLinetypeTableRecord
1307 | 2
1308 | DASHDOTX2
1309 | 70
1310 | 64
1311 | 3
1312 | Dash dot (2x) ____ . ____ . ____ . ___
1313 | 72
1314 | 65
1315 | 73
1316 | 4
1317 | 40
1318 | 50.8
1319 | 49
1320 | 25.4
1321 | 74
1322 | 0
1323 | 49
1324 | -12.7
1325 | 74
1326 | 0
1327 | 49
1328 | 0
1329 | 74
1330 | 0
1331 | 49
1332 | -12.7
1333 | 74
1334 | 0
1335 | 0
1336 | ENDTAB
1337 | 0
1338 | TABLE
1339 | 2
1340 | LAYER
1341 | 5
1342 | 505
1343 | 330
1344 | 0
1345 | 100
1346 | AcDbSymbolTable
1347 | 70
1348 | 1
1349 | 0
1350 | LAYER
1351 | 5
1352 | 506
1353 | 330
1354 | 505
1355 | 100
1356 | AcDbSymbolTableRecord
1357 | 100
1358 | AcDbLayerTableRecord
1359 | 2
1360 | 0
1361 | 70
1362 | 64
1363 | 62
1364 | 96
1365 | 6
1366 | DASHDOTX2
1367 | 390
1368 | F
1369 | 0
1370 | LAYER
1371 | 5
1372 | 507
1373 | 330
1374 | 505
1375 | 100
1376 | AcDbSymbolTableRecord
1377 | 100
1378 | AcDbLayerTableRecord
1379 | 2
1380 | poly
1381 | 70
1382 | 64
1383 | 62
1384 | 6
1385 | 6
1386 | CONTINUOUS
1387 | 390
1388 | F
1389 | 0
1390 | ENDTAB
1391 | 0
1392 | TABLE
1393 | 2
1394 | STYLE
1395 | 5
1396 | 3
1397 | 330
1398 | 0
1399 | 100
1400 | AcDbSymbolTable
1401 | 70
1402 | 3
1403 | 0
1404 | STYLE
1405 | 5
1406 | 51
1407 | 330
1408 | 2
1409 | 100
1410 | AcDbSymbolTableRecord
1411 | 100
1412 | AcDbTextStyleTableRecord
1413 | 2
1414 | Standard
1415 | 70
1416 | 0
1417 | 40
1418 | 0
1419 | 41
1420 | 1
1421 | 50
1422 | 0
1423 | 71
1424 | 0
1425 | 42
1426 | 1
1427 | 3
1428 | txt
1429 | 4
1430 |
1431 | 0
1432 | ENDTAB
1433 | 0
1434 | TABLE
1435 | 2
1436 | VIEW
1437 | 5
1438 | 6
1439 | 330
1440 | 0
1441 | 100
1442 | AcDbSymbolTable
1443 | 70
1444 | 0
1445 | 0
1446 | ENDTAB
1447 | 0
1448 | TABLE
1449 | 2
1450 | UCS
1451 | 5
1452 | 7
1453 | 330
1454 | 0
1455 | 100
1456 | AcDbSymbolTable
1457 | 70
1458 | 0
1459 | 0
1460 | ENDTAB
1461 | 0
1462 | TABLE
1463 | 2
1464 | APPID
1465 | 5
1466 | 9
1467 | 330
1468 | 0
1469 | 100
1470 | AcDbSymbolTable
1471 | 70
1472 | 1
1473 | 0
1474 | APPID
1475 | 5
1476 | 12
1477 | 330
1478 | 9
1479 | 100
1480 | AcDbSymbolTableRecord
1481 | 100
1482 | AcDbRegAppTableRecord
1483 | 2
1484 | ACAD
1485 | 70
1486 | 0
1487 | 0
1488 | APPID
1489 | 5
1490 | 52
1491 | 330
1492 | 9
1493 | 100
1494 | AcDbSymbolTableRecord
1495 | 100
1496 | AcDbRegAppTableRecord
1497 | 2
1498 | LibreCad
1499 | 70
1500 | 0
1501 | 0
1502 | ENDTAB
1503 | 0
1504 | TABLE
1505 | 2
1506 | DIMSTYLE
1507 | 5
1508 | A
1509 | 330
1510 | 0
1511 | 100
1512 | AcDbSymbolTable
1513 | 70
1514 | 1
1515 | 100
1516 | AcDbDimStyleTable
1517 | 71
1518 | 1
1519 | 0
1520 | DIMSTYLE
1521 | 105
1522 | 53
1523 | 330
1524 | A
1525 | 100
1526 | AcDbSymbolTableRecord
1527 | 100
1528 | AcDbDimStyleTableRecord
1529 | 2
1530 | Standard
1531 | 70
1532 | 0
1533 | 40
1534 | 1
1535 | 41
1536 | 3.302
1537 | 42
1538 | 1
1539 | 43
1540 | 0.38
1541 | 44
1542 | 1
1543 | 45
1544 | 0
1545 | 46
1546 | 0
1547 | 47
1548 | 0
1549 | 48
1550 | 0
1551 | 49
1552 | 1
1553 | 140
1554 | 3.5
1555 | 141
1556 | 0.09
1557 | 142
1558 | 0
1559 | 143
1560 | 25.4
1561 | 144
1562 | 1
1563 | 145
1564 | 0
1565 | 146
1566 | 1
1567 | 147
1568 | 1.524
1569 | 148
1570 | 0
1571 | 71
1572 | 0
1573 | 72
1574 | 0
1575 | 73
1576 | 1
1577 | 74
1578 | 1
1579 | 75
1580 | 0
1581 | 76
1582 | 0
1583 | 77
1584 | 0
1585 | 78
1586 | 0
1587 | 79
1588 | 0
1589 | 170
1590 | 0
1591 | 171
1592 | 2
1593 | 172
1594 | 0
1595 | 173
1596 | 0
1597 | 174
1598 | 0
1599 | 175
1600 | 0
1601 | 176
1602 | 0
1603 | 177
1604 | 0
1605 | 178
1606 | 0
1607 | 179
1608 | 0
1609 | 271
1610 | 2
1611 | 272
1612 | 4
1613 | 273
1614 | 2
1615 | 274
1616 | 2
1617 | 275
1618 | 0
1619 | 276
1620 | 0
1621 | 277
1622 | 2
1623 | 278
1624 | 44
1625 | 279
1626 | 0
1627 | 280
1628 | 0
1629 | 281
1630 | 0
1631 | 282
1632 | 0
1633 | 283
1634 | 1
1635 | 284
1636 | 0
1637 | 285
1638 | 0
1639 | 286
1640 | 0
1641 | 288
1642 | 0
1643 | 289
1644 | 3
1645 | 340
1646 | Standard
1647 | 341
1648 |
1649 | 371
1650 | -2
1651 | 372
1652 | -2
1653 | 0
1654 | ENDTAB
1655 | 0
1656 | TABLE
1657 | 2
1658 | BLOCK_RECORD
1659 | 5
1660 | 1
1661 | 330
1662 | 0
1663 | 100
1664 | AcDbSymbolTable
1665 | 70
1666 | 2
1667 | 0
1668 | BLOCK_RECORD
1669 | 5
1670 | 1F
1671 | 330
1672 | 1
1673 | 100
1674 | AcDbSymbolTableRecord
1675 | 100
1676 | AcDbBlockTableRecord
1677 | 2
1678 | *Model_Space
1679 | 70
1680 | 0
1681 | 280
1682 | 1
1683 | 281
1684 | 0
1685 | 0
1686 | BLOCK_RECORD
1687 | 5
1688 | 1E
1689 | 330
1690 | 1
1691 | 100
1692 | AcDbSymbolTableRecord
1693 | 100
1694 | AcDbBlockTableRecord
1695 | 2
1696 | *Paper_Space
1697 | 70
1698 | 0
1699 | 280
1700 | 1
1701 | 281
1702 | 0
1703 | 0
1704 | ENDTAB
1705 | 0
1706 | ENDSEC
1707 | 0
1708 | SECTION
1709 | 2
1710 | BLOCKS
1711 | 0
1712 | BLOCK
1713 | 5
1714 | 20
1715 | 330
1716 | 1F
1717 | 100
1718 | AcDbEntity
1719 | 8
1720 | 0
1721 | 100
1722 | AcDbBlockBegin
1723 | 2
1724 | *Model_Space
1725 | 70
1726 | 0
1727 | 10
1728 | 0.0
1729 | 20
1730 | 0.0
1731 | 30
1732 | 0.0
1733 | 3
1734 | *Model_Space
1735 | 1
1736 |
1737 | 0
1738 | ENDBLK
1739 | 5
1740 | 21
1741 | 330
1742 | 1F
1743 | 100
1744 | AcDbEntity
1745 | 8
1746 | 0
1747 | 100
1748 | AcDbBlockEnd
1749 | 0
1750 | BLOCK
1751 | 5
1752 | 1C
1753 | 330
1754 | 1B
1755 | 100
1756 | AcDbEntity
1757 | 8
1758 | 0
1759 | 100
1760 | AcDbBlockBegin
1761 | 2
1762 | *Paper_Space
1763 | 70
1764 | 0
1765 | 10
1766 | 0.0
1767 | 20
1768 | 0.0
1769 | 30
1770 | 0.0
1771 | 3
1772 | *Paper_Space
1773 | 1
1774 |
1775 | 0
1776 | ENDBLK
1777 | 5
1778 | 1D
1779 | 330
1780 | 1F
1781 | 100
1782 | AcDbEntity
1783 | 8
1784 | 0
1785 | 100
1786 | AcDbBlockEnd
1787 | 0
1788 | ENDSEC
1789 | 0
1790 | SECTION
1791 | 2
1792 | ENTITIES
1793 | 0
1794 | CIRCLE
1795 | 5
1796 | 508
1797 | 100
1798 | AcDbEntity
1799 | 8
1800 | 0
1801 | 100
1802 | AcDbCircle
1803 | 10
1804 | 0
1805 | 20
1806 | 0
1807 | 30
1808 | 0
1809 | 40
1810 | 33
1811 | 0
1812 | LWPOLYLINE
1813 | 5
1814 | 509
1815 | 100
1816 | AcDbEntity
1817 | 8
1818 | poly
1819 | 100
1820 | AcDbPolyline
1821 | 90
1822 | 9
1823 | 70
1824 | 0
1825 | 43
1826 | 0
1827 | 38
1828 | 0
1829 | 39
1830 | 0
1831 | 10
1832 | 100
1833 | 20
1834 | 100
1835 | 10
1836 | 100
1837 | 20
1838 | 50
1839 | 10
1840 | 50
1841 | 20
1842 | 50
1843 | 10
1844 | 50
1845 | 20
1846 | 100
1847 | 10
1848 | 30
1849 | 20
1850 | 100
1851 | 10
1852 | 30
1853 | 20
1854 | 40
1855 | 10
1856 | 35
1857 | 20
1858 | 40
1859 | 10
1860 | 35
1861 | 20
1862 | 20
1863 | 0
1864 | ENDSEC
1865 | 0
1866 | SECTION
1867 | 2
1868 | OBJECTS
1869 | 0
1870 | DICTIONARY
1871 | 5
1872 | C
1873 | 330
1874 | 0
1875 | 100
1876 | AcDbDictionary
1877 | 281
1878 | 1
1879 | 3
1880 | ACAD_GROUP
1881 | 350
1882 | D
1883 | 0
1884 | DICTIONARY
1885 | 5
1886 | D
1887 | 330
1888 | C
1889 | 100
1890 | AcDbDictionary
1891 | 281
1892 | 1
1893 | 0
1894 | ENDSEC
1895 | 0
1896 | EOF
1897 |
--------------------------------------------------------------------------------
/demo/demo1.dxf:
--------------------------------------------------------------------------------
1 | 0
2 | SECTION
3 | 2
4 | HEADER
5 | 9
6 | $ACADVER
7 | 1
8 | AC1021
9 | 9
10 | $DWGCODEPAGE
11 | 3
12 | ANSI_1252
13 | 9
14 | $INSBASE
15 | 10
16 | 0
17 | 20
18 | 0
19 | 30
20 | 0
21 | 9
22 | $EXTMIN
23 | 10
24 | -35
25 | 20
26 | -30
27 | 30
28 | 0
29 | 9
30 | $EXTMAX
31 | 10
32 | 35
33 | 20
34 | 30
35 | 30
36 | 0
37 | 9
38 | $LIMMIN
39 | 10
40 | 0
41 | 20
42 | 0
43 | 9
44 | $LIMMAX
45 | 10
46 | 420
47 | 20
48 | 297
49 | 9
50 | $ORTHOMODE
51 | 70
52 | 0
53 | 9
54 | $REGENMODE
55 | 70
56 | 1
57 | 9
58 | $FILLMODE
59 | 70
60 | 1
61 | 9
62 | $QTEXTMODE
63 | 70
64 | 0
65 | 9
66 | $MIRRTEXT
67 | 70
68 | 1
69 | 9
70 | $LTSCALE
71 | 40
72 | 1
73 | 9
74 | $ATTMODE
75 | 70
76 | 1
77 | 9
78 | $TEXTSIZE
79 | 40
80 | 3.5
81 | 9
82 | $TRACEWID
83 | 40
84 | 1
85 | 9
86 | $TEXTSTYLE
87 | 7
88 | Standard
89 | 9
90 | $CLAYER
91 | 8
92 | red
93 | 9
94 | $CELTYPE
95 | 6
96 | ByLayer
97 | 9
98 | $CECOLOR
99 | 62
100 | 256
101 | 9
102 | $CELTSCALE
103 | 40
104 | 1
105 | 9
106 | $DISPSILH
107 | 70
108 | 0
109 | 9
110 | $DIMSCALE
111 | 40
112 | 1
113 | 9
114 | $DIMASZ
115 | 40
116 | 3.302
117 | 9
118 | $DIMEXO
119 | 40
120 | 1
121 | 9
122 | $DIMDLI
123 | 40
124 | 3.75
125 | 9
126 | $DIMRND
127 | 40
128 | 0
129 | 9
130 | $DIMDLE
131 | 40
132 | 0
133 | 9
134 | $DIMEXE
135 | 40
136 | 1
137 | 9
138 | $DIMTP
139 | 40
140 | 0
141 | 9
142 | $DIMTM
143 | 40
144 | 0
145 | 9
146 | $DIMTXT
147 | 40
148 | 3.5
149 | 9
150 | $DIMCEN
151 | 40
152 | 2.5
153 | 9
154 | $DIMTSZ
155 | 40
156 | 0
157 | 9
158 | $DIMTOL
159 | 70
160 | 0
161 | 9
162 | $DIMLIM
163 | 70
164 | 0
165 | 9
166 | $DIMTIH
167 | 70
168 | 1
169 | 9
170 | $DIMTOH
171 | 70
172 | 1
173 | 9
174 | $DIMSE1
175 | 70
176 | 0
177 | 9
178 | $DIMSE2
179 | 70
180 | 0
181 | 9
182 | $DIMTAD
183 | 70
184 | 1
185 | 9
186 | $DIMZIN
187 | 70
188 | 0
189 | 9
190 | $DIMBLK
191 | 1
192 |
193 | 9
194 | $DIMASO
195 | 70
196 | 1
197 | 9
198 | $DIMSHO
199 | 70
200 | 1
201 | 9
202 | $DIMPOST
203 | 1
204 |
205 | 9
206 | $DIMAPOST
207 | 1
208 |
209 | 9
210 | $DIMALT
211 | 70
212 | 0
213 | 9
214 | $DIMALTD
215 | 70
216 | 3
217 | 9
218 | $DIMALTF
219 | 40
220 | 0.0393700787
221 | 9
222 | $DIMLFAC
223 | 40
224 | 1
225 | 9
226 | $DIMTOFL
227 | 70
228 | 1
229 | 9
230 | $DIMTVP
231 | 40
232 | 0
233 | 9
234 | $DIMTIX
235 | 70
236 | 0
237 | 9
238 | $DIMSOXD
239 | 70
240 | 0
241 | 9
242 | $DIMSAH
243 | 70
244 | 0
245 | 9
246 | $DIMBLK1
247 | 1
248 |
249 | 9
250 | $DIMBLK2
251 | 1
252 |
253 | 9
254 | $DIMSTYLE
255 | 2
256 | ISO-25
257 | 9
258 | $DIMCLRD
259 | 70
260 | 0
261 | 9
262 | $DIMCLRE
263 | 70
264 | 0
265 | 9
266 | $DIMCLRT
267 | 70
268 | 0
269 | 9
270 | $DIMTFAC
271 | 40
272 | 1
273 | 9
274 | $DIMGAP
275 | 40
276 | 1.524
277 | 9
278 | $DIMJUST
279 | 70
280 | 0
281 | 9
282 | $DIMSD1
283 | 70
284 | 0
285 | 9
286 | $DIMSD2
287 | 70
288 | 0
289 | 9
290 | $DIMTOLJ
291 | 70
292 | 0
293 | 9
294 | $DIMTZIN
295 | 70
296 | 0
297 | 9
298 | $DIMALTZ
299 | 70
300 | 0
301 | 9
302 | $DIMALTTZ
303 | 70
304 | 0
305 | 9
306 | $DIMUPT
307 | 70
308 | 0
309 | 9
310 | $DIMDEC
311 | 70
312 | 2
313 | 9
314 | $DIMTDEC
315 | 70
316 | 2
317 | 9
318 | $DIMALTU
319 | 70
320 | 2
321 | 9
322 | $DIMALTTD
323 | 70
324 | 3
325 | 9
326 | $DIMTXSTY
327 | 7
328 | Standard
329 | 9
330 | $DIMAUNIT
331 | 70
332 | 0
333 | 9
334 | $DIMADEC
335 | 70
336 | 0
337 | 9
338 | $DIMALTRND
339 | 40
340 | 0
341 | 9
342 | $DIMAZIN
343 | 70
344 | 0
345 | 9
346 | $DIMDSEP
347 | 70
348 | 44
349 | 9
350 | $DIMATFIT
351 | 70
352 | 3
353 | 9
354 | $DIMFRAC
355 | 70
356 | 0
357 | 9
358 | $DIMLDRBLK
359 | 1
360 |
361 | 9
362 | $DIMLUNIT
363 | 70
364 | 2
365 | 9
366 | $DIMLWD
367 | 70
368 | -2
369 | 9
370 | $DIMLWE
371 | 70
372 | -2
373 | 9
374 | $DIMTMOVE
375 | 70
376 | 0
377 | 9
378 | $DIMFXL
379 | 40
380 | 1
381 | 9
382 | $DIMFXLON
383 | 70
384 | 0
385 | 9
386 | $DIMJOGANG
387 | 40
388 | 0.7854
389 | 9
390 | $DIMTFILL
391 | 70
392 | 0
393 | 9
394 | $DIMTFILLCLR
395 | 70
396 | 0
397 | 9
398 | $DIMARCSYM
399 | 70
400 | 0
401 | 9
402 | $DIMLTYPE
403 | 6
404 |
405 | 9
406 | $DIMLTEX1
407 | 6
408 |
409 | 9
410 | $DIMLTEX2
411 | 6
412 |
413 | 9
414 | $LUNITS
415 | 70
416 | 2
417 | 9
418 | $LUPREC
419 | 70
420 | 2
421 | 9
422 | $SKETCHINC
423 | 40
424 | 1
425 | 9
426 | $FILLETRAD
427 | 40
428 | 10
429 | 9
430 | $AUNITS
431 | 70
432 | 0
433 | 9
434 | $AUPREC
435 | 70
436 | 2
437 | 9
438 | $MENU
439 | 1
440 | .
441 | 9
442 | $ELEVATION
443 | 40
444 | 0
445 | 9
446 | $PELEVATION
447 | 40
448 | 0
449 | 9
450 | $THICKNESS
451 | 40
452 | 0
453 | 9
454 | $LIMCHECK
455 | 70
456 | 0
457 | 9
458 | $CHAMFERA
459 | 40
460 | 0
461 | 9
462 | $CHAMFERB
463 | 40
464 | 0
465 | 9
466 | $CHAMFERC
467 | 40
468 | 0
469 | 9
470 | $CHAMFERD
471 | 40
472 | 0
473 | 9
474 | $SKPOLY
475 | 70
476 | 0
477 | 9
478 | $USRTIMER
479 | 70
480 | 1
481 | 9
482 | $ANGBASE
483 | 50
484 | 0
485 | 9
486 | $ANGDIR
487 | 70
488 | 0
489 | 9
490 | $PDMODE
491 | 70
492 | 0
493 | 9
494 | $PDSIZE
495 | 40
496 | -1
497 | 9
498 | $PLINEWID
499 | 40
500 | 0
501 | 9
502 | $SPLFRAME
503 | 70
504 | 0
505 | 9
506 | $SPLINETYPE
507 | 70
508 | 6
509 | 9
510 | $SPLINESEGS
511 | 70
512 | 8
513 | 9
514 | $HANDSEED
515 | 5
516 | 20000
517 | 9
518 | $SURFTAB1
519 | 70
520 | 6
521 | 9
522 | $SURFTAB2
523 | 70
524 | 6
525 | 9
526 | $SURFTYPE
527 | 70
528 | 6
529 | 9
530 | $SURFU
531 | 70
532 | 6
533 | 9
534 | $SURFV
535 | 70
536 | 6
537 | 9
538 | $UCSBASE
539 | 2
540 |
541 | 9
542 | $UCSNAME
543 | 2
544 |
545 | 9
546 | $UCSORG
547 | 10
548 | 0
549 | 20
550 | 0
551 | 30
552 | 0
553 | 9
554 | $UCSXDIR
555 | 10
556 | 1
557 | 20
558 | 0
559 | 30
560 | 0
561 | 9
562 | $UCSYDIR
563 | 10
564 | 0
565 | 20
566 | 1
567 | 30
568 | 0
569 | 9
570 | $UCSORTHOREF
571 | 2
572 |
573 | 9
574 | $UCSORTHOVIEW
575 | 70
576 | 0
577 | 9
578 | $UCSORGTOP
579 | 10
580 | 0
581 | 20
582 | 0
583 | 30
584 | 0
585 | 9
586 | $UCSORGBOTTOM
587 | 10
588 | 0
589 | 20
590 | 0
591 | 30
592 | 0
593 | 9
594 | $UCSORGLEFT
595 | 10
596 | 0
597 | 20
598 | 0
599 | 30
600 | 0
601 | 9
602 | $UCSORGRIGHT
603 | 10
604 | 0
605 | 20
606 | 0
607 | 30
608 | 0
609 | 9
610 | $UCSORGFRONT
611 | 10
612 | 0
613 | 20
614 | 0
615 | 30
616 | 0
617 | 9
618 | $UCSORGBACK
619 | 10
620 | 0
621 | 20
622 | 0
623 | 30
624 | 0
625 | 9
626 | $PUCSBASE
627 | 2
628 |
629 | 9
630 | $PUCSNAME
631 | 2
632 |
633 | 9
634 | $PUCSORG
635 | 10
636 | 0
637 | 20
638 | 0
639 | 30
640 | 0
641 | 9
642 | $PUCSXDIR
643 | 10
644 | 1
645 | 20
646 | 0
647 | 30
648 | 0
649 | 9
650 | $PUCSYDIR
651 | 10
652 | 0
653 | 20
654 | 1
655 | 30
656 | 0
657 | 9
658 | $PUCSORTHOREF
659 | 2
660 |
661 | 9
662 | $PUCSORTHOVIEW
663 | 70
664 | 0
665 | 9
666 | $PUCSORGTOP
667 | 10
668 | 0
669 | 20
670 | 0
671 | 30
672 | 0
673 | 9
674 | $PUCSORGBOTTOM
675 | 10
676 | 0
677 | 20
678 | 0
679 | 30
680 | 0
681 | 9
682 | $PUCSORGLEFT
683 | 10
684 | 0
685 | 20
686 | 0
687 | 30
688 | 0
689 | 9
690 | $PUCSORGRIGHT
691 | 10
692 | 0
693 | 20
694 | 0
695 | 30
696 | 0
697 | 9
698 | $PUCSORGFRONT
699 | 10
700 | 0
701 | 20
702 | 0
703 | 30
704 | 0
705 | 9
706 | $PUCSORGBACK
707 | 10
708 | 0
709 | 20
710 | 0
711 | 30
712 | 0
713 | 9
714 | $USERI1
715 | 70
716 | 0
717 | 9
718 | $USERI2
719 | 70
720 | 0
721 | 9
722 | $USERI3
723 | 70
724 | 0
725 | 9
726 | $USERI4
727 | 70
728 | 0
729 | 9
730 | $USERI5
731 | 70
732 | 0
733 | 9
734 | $USERR1
735 | 40
736 | 0
737 | 9
738 | $USERR2
739 | 40
740 | 0
741 | 9
742 | $USERR3
743 | 40
744 | 0
745 | 9
746 | $USERR4
747 | 40
748 | 0
749 | 9
750 | $USERR5
751 | 40
752 | 0
753 | 9
754 | $WORLDVIEW
755 | 70
756 | 1
757 | 9
758 | $SHADEDGE
759 | 70
760 | 3
761 | 9
762 | $SHADEDIF
763 | 70
764 | 70
765 | 9
766 | $TILEMODE
767 | 70
768 | 1
769 | 9
770 | $MAXACTVP
771 | 70
772 | 64
773 | 9
774 | $PINSBASE
775 | 10
776 | 0
777 | 20
778 | 0
779 | 30
780 | 0
781 | 9
782 | $PLIMCHECK
783 | 70
784 | 0
785 | 9
786 | $PEXTMIN
787 | 10
788 | 1e+20
789 | 20
790 | 1e+20
791 | 30
792 | 1e+20
793 | 9
794 | $PEXTMAX
795 | 10
796 | -1e+20
797 | 20
798 | -1e+20
799 | 30
800 | -1e+20
801 | 9
802 | $GRIDMODE
803 | 70
804 | 0
805 | 9
806 | $SNAPSTYLE
807 | 70
808 | 0
809 | 9
810 | $PLIMMIN
811 | 10
812 | 0
813 | 20
814 | 0
815 | 9
816 | $PLIMMAX
817 | 10
818 | 420
819 | 20
820 | 297
821 | 9
822 | $UNITMODE
823 | 70
824 | 0
825 | 9
826 | $VISRETAIN
827 | 70
828 | 1
829 | 9
830 | $PLINEGEN
831 | 70
832 | 0
833 | 9
834 | $PSLTSCALE
835 | 70
836 | 1
837 | 9
838 | $TREEDEPTH
839 | 70
840 | 3020
841 | 9
842 | $CMLSTYLE
843 | 2
844 | Standard
845 | 9
846 | $CMLJUST
847 | 70
848 | 0
849 | 9
850 | $CMLSCALE
851 | 40
852 | 20
853 | 9
854 | $PROXYGRAPHICS
855 | 70
856 | 1
857 | 9
858 | $MEASUREMENT
859 | 70
860 | 1
861 | 9
862 | $CELWEIGHT
863 | 370
864 | -1
865 | 9
866 | $ENDCAPS
867 | 280
868 | 0
869 | 9
870 | $JOINSTYLE
871 | 280
872 | 0
873 | 9
874 | $LWDISPLAY
875 | 290
876 | 1
877 | 9
878 | $INSUNITS
879 | 70
880 | 4
881 | 9
882 | $HYPERLINKBASE
883 | 1
884 |
885 | 9
886 | $STYLESHEET
887 | 1
888 |
889 | 9
890 | $XEDIT
891 | 290
892 | 1
893 | 9
894 | $CEPSNTYPE
895 | 380
896 | 0
897 | 9
898 | $PSTYLEMODE
899 | 290
900 | 1
901 | 9
902 | $EXTNAMES
903 | 290
904 | 1
905 | 9
906 | $PSVPSCALE
907 | 40
908 | 0
909 | 9
910 | $OLESTARTUP
911 | 290
912 | 0
913 | 9
914 | $SORTENTS
915 | 280
916 | 127
917 | 9
918 | $INDEXCTL
919 | 280
920 | 0
921 | 9
922 | $HIDETEXT
923 | 280
924 | 1
925 | 9
926 | $XCLIPFRAME
927 | 290
928 | 0
929 | 9
930 | $HALOGAP
931 | 280
932 | 0
933 | 9
934 | $OBSCOLOR
935 | 70
936 | 257
937 | 9
938 | $OBSLTYPE
939 | 280
940 | 0
941 | 9
942 | $INTERSECTIONDISPLAY
943 | 280
944 | 0
945 | 9
946 | $INTERSECTIONCOLOR
947 | 70
948 | 257
949 | 9
950 | $DIMASSOC
951 | 280
952 | 1
953 | 9
954 | $PROJECTNAME
955 | 1
956 |
957 | 9
958 | $CAMERADISPLAY
959 | 290
960 | 0
961 | 9
962 | $LENSLENGTH
963 | 40
964 | 50
965 | 9
966 | $CAMERAHEIGHT
967 | 40
968 | 0
969 | 9
970 | $STEPSPERSEC
971 | 40
972 | 2
973 | 9
974 | $STEPSIZE
975 | 40
976 | 50
977 | 9
978 | $3DDWFPREC
979 | 40
980 | 2
981 | 9
982 | $PSOLWIDTH
983 | 40
984 | 5
985 | 9
986 | $PSOLHEIGHT
987 | 40
988 | 80
989 | 9
990 | $LOFTANG1
991 | 40
992 | 1.570796326794897
993 | 9
994 | $LOFTANG2
995 | 40
996 | 1.570796326794897
997 | 9
998 | $LOFTMAG1
999 | 40
1000 | 0
1001 | 9
1002 | $LOFTMAG2
1003 | 40
1004 | 0
1005 | 9
1006 | $LOFTPARAM
1007 | 70
1008 | 7
1009 | 9
1010 | $LOFTNORMALS
1011 | 280
1012 | 1
1013 | 9
1014 | $LATITUDE
1015 | 40
1016 | 1
1017 | 9
1018 | $LONGITUDE
1019 | 40
1020 | 1
1021 | 9
1022 | $NORTHDIRECTION
1023 | 40
1024 | 0
1025 | 9
1026 | $TIMEZONE
1027 | 70
1028 | -8000
1029 | 9
1030 | $LIGHTGLYPHDISPLAY
1031 | 280
1032 | 1
1033 | 9
1034 | $TILEMODELIGHTSYNCH
1035 | 280
1036 | 1
1037 | 9
1038 | $SOLIDHIST
1039 | 280
1040 | 1
1041 | 9
1042 | $SHOWHIST
1043 | 280
1044 | 1
1045 | 9
1046 | $DWFFRAME
1047 | 280
1048 | 2
1049 | 9
1050 | $DGNFRAME
1051 | 280
1052 | 0
1053 | 9
1054 | $REALWORLDSCALE
1055 | 290
1056 | 1
1057 | 9
1058 | $INTERFERECOLOR
1059 | 62
1060 | 1
1061 | 9
1062 | $CSHADOW
1063 | 280
1064 | 0
1065 | 9
1066 | $SHADOWPLANELOCATION
1067 | 40
1068 | 0
1069 | 0
1070 | ENDSEC
1071 | 0
1072 | SECTION
1073 | 2
1074 | CLASSES
1075 | 0
1076 | CLASS
1077 | 1
1078 | RASTERVARIABLES
1079 | 2
1080 | AcDbRasterVariables
1081 | 3
1082 | ISM
1083 | 90
1084 | 32768
1085 | 280
1086 | 0
1087 | 281
1088 | 0
1089 | 0
1090 | CLASS
1091 | 1
1092 | IMAGEDEF
1093 | 2
1094 | AcDbRasterImageDef
1095 | 3
1096 | ISM
1097 | 90
1098 | 32768
1099 | 280
1100 | 0
1101 | 281
1102 | 0
1103 | 0
1104 | CLASS
1105 | 1
1106 | IMAGE
1107 | 2
1108 | AcDbRasterImage
1109 | 3
1110 | ISM
1111 | 90
1112 | 32895
1113 | 280
1114 | 0
1115 | 281
1116 | 1
1117 | 0
1118 | CLASS
1119 | 1
1120 | IMAGEDEF_REACTOR
1121 | 2
1122 | AcDbRasterImageDefReactor
1123 | 3
1124 | ISM
1125 | 90
1126 | 32769
1127 | 280
1128 | 0
1129 | 281
1130 | 0
1131 | 0
1132 | ENDSEC
1133 | 0
1134 | SECTION
1135 | 2
1136 | TABLES
1137 | 0
1138 | TABLE
1139 | 2
1140 | VPORT
1141 | 5
1142 | 8
1143 | 330
1144 | 0
1145 | 100
1146 | AcDbSymbolTable
1147 | 70
1148 | 1
1149 | 0
1150 | VPORT
1151 | 5
1152 | 31
1153 | 330
1154 | 2
1155 | 100
1156 | AcDbSymbolTableRecord
1157 | 100
1158 | AcDbViewportTableRecord
1159 | 2
1160 | *ACTIVE
1161 | 70
1162 | 0
1163 | 10
1164 | 0
1165 | 20
1166 | 0
1167 | 11
1168 | 1
1169 | 21
1170 | 1
1171 | 12
1172 | 44.22616565550683
1173 | 22
1174 | 23.67269572240605
1175 | 13
1176 | 0
1177 | 23
1178 | 0
1179 | 14
1180 | 10
1181 | 24
1182 | 10
1183 | 15
1184 | 10
1185 | 25
1186 | 10
1187 | 16
1188 | 0
1189 | 26
1190 | 0
1191 | 36
1192 | 1
1193 | 17
1194 | 0
1195 | 27
1196 | 0
1197 | 37
1198 | 0
1199 | 40
1200 | 89.12073683729336
1201 | 41
1202 | 1.97625
1203 | 42
1204 | 50
1205 | 43
1206 | 0
1207 | 44
1208 | 0
1209 | 50
1210 | 0
1211 | 51
1212 | 0
1213 | 71
1214 | 0
1215 | 72
1216 | 100
1217 | 73
1218 | 1
1219 | 74
1220 | 3
1221 | 75
1222 | 0
1223 | 76
1224 | 0
1225 | 77
1226 | 0
1227 | 78
1228 | 0
1229 | 281
1230 | 0
1231 | 65
1232 | 1
1233 | 110
1234 | 0
1235 | 120
1236 | 0
1237 | 130
1238 | 0
1239 | 111
1240 | 1
1241 | 121
1242 | 0
1243 | 131
1244 | 0
1245 | 112
1246 | 0
1247 | 122
1248 | 1
1249 | 132
1250 | 0
1251 | 79
1252 | 0
1253 | 146
1254 | 0
1255 | 348
1256 | 10020
1257 | 60
1258 | 7
1259 | 61
1260 | 5
1261 | 292
1262 | 1
1263 | 282
1264 | 1
1265 | 141
1266 | 0
1267 | 142
1268 | 0
1269 | 63
1270 | 250
1271 | 421
1272 | 3358443
1273 | 0
1274 | ENDTAB
1275 | 0
1276 | TABLE
1277 | 2
1278 | LTYPE
1279 | 5
1280 | 506
1281 | 330
1282 | 0
1283 | 100
1284 | AcDbSymbolTable
1285 | 70
1286 | 4
1287 | 0
1288 | LTYPE
1289 | 5
1290 | 507
1291 | 330
1292 | 506
1293 | 100
1294 | AcDbSymbolTableRecord
1295 | 100
1296 | AcDbLinetypeTableRecord
1297 | 2
1298 | ByBlock
1299 | 70
1300 | 0
1301 | 3
1302 |
1303 | 72
1304 | 65
1305 | 73
1306 | 0
1307 | 40
1308 | 0
1309 | 0
1310 | LTYPE
1311 | 5
1312 | 508
1313 | 330
1314 | 506
1315 | 100
1316 | AcDbSymbolTableRecord
1317 | 100
1318 | AcDbLinetypeTableRecord
1319 | 2
1320 | ByLayer
1321 | 70
1322 | 0
1323 | 3
1324 |
1325 | 72
1326 | 65
1327 | 73
1328 | 0
1329 | 40
1330 | 0
1331 | 0
1332 | LTYPE
1333 | 5
1334 | 509
1335 | 330
1336 | 506
1337 | 100
1338 | AcDbSymbolTableRecord
1339 | 100
1340 | AcDbLinetypeTableRecord
1341 | 2
1342 | CONTINUOUS
1343 | 70
1344 | 64
1345 | 3
1346 | Solid line
1347 | 72
1348 | 65
1349 | 73
1350 | 0
1351 | 40
1352 | 0.0
1353 | 0
1354 | LTYPE
1355 | 5
1356 | 50a
1357 | 330
1358 | 506
1359 | 100
1360 | AcDbSymbolTableRecord
1361 | 100
1362 | AcDbLinetypeTableRecord
1363 | 2
1364 | DASHDOT
1365 | 70
1366 | 64
1367 | 3
1368 | Dash dot __ . __ . __ . __ . __ . __ . __ . __
1369 | 72
1370 | 65
1371 | 73
1372 | 4
1373 | 40
1374 | 25.4
1375 | 49
1376 | 12.7
1377 | 74
1378 | 0
1379 | 49
1380 | -6.35
1381 | 74
1382 | 0
1383 | 49
1384 | 0
1385 | 74
1386 | 0
1387 | 49
1388 | -6.35
1389 | 74
1390 | 0
1391 | 0
1392 | ENDTAB
1393 | 0
1394 | TABLE
1395 | 2
1396 | LAYER
1397 | 5
1398 | 50b
1399 | 330
1400 | 0
1401 | 100
1402 | AcDbSymbolTable
1403 | 70
1404 | 1
1405 | 0
1406 | LAYER
1407 | 5
1408 | 50c
1409 | 330
1410 | 50b
1411 | 100
1412 | AcDbSymbolTableRecord
1413 | 100
1414 | AcDbLayerTableRecord
1415 | 2
1416 | 0
1417 | 70
1418 | 64
1419 | 62
1420 | 8
1421 | 6
1422 | CONTINUOUS
1423 | 390
1424 | F
1425 | 0
1426 | LAYER
1427 | 5
1428 | 50d
1429 | 330
1430 | 50b
1431 | 100
1432 | AcDbSymbolTableRecord
1433 | 100
1434 | AcDbLayerTableRecord
1435 | 2
1436 | cyan
1437 | 70
1438 | 64
1439 | 62
1440 | 4
1441 | 6
1442 | CONTINUOUS
1443 | 390
1444 | F
1445 | 0
1446 | LAYER
1447 | 5
1448 | 50e
1449 | 330
1450 | 50b
1451 | 100
1452 | AcDbSymbolTableRecord
1453 | 100
1454 | AcDbLayerTableRecord
1455 | 2
1456 | blue
1457 | 70
1458 | 64
1459 | 62
1460 | 5
1461 | 6
1462 | DASHDOT
1463 | 390
1464 | F
1465 | 0
1466 | LAYER
1467 | 5
1468 | 50f
1469 | 330
1470 | 50b
1471 | 100
1472 | AcDbSymbolTableRecord
1473 | 100
1474 | AcDbLayerTableRecord
1475 | 2
1476 | custom
1477 | 70
1478 | 64
1479 | 62
1480 | 150
1481 | 6
1482 | CONTINUOUS
1483 | 390
1484 | F
1485 | 0
1486 | LAYER
1487 | 5
1488 | 510
1489 | 330
1490 | 50b
1491 | 100
1492 | AcDbSymbolTableRecord
1493 | 100
1494 | AcDbLayerTableRecord
1495 | 2
1496 | red
1497 | 70
1498 | 64
1499 | 62
1500 | 1
1501 | 6
1502 | CONTINUOUS
1503 | 390
1504 | F
1505 | 0
1506 | LAYER
1507 | 5
1508 | 511
1509 | 330
1510 | 50b
1511 | 100
1512 | AcDbSymbolTableRecord
1513 | 100
1514 | AcDbLayerTableRecord
1515 | 2
1516 | magenta
1517 | 70
1518 | 64
1519 | 62
1520 | 6
1521 | 6
1522 | CONTINUOUS
1523 | 390
1524 | F
1525 | 0
1526 | LAYER
1527 | 5
1528 | 512
1529 | 330
1530 | 50b
1531 | 100
1532 | AcDbSymbolTableRecord
1533 | 100
1534 | AcDbLayerTableRecord
1535 | 2
1536 | black
1537 | 70
1538 | 64
1539 | 62
1540 | 8
1541 | 6
1542 | CONTINUOUS
1543 | 390
1544 | F
1545 | 0
1546 | ENDTAB
1547 | 0
1548 | TABLE
1549 | 2
1550 | STYLE
1551 | 5
1552 | 3
1553 | 330
1554 | 0
1555 | 100
1556 | AcDbSymbolTable
1557 | 70
1558 | 3
1559 | 0
1560 | STYLE
1561 | 5
1562 | 51
1563 | 330
1564 | 2
1565 | 100
1566 | AcDbSymbolTableRecord
1567 | 100
1568 | AcDbTextStyleTableRecord
1569 | 2
1570 | Standard
1571 | 70
1572 | 0
1573 | 40
1574 | 0
1575 | 41
1576 | 1
1577 | 50
1578 | 0
1579 | 71
1580 | 0
1581 | 42
1582 | 1
1583 | 3
1584 | txt
1585 | 4
1586 |
1587 | 0
1588 | ENDTAB
1589 | 0
1590 | TABLE
1591 | 2
1592 | VIEW
1593 | 5
1594 | 6
1595 | 330
1596 | 0
1597 | 100
1598 | AcDbSymbolTable
1599 | 70
1600 | 0
1601 | 0
1602 | ENDTAB
1603 | 0
1604 | TABLE
1605 | 2
1606 | UCS
1607 | 5
1608 | 7
1609 | 330
1610 | 0
1611 | 100
1612 | AcDbSymbolTable
1613 | 70
1614 | 0
1615 | 0
1616 | ENDTAB
1617 | 0
1618 | TABLE
1619 | 2
1620 | APPID
1621 | 5
1622 | 9
1623 | 330
1624 | 0
1625 | 100
1626 | AcDbSymbolTable
1627 | 70
1628 | 1
1629 | 0
1630 | APPID
1631 | 5
1632 | 12
1633 | 330
1634 | 9
1635 | 100
1636 | AcDbSymbolTableRecord
1637 | 100
1638 | AcDbRegAppTableRecord
1639 | 2
1640 | ACAD
1641 | 70
1642 | 0
1643 | 0
1644 | APPID
1645 | 5
1646 | 52
1647 | 330
1648 | 9
1649 | 100
1650 | AcDbSymbolTableRecord
1651 | 100
1652 | AcDbRegAppTableRecord
1653 | 2
1654 | LibreCad
1655 | 70
1656 | 0
1657 | 0
1658 | ENDTAB
1659 | 0
1660 | TABLE
1661 | 2
1662 | DIMSTYLE
1663 | 5
1664 | A
1665 | 330
1666 | 0
1667 | 100
1668 | AcDbSymbolTable
1669 | 70
1670 | 1
1671 | 100
1672 | AcDbDimStyleTable
1673 | 71
1674 | 1
1675 | 0
1676 | DIMSTYLE
1677 | 105
1678 | 53
1679 | 330
1680 | A
1681 | 100
1682 | AcDbSymbolTableRecord
1683 | 100
1684 | AcDbDimStyleTableRecord
1685 | 2
1686 | Standard
1687 | 70
1688 | 0
1689 | 40
1690 | 1
1691 | 41
1692 | 3.302
1693 | 42
1694 | 1
1695 | 43
1696 | 0.38
1697 | 44
1698 | 1
1699 | 45
1700 | 0
1701 | 46
1702 | 0
1703 | 47
1704 | 0
1705 | 48
1706 | 0
1707 | 49
1708 | 1
1709 | 140
1710 | 3.5
1711 | 141
1712 | 0.09
1713 | 142
1714 | 0
1715 | 143
1716 | 25.4
1717 | 144
1718 | 1
1719 | 145
1720 | 0
1721 | 146
1722 | 1
1723 | 147
1724 | 1.524
1725 | 148
1726 | 0
1727 | 71
1728 | 0
1729 | 72
1730 | 0
1731 | 73
1732 | 1
1733 | 74
1734 | 1
1735 | 75
1736 | 0
1737 | 76
1738 | 0
1739 | 77
1740 | 0
1741 | 78
1742 | 0
1743 | 79
1744 | 0
1745 | 170
1746 | 0
1747 | 171
1748 | 2
1749 | 172
1750 | 0
1751 | 173
1752 | 0
1753 | 174
1754 | 0
1755 | 175
1756 | 0
1757 | 176
1758 | 0
1759 | 177
1760 | 0
1761 | 178
1762 | 0
1763 | 179
1764 | 0
1765 | 271
1766 | 2
1767 | 272
1768 | 4
1769 | 273
1770 | 2
1771 | 274
1772 | 2
1773 | 275
1774 | 0
1775 | 276
1776 | 0
1777 | 277
1778 | 2
1779 | 278
1780 | 44
1781 | 279
1782 | 0
1783 | 280
1784 | 0
1785 | 281
1786 | 0
1787 | 282
1788 | 0
1789 | 283
1790 | 1
1791 | 284
1792 | 0
1793 | 285
1794 | 0
1795 | 286
1796 | 0
1797 | 288
1798 | 0
1799 | 289
1800 | 3
1801 | 340
1802 | Standard
1803 | 341
1804 |
1805 | 371
1806 | -2
1807 | 372
1808 | -2
1809 | 0
1810 | ENDTAB
1811 | 0
1812 | TABLE
1813 | 2
1814 | BLOCK_RECORD
1815 | 5
1816 | 1
1817 | 330
1818 | 0
1819 | 100
1820 | AcDbSymbolTable
1821 | 70
1822 | 2
1823 | 0
1824 | BLOCK_RECORD
1825 | 5
1826 | 1F
1827 | 330
1828 | 1
1829 | 100
1830 | AcDbSymbolTableRecord
1831 | 100
1832 | AcDbBlockTableRecord
1833 | 2
1834 | *Model_Space
1835 | 70
1836 | 0
1837 | 280
1838 | 1
1839 | 281
1840 | 0
1841 | 0
1842 | BLOCK_RECORD
1843 | 5
1844 | 1E
1845 | 330
1846 | 1
1847 | 100
1848 | AcDbSymbolTableRecord
1849 | 100
1850 | AcDbBlockTableRecord
1851 | 2
1852 | *Paper_Space
1853 | 70
1854 | 0
1855 | 280
1856 | 1
1857 | 281
1858 | 0
1859 | 0
1860 | ENDTAB
1861 | 0
1862 | ENDSEC
1863 | 0
1864 | SECTION
1865 | 2
1866 | BLOCKS
1867 | 0
1868 | BLOCK
1869 | 5
1870 | 20
1871 | 330
1872 | 1F
1873 | 100
1874 | AcDbEntity
1875 | 8
1876 | 0
1877 | 100
1878 | AcDbBlockBegin
1879 | 2
1880 | *Model_Space
1881 | 70
1882 | 0
1883 | 10
1884 | 0.0
1885 | 20
1886 | 0.0
1887 | 30
1888 | 0.0
1889 | 3
1890 | *Model_Space
1891 | 1
1892 |
1893 | 0
1894 | ENDBLK
1895 | 5
1896 | 21
1897 | 330
1898 | 1F
1899 | 100
1900 | AcDbEntity
1901 | 8
1902 | 0
1903 | 100
1904 | AcDbBlockEnd
1905 | 0
1906 | BLOCK
1907 | 5
1908 | 1C
1909 | 330
1910 | 1B
1911 | 100
1912 | AcDbEntity
1913 | 8
1914 | 0
1915 | 100
1916 | AcDbBlockBegin
1917 | 2
1918 | *Paper_Space
1919 | 70
1920 | 0
1921 | 10
1922 | 0.0
1923 | 20
1924 | 0.0
1925 | 30
1926 | 0.0
1927 | 3
1928 | *Paper_Space
1929 | 1
1930 |
1931 | 0
1932 | ENDBLK
1933 | 5
1934 | 1D
1935 | 330
1936 | 1F
1937 | 100
1938 | AcDbEntity
1939 | 8
1940 | 0
1941 | 100
1942 | AcDbBlockEnd
1943 | 0
1944 | ENDSEC
1945 | 0
1946 | SECTION
1947 | 2
1948 | ENTITIES
1949 | 0
1950 | TEXT
1951 | 5
1952 | 515
1953 | 100
1954 | AcDbEntity
1955 | 8
1956 | 0
1957 | 100
1958 | AcDbText
1959 | 39
1960 | 0
1961 | 10
1962 | 26
1963 | 20
1964 | 46
1965 | 30
1966 | 0
1967 | 40
1968 | 8
1969 | 1
1970 | DXF testing
1971 | 50
1972 | 0
1973 | 41
1974 | 1
1975 | 51
1976 | 0
1977 | 7
1978 | Consolas Regular
1979 | 71
1980 | 0
1981 | 72
1982 | 0
1983 | 11
1984 | 26
1985 | 21
1986 | 46
1987 | 31
1988 | 0
1989 | 100
1990 | AcDbText
1991 | 73
1992 | 1
1993 | 0
1994 | LINE
1995 | 5
1996 | 516
1997 | 100
1998 | AcDbEntity
1999 | 8
2000 | cyan
2001 | 100
2002 | AcDbLine
2003 | 10
2004 | 25
2005 | 20
2006 | 0
2007 | 30
2008 | 0
2009 | 11
2010 | 100
2011 | 21
2012 | 0
2013 | 31
2014 | 0
2015 | 0
2016 | LINE
2017 | 5
2018 | 517
2019 | 100
2020 | AcDbEntity
2021 | 8
2022 | cyan
2023 | 100
2024 | AcDbLine
2025 | 10
2026 | 100
2027 | 20
2028 | 0
2029 | 30
2030 | 0
2031 | 11
2032 | 100
2033 | 21
2034 | 75
2035 | 31
2036 | 0
2037 | 0
2038 | LINE
2039 | 5
2040 | 518
2041 | 100
2042 | AcDbEntity
2043 | 8
2044 | cyan
2045 | 100
2046 | AcDbLine
2047 | 10
2048 | 75
2049 | 20
2050 | 100
2051 | 30
2052 | 0
2053 | 11
2054 | 0
2055 | 21
2056 | 100
2057 | 31
2058 | 0
2059 | 0
2060 | LINE
2061 | 5
2062 | 519
2063 | 100
2064 | AcDbEntity
2065 | 8
2066 | cyan
2067 | 100
2068 | AcDbLine
2069 | 10
2070 | 0
2071 | 20
2072 | 100
2073 | 30
2074 | 0
2075 | 11
2076 | 0
2077 | 21
2078 | 25
2079 | 31
2080 | 0
2081 | 0
2082 | CIRCLE
2083 | 5
2084 | 51a
2085 | 100
2086 | AcDbEntity
2087 | 8
2088 | blue
2089 | 100
2090 | AcDbCircle
2091 | 10
2092 | 0
2093 | 20
2094 | 0
2095 | 30
2096 | 0
2097 | 40
2098 | 25
2099 | 0
2100 | CIRCLE
2101 | 5
2102 | 51b
2103 | 100
2104 | AcDbEntity
2105 | 8
2106 | custom
2107 | 100
2108 | AcDbCircle
2109 | 10
2110 | 100
2111 | 20
2112 | 100
2113 | 30
2114 | 0
2115 | 40
2116 | 25
2117 | 0
2118 | ARC
2119 | 5
2120 | 51c
2121 | 100
2122 | AcDbEntity
2123 | 8
2124 | red
2125 | 100
2126 | AcDbCircle
2127 | 39
2128 | 0
2129 | 10
2130 | 0
2131 | 20
2132 | 100
2133 | 30
2134 | 0
2135 | 40
2136 | 25
2137 | 100
2138 | AcDbArc
2139 | 50
2140 | 0
2141 | 51
2142 | 270
2143 | 0
2144 | ARC
2145 | 5
2146 | 51d
2147 | 100
2148 | AcDbEntity
2149 | 8
2150 | magenta
2151 | 100
2152 | AcDbCircle
2153 | 39
2154 | 0
2155 | 10
2156 | 100
2157 | 20
2158 | 0
2159 | 30
2160 | 0
2161 | 40
2162 | 25
2163 | 100
2164 | AcDbArc
2165 | 50
2166 | 180
2167 | 51
2168 | 90
2169 | 0
2170 | POINT
2171 | 5
2172 | 51e
2173 | 100
2174 | AcDbEntity
2175 | 8
2176 | black
2177 | 100
2178 | AcDbPoint
2179 | 10
2180 | 0
2181 | 20
2182 | 0
2183 | 30
2184 | 0
2185 | 0
2186 | POINT
2187 | 5
2188 | 51f
2189 | 100
2190 | AcDbEntity
2191 | 8
2192 | black
2193 | 100
2194 | AcDbPoint
2195 | 10
2196 | 0
2197 | 20
2198 | 100
2199 | 30
2200 | 0
2201 | 0
2202 | POINT
2203 | 5
2204 | 520
2205 | 100
2206 | AcDbEntity
2207 | 8
2208 | black
2209 | 100
2210 | AcDbPoint
2211 | 10
2212 | 100
2213 | 20
2214 | 100
2215 | 30
2216 | 0
2217 | 0
2218 | POINT
2219 | 5
2220 | 521
2221 | 100
2222 | AcDbEntity
2223 | 8
2224 | black
2225 | 100
2226 | AcDbPoint
2227 | 10
2228 | 100
2229 | 20
2230 | 0
2231 | 30
2232 | 0
2233 | 0
2234 | IMAGE
2235 | 5
2236 | 500
2237 | 330
2238 | 1F
2239 | 100
2240 | AcDbEntity
2241 | 8
2242 | black
2243 | 92
2244 | 140
2245 | 310
2246 | 8C000000010000008400000006000000050000002E34B09D88A726407EF7FEBB3CE326400000000000000000EB14D992C3BA40407EF7FEBB3CE326400000000000000000EB14D992C3BA404011E9EC0694E73F4000000000000000002E34B09D88A7264011E9EC0694E73F4000000000000000002E34B09D88A726407EF7FE
2247 | 310
2248 | BB3CE326400000000000000000
2249 | 100
2250 | AcDbRasterImage
2251 | 90
2252 | 0
2253 | 10
2254 | 0
2255 | 20
2256 | 0
2257 | 30
2258 | 0
2259 | 11
2260 | 0.34013605442177
2261 | 21
2262 | 0
2263 | 31
2264 | 0
2265 | 12
2266 | 0
2267 | 22
2268 | 0.34013605442177
2269 | 32
2270 | 0
2271 | 13
2272 | 147
2273 | 23
2274 | 110
2275 | 340
2276 | 501
2277 | 70
2278 | 7
2279 | 280
2280 | 0
2281 | 281
2282 | 50
2283 | 282
2284 | 50
2285 | 283
2286 | 0
2287 | 360
2288 | 502
2289 | 71
2290 | 1
2291 | 91
2292 | 2
2293 | 14
2294 | -0.5
2295 | 24
2296 | -0.5
2297 | 14
2298 | 146.5
2299 | 24
2300 | 109.5
2301 | 0
2302 | ENDSEC
2303 | 0
2304 | SECTION
2305 | 2
2306 | OBJECTS
2307 | 0
2308 | DICTIONARY
2309 | 5
2310 | C
2311 | 330
2312 | 0
2313 | 100
2314 | AcDbDictionary
2315 | 281
2316 | 1
2317 | 3
2318 | ACAD_GROUP
2319 | 350
2320 | D
2321 | 3
2322 | ACAD_IMAGE_DICT
2323 | 350
2324 | 504
2325 | 3
2326 | ACAD_IMAGE_VARS
2327 | 350
2328 | 505
2329 | 0
2330 | IMAGEDEF_REACTOR
2331 | 5
2332 | 502
2333 | 330
2334 | 500
2335 | 100
2336 | AcDbRasterImageDefReactor
2337 | 90
2338 | 2
2339 | 330
2340 | 500
2341 | 0
2342 | DICTIONARY
2343 | 5
2344 | 504
2345 | 102
2346 | {ACAD_REACTORS
2347 | 330
2348 | 503
2349 | 102
2350 | }
2351 | 330
2352 | 503
2353 | 100
2354 | AcDbDictionary
2355 | 0
2356 | DICTIONARY
2357 | 5
2358 | 504
2359 | 102
2360 | {ACAD_REACTORS
2361 | 330
2362 | 503
2363 | 102
2364 | }
2365 | 330
2366 | 503
2367 | 100
2368 | AcDbDictionary
2369 | 3
2370 | PELUDITO.PNG
2371 | 350
2372 | 503
2373 | 0
2374 | RASTERVARIABLES
2375 | 5
2376 | 505
2377 | 102
2378 | {ACAD_REACTORS
2379 | 330
2380 | 503
2381 | 102
2382 | }
2383 | 330
2384 | 503
2385 | 100
2386 | AcDbRasterVariables
2387 | 90
2388 | 0
2389 | 70
2390 | 1
2391 | 71
2392 | 1
2393 | 72
2394 | 0
2395 | 0
2396 | DICTIONARY
2397 | 5
2398 | D
2399 | 330
2400 | C
2401 | 100
2402 | AcDbDictionary
2403 | 281
2404 | 1
2405 | 0
2406 | IMAGEDEF
2407 | 5
2408 | 501
2409 | 102
2410 | {ACAD_REACTORS
2411 | 330
2412 | 504
2413 | 330
2414 | 502
2415 | 102
2416 | }
2417 | 330
2418 | 504
2419 | 100
2420 | AcDbRasterImageDef
2421 | 90
2422 | 0
2423 | 1
2424 | ./peludito.png
2425 | 10
2426 | 147
2427 | 20
2428 | 110
2429 | 11
2430 | 0.34013605442177
2431 | 21
2432 | 0.34013605442177
2433 | 280
2434 | 1
2435 | 281
2436 | 3
2437 | 0
2438 | ENDSEC
2439 | 0
2440 | EOF
2441 |
--------------------------------------------------------------------------------
/Creator.php:
--------------------------------------------------------------------------------
1 | http://speleoalex.altervista.org
5 | * @copyright Copyright (c) 2013
6 | * @license http://opensource.org/licenses/gpl-license.php GNU General Public License
7 | *
8 | * Upgrade script to "Creator"
9 | * @author Konstantin Kutsevalov
10 | * @contributor Mario Fèvre https://github.com/mariofevre
11 | * @contributor azercon https://github.com/azercon
12 | * @contributor Michiel Vancoillie https://github.com/dive-michiel
13 | * @contributor Mangirdas Skripka https://github.com/maskas
14 | * @since 2015/08
15 | *
16 | * @see About DXF structure http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-235B22E0-A567-4CF6-92D3-38A2306D73F3.htm
17 | * @see ENTITIES Section http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-7D07C886-FD1D-4A0C-A7AB-B4D21F18E484.htm
18 | * @see Common Symbol Table Group Codes http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-8427DD38-7B1F-4B7F-BF66-21ADD1F41295.htm
19 | *
20 | */
21 |
22 | namespace adamasantares\dxf;
23 |
24 | // ini_set('display_errors',true);
25 |
26 | /**
27 | * Class Creator
28 | * @package adamasantares\dxf
29 | */
30 | class Creator {
31 |
32 | // units codes
33 | const UNITLESS = 0;
34 | const INCHES = 1;
35 | const FEET = 2;
36 | const MILES = 3;
37 | const MILLIMETERS = 4;
38 | const CENTIMETERS = 5;
39 | const METERS = 6;
40 | const KILOMETERS = 7;
41 | const MICROINCHES = 8;
42 | const MILS = 9;
43 | const YARDS = 10;
44 | const ANGSTROMS = 11;
45 | const NANOMETERS = 12;
46 | const MICRONS = 13;
47 | const DECIMETERS = 14;
48 | const DECAMETERS = 15;
49 | const HECTOMETERS = 16;
50 | const GIGAMETERS = 17;
51 | const ASTRONOMICAL_UNITS = 18;
52 | const LIGHT_YEARS = 19;
53 | const PARSECS = 20;
54 |
55 | /**
56 | * @var null Last error description
57 | */
58 | private $error = '';
59 |
60 | /**
61 | * @var array Layers collection
62 | */
63 | private $layers = [];
64 |
65 | private $lTypes = [];
66 |
67 | private $textStyles = [];
68 |
69 | private $textStyleName = 'STANDARD';
70 |
71 | /**
72 | * Current layer name
73 | * @var int
74 | */
75 | private $layerName = '0';
76 |
77 | /**
78 | * @var array Shapes collection
79 | */
80 | private $shapes = [];
81 |
82 | /**
83 | * @var array Center offset
84 | */
85 | private $offset = [0, 0, 0];
86 |
87 | /**
88 | * @var int Units
89 | */
90 | private $units = 0;
91 |
92 |
93 | /**
94 | * @var string
95 | * A handle is a hexadecimal number that is a unique tag for each entity in a
96 | * drawing or DXF file. There must be no duplicate handles. The variable
97 | * HANDSEED must be larger than the largest handle in the drawing or DXF file.
98 | * @see https://forums.autodesk.com/t5/autocad-2000-2000i-2002-archive/what-is-the-handle-in-a-dxf-entity/td-p/118936
99 | */
100 | private $handleNumber = 0x4ff;
101 |
102 |
103 | /**
104 | * @param int $units (MILLIMETERS as default value)
105 | * Create new DXF document
106 | */
107 | function __construct($units = self::MILLIMETERS)
108 | {
109 | $this->units = $units;
110 | // add default layout
111 | $this->addLayer($this->layerName);
112 | }
113 |
114 |
115 | /**
116 | * Add new layer to document
117 | * @param string $name
118 | * @param int $color Color code (@see adamasantares\dxf\Color class)
119 | * @param string $lineType Line type (@see adamasantares\dxf\LineType class)
120 | * @return Creator Instance
121 | */
122 | public function addLayer($name, $color = Color::GRAY, $lineType = LineType::SOLID)
123 | {
124 | $this->layers[$name] = [
125 | 'color' => $color,
126 | 'lineType' => $lineType
127 | ];
128 | $this->lTypes[$lineType] = $lineType;
129 | return $this;
130 | }
131 |
132 |
133 | /**
134 | * Sets current layer for drawing. If layer not exists than it will be created.
135 | * @param $name
136 | * @param int $color (optional) Color code. Only for new layer (@see adamasantares\dxf\Color class)
137 | * @param string $lineType (optional) Only for new layer
138 | * @return Creator Instance
139 | */
140 | public function setLayer($name, $color = Color::GRAY, $lineType = LineType::SOLID)
141 | {
142 | if (!isset($this->layers[$name])) {
143 | $this->addLayer($name, $color, $lineType);
144 | }
145 | $this->layerName = $name;
146 | return $this;
147 | }
148 |
149 |
150 | /**
151 | * Returns current layer name
152 | */
153 | public function getLayer()
154 | {
155 | $this->layerName;
156 | }
157 |
158 |
159 | /**
160 | * Change color for current layer
161 | * @param int $color See adamasantares\dxf\Color constants
162 | * @return Creator Instance
163 | */
164 | public function setColor($color)
165 | {
166 | $this->layers[$this->layerName]['color'] = $color;
167 | return $this;
168 | }
169 |
170 |
171 | /**
172 | * Change line type for current layer
173 | * @param int $lineType See adamasantares\dxf\LineType constants
174 | * @return Creator Instance
175 | */
176 | public function setLineType($lineType)
177 | {
178 | $this->layers[$this->layerName]['lineType'] = $lineType;
179 | $this->lTypes[$lineType] = $lineType;
180 | return $this;
181 | }
182 |
183 | /**
184 | * Sets current style for drawing. If style does not exist then it will be created.
185 | * @param string $params [name, font]
186 | * @return Creator Instance
187 | */
188 | public function setTextStyle($name, $font, $stdFlags = 0, $fixedHeight = 0, $widthFactor = 0, $obliqueAngle = 0, $textGenerationFlags = 0, $lastHeightUsed = 0, $bigFont = null)
189 | {
190 | if ( !isset($this->textStyles[$name]) ) {
191 | $this->textStyles[$name] = [
192 | 'name' => $name,
193 | 'font' => $font,
194 | 'stdFlags' => $stdFlags,
195 | 'fixedHeight' => $fixedHeight,
196 | 'widthFactor' => $widthFactor,
197 | 'obliqueAngle' => $obliqueAngle,
198 | 'textGenerationFlags' => $textGenerationFlags,
199 | 'lastHeightUsed' => $lastHeightUsed,
200 | 'bigFont' => $bigFont,
201 | ];
202 | }
203 | $this->textStyleName = $name;
204 | return $this;
205 | }
206 |
207 |
208 | /**
209 | * Returns current style name
210 | */
211 | public function getTextStyle()
212 | {
213 | return $this->textStyleName;
214 | }
215 |
216 | private function getEntityHandle()
217 | {
218 | $this->handleNumber++;
219 | return dechex($this->handleNumber);
220 | }
221 |
222 |
223 | /**
224 | * Add point to current layout
225 | * @param float $x
226 | * @param float $y
227 | * @param float $z
228 | * @return Creator Instance
229 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-9C6AD32D-769D-4213-85A4-CA9CCB5C5317.htm
230 | */
231 | public function addPoint($x, $y, $z)
232 | {
233 | $x += $this->offset[0];
234 | $y += $this->offset[1];
235 | $z += $this->offset[2];
236 | $this->shapes[] = "POINT\n" .
237 | "5\n" . // Entity Handle
238 | "{number}\n" .
239 | "100\n" . // Subclass marker (AcDbEntity)
240 | "AcDbEntity\n" .
241 | "8\n" . // Layer name
242 | "{$this->layerName}\n" .
243 | "100\n" . // Subclass marker (AcDbPoint)
244 | "AcDbPoint\n" .
245 | "10\n" . // X value
246 | "{$x}\n" .
247 | "20\n" . // Y value
248 | "{$y}\n" .
249 | "30\n" . // Z value
250 | "{$z}\n" .
251 | "0\n";
252 | return $this;
253 | }
254 |
255 |
256 | /**
257 | * Add line to current layout
258 | * @param float $x
259 | * @param float $y
260 | * @param float $z
261 | * @param float $x2
262 | * @param float $y2
263 | * @param float $z2
264 | * @return Creator Instance
265 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-FCEF5726-53AE-4C43-B4EA-C84EB8686A66.htm
266 | */
267 | public function addLine($x, $y, $z, $x2, $y2, $z2)
268 | {
269 | $x += $this->offset[0];
270 | $y += $this->offset[1];
271 | $z += $this->offset[2];
272 | $x2 += $this->offset[0];
273 | $y2 += $this->offset[1];
274 | $z2 += $this->offset[2];
275 | $this->shapes[] = "LINE\n" .
276 | "5\n" . // Entity Handle
277 | "{number}\n" .
278 | "100\n" . // Subclass marker (AcDbEntity)
279 | "AcDbEntity\n" .
280 | "8\n" . // Layer name
281 | "{$this->layerName}\n" .
282 | "100\n" .
283 | "AcDbLine\n" . // Subclass marker (AcDbLine)
284 | "10\n" . // Start point X
285 | "{$x}\n" .
286 | "20\n" . // Start point Y
287 | "{$y}\n" .
288 | "30\n" . // Start point Z
289 | "{$z}\n" .
290 | "11\n" . // End point X
291 | "{$x2}\n" .
292 | "21\n" . // End point Y
293 | "{$y2}\n" .
294 | "31\n" . // End point Z
295 | "{$z2}\n" .
296 | "0\n";
297 | return $this;
298 | }
299 |
300 | /**
301 | * Add a solid to the current layout
302 | * @param float $x
303 | * @param float $y
304 | * @param float $z
305 | * @param float $w
306 | * @param float $h
307 | * @return Creator $this
308 | * @see http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-E0C5F04E-D0C5-48F5-AC09-32733E8848F2
309 | */
310 | public function addSolid($x, $y, $z=0.0, $w=0.0, $h=0.0)
311 | {
312 | $y1 = $y+$h;
313 | $x1 = $x+$w;
314 | $this->shapes[] = "SOLID\n" .
315 | "5\n" . // Entity Handle
316 | "{number}\n" .
317 | "100\n" . // Subclass marker (AcDbEntity)
318 | "AcDbEntity\n" .
319 | "8\n" . // Layer name
320 | "{$this->layerName}\n" .
321 | "100\n" . // Subclass marker (AcDbTrace)
322 | "AcDbTrace\n" .
323 | "10\n" . // First corner, X
324 | "{$x}\n" .
325 | "20\n" . // First corner, Y
326 | "{$y}\n" .
327 | "30\n" . // First corner, Z
328 | "{$z}\n" .
329 | "11\n" . // Second corner, X
330 | "{$x}\n" .
331 | "21\n" . // Second corner, Y
332 | "{$y1}\n" .
333 | "31\n" . // Second corner, Z
334 | "{$z}\n" .
335 | "12\n" . // Third corner, X
336 | "{$x1}\n" .
337 | "22\n" . // Third corner, Y
338 | "{$y1}\n" .
339 | "32\n" . // Third corner, Z
340 | "{$z}\n" .
341 | "13\n" . // Fourth corner, X
342 | "{$x1}\n" .
343 | "23\n" . // Fourth corner, Y
344 | "{$y}\n" .
345 | "33\n" . // Fourth corner, Z
346 | "{$z}\n" .
347 | "39\n" . // Thickness
348 | "0\n" .
349 | "210\n". // Extrusion Direction, X
350 | "0\n" .
351 | "220\n". // Extrusion Direction, Y
352 | "0\n" .
353 | "230\n". // Extrusion Direction, Z
354 | "1\n" .
355 | "0\n";
356 | return $this;
357 | }
358 |
359 | /**
360 | * Add text to current layer
361 | * @param float $x
362 | * @param float $y
363 | * @param float $z
364 | * @param string $text
365 | * @param float $textHeight Text height
366 | * @param integer $position Position of text from point: 1 = top-left; 2 = top-center; 3 = top-right; 4 = center-left; 5 = center; 6 = center-right; 7 = bottom-left; 8 = bottom-center; 9 = bottom-right
367 | * @param float $angle Angle of text in degrees (rotation)
368 | * @param integer $thickness
369 | * @return Creator Instance
370 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-62E5383D-8A14-47B4-BFC4-35824CAE8363.htm
371 | */
372 | public function addText($x, $y, $z, $text, $textHeight, $position = 7, $angle = 0.0, $thickness = 0)
373 | {
374 | $positions = [
375 | 1 => [3, 0], // top-left
376 | 2 => [3, 1], // top-center
377 | 3 => [3, 2], // top-right
378 | 4 => [2, 0], // center-left
379 | 5 => [2, 1], // center
380 | 6 => [2, 2], // center-right
381 | 7 => [1, 0], // bottom-left
382 | 8 => [1, 1], // bottom-center
383 | 9 => [1, 2] // bottom-right
384 | ];
385 | $x += $this->offset[0];
386 | $y += $this->offset[1];
387 | $z += $this->offset[2];
388 | $angle = deg2rad($angle);
389 | $verticalJustification = $positions[$position][0];
390 | $horizontalJustification = $positions[$position][1];
391 | $this->shapes[] = "TEXT\n" .
392 | "5\n" . // Entity Handle
393 | "{number}\n" .
394 | "100\n" . // Subclass marker (AcDbEntity)
395 | "AcDbEntity\n" .
396 | "8\n" . // Layer name
397 | "{$this->layerName}\n" .
398 | "100\n" . // Subclass marker (AcDbText)
399 | "AcDbText\n" .
400 | "39\n" . // Thickness (optional; default = 0)
401 | "{$thickness}\n" .
402 | "10\n" . // First alignment point, X value
403 | "{$x}\n" .
404 | "20\n" . // First alignment point, Y value
405 | "{$y}\n" .
406 | "30\n" . // First alignment point, Z value
407 | "{$z}\n" .
408 | "40\n" . // Text height
409 | "{$textHeight}\n" .
410 | "1\n" . // Default value (the string itself)
411 | "{$text}\n" .
412 | "50\n" . // Text rotation (optional; default = 0)
413 | "{$angle}\n" .
414 | "41\n" . // Relative X scale factor—width (optional; default = 1)
415 | "1\n" .
416 | "51\n" . // Oblique angle (optional; default = 0)
417 | "0\n" .
418 | "7\n" . // Text style name (optional, default = STANDARD)
419 | "{$this->textStyleName}\n" .
420 | "71\n" . // Text generation flags (optional, default = 0)
421 | "0\n" .
422 | "72\n" . // Horizontal text justification type (optional, default = 0) integer codes (not bit-coded): 0 = Left, 1= Center, 2 = Right, 3 = Aligned, 4 = Middle, 5 = Fit
423 | "{$horizontalJustification}\n" .
424 | "11\n" . // Second alignment point, X value
425 | "{$x}\n" .
426 | "21\n" . // Second alignment point, Y value
427 | "{$y}\n" .
428 | "31\n" . // Second alignment point, Z value
429 | "{$z}\n" .
430 | "100\n" . // Subclass marker (AcDbText)
431 | "AcDbText\n" .
432 | "73\n" . // Vertical text justification type (optional, default = 0): integer codes (not bit-coded): 0 = Baseline, 1 = Bottom, 2 = Middle, 3 = Top
433 | "{$verticalJustification}\n" .
434 | "0\n";
435 | return $this;
436 | }
437 |
438 |
439 | /**
440 | * Add circle to current layer
441 | * @param float $x
442 | * @param float $y
443 | * @param float $z
444 | * @param float $radius
445 | * @return Creator Instance
446 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-8663262B-222C-414D-B133-4A8506A27C18.htm
447 | */
448 | public function addCircle($x, $y, $z, $radius)
449 | {
450 | $x += $this->offset[0];
451 | $y += $this->offset[1];
452 | $z += $this->offset[2];
453 | $this->shapes[] = "CIRCLE\n" .
454 | "5\n" . // Entity Handle
455 | "{number}\n" .
456 | "100\n" . // Subclass marker (AcDbEntity)
457 | "AcDbEntity\n" .
458 | "8\n" . // Layer name
459 | "{$this->layerName}\n" .
460 | "100\n" . // Subclass marker (AcDbCircle)
461 | "AcDbCircle\n" .
462 | "10\n" . // Center point, X value
463 | "{$x}\n" .
464 | "20\n" . // Center point, Y value
465 | "{$y}\n" .
466 | "30\n" . // Center point, Z value
467 | "{$z}\n" .
468 | "40\n" . // Radius
469 | "{$radius}\n" .
470 | "0\n";
471 | return $this;
472 | }
473 |
474 |
475 | /**
476 | * Add Image Reference to current Layer
477 | * @param float $x
478 | * @param float $y
479 | * @param float $z
480 | * @param float $x2
481 | * @param float $y2
482 | * @param float $z2
483 | * @param string $path
484 | * @param integer $sizeu
485 | * @param integer $sizev
486 | * @return Creator Instance
487 | * @see http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-3A2FF847-BE14-4AC5-9BD4-BD3DCAEF2281
488 | */
489 | public function addImage($x, $y, $z, $x2, $y2, $z2, $path, $sizeu, $sizev)
490 | {
491 | $x += $this->offset[0];
492 | $y += $this->offset[1];
493 | $z += $this->offset[2];
494 | $x2 += $this->offset[0];
495 | $pixelSize = abs($x2 - $x) / $sizeu;
496 |
497 | $imageKey = explode('/', $path);
498 | $imageKey=strtoupper(end($imageKey));
499 | $imageKey = str_replace(' ', '', $imageKey);
500 |
501 | $imageHandler = $this->getEntityHandle();
502 | $imageDefHandler = $this->getEntityHandle();
503 | $imageDefReactorHandler = $this->getEntityHandle();
504 |
505 | $this->images[$imageKey] = [
506 | 'name' => $imageKey,
507 | 'path' => $path,
508 | 'sizeu' => $sizeu,
509 | 'sizev' => $sizev,
510 | 'pixelsize' => $pixelSize,
511 | 'imagehandler' => $imageHandler,
512 | 'imagedefhandler' => $imageDefHandler,
513 | 'imagedef_reactorhandler' => $imageDefReactorHandler
514 | ];
515 |
516 | $clipboundaryvertexu2 = $sizeu - 0.5;
517 | $clipboundaryvertexv2 = $sizev - 0.5;
518 |
519 | $this->shapes[] = "IMAGE\n" .
520 | "5\n" . // Entity Handle
521 | "{$imageHandler}\n" .
522 | "330\n" . // ????
523 | "1F\n" . // space handler 1F is hardcoded in tamplate.dxf
524 | "100\n" . // Subclass marker (AcDbEntity)
525 | "AcDbEntity\n" .
526 | "8\n" . // Layer name
527 | "{$this->layerName}\n" .
528 | " 92\n" . // binary chunk ????
529 | " 140\n" .// binary chunk ???? TODO: generate 140 binary codede properly
530 | "310\n" .// binary chunk ????
531 | "8C000000010000008400000006000000050000002E34B09D88A726407EF7FEBB3CE326400000000000000000EB14D992C3BA40407EF7FEBB3CE326400000000000000000EB14D992C3BA404011E9EC0694E73F4000000000000000002E34B09D88A7264011E9EC0694E73F4000000000000000002E34B09D88A726407EF7FE\n" .
532 | "310\n" .// binary chunk ????
533 | "BB3CE326400000000000000000\n" .
534 | "100\n" . // Subclass marker (AcDbRasterImage)
535 | "AcDbRasterImage\n" .
536 | "90\n" . // class version
537 | " 0\n" .
538 | "10\n" . // insertion point x value
539 | "{$x}\n" .
540 | "20\n" . // insertion point, Y value
541 | "{$y}\n" .
542 | "30\n" . // insertion point, Z value
543 | "{$z}\n" .
544 | " 11\n" . // x value u-vector (in WCS) pixel size horizontal
545 | "{$pixelSize}\n" .
546 | " 21\n" . // Y value U-vector (in WCS)
547 | "0\n" .
548 | " 31\n" . // z value U-vector (in WCS)
549 | "0\n" .
550 | " 12\n" . // x value V-vector (in WCS)
551 | "0\n" .
552 | " 22\n" . // Y value V-vector (in WCS) pixel size vertical
553 | "{$pixelSize}\n" .
554 | " 32\n" . // z value V-vector (in WCS)
555 | "0\n" .
556 | " 13\n" . //image size in pixels x
557 | "{$sizeu}\n" .
558 | " 23\n" . //image size in pixels y
559 | "{$sizev}\n" .
560 | "340\n" . //Hard reference to imagedef object
561 | "{$imageDefHandler}\n" .
562 | " 70\n" . //Image display properties:
563 | " 7\n" .//default at draftsight 2016
564 | "280\n" . //Clipping state: 0 = Off; 1 = On
565 | " 0\n" .
566 | "281\n" . //Brightness value (0-100; default = 50)
567 | " 50\n" .
568 | "282\n" . //Contrast value (0-100; default = 50)
569 | " 50\n" .
570 | "283\n" . //Fade value (0-100; default = 0)
571 | " 0\n" .
572 | "360\n" . //Hard reference to imagedef_reactor object
573 | "{$imageDefReactorHandler}\n" .
574 | " 71\n" . //Clipping boundary type. 1 = Rectangular; 2 = Polygonal
575 | " 1\n" .
576 | " 91\n" . //Number of clip boundary vertices that follow
577 | " 2\n" .
578 | " 14\n" . //Clip boundary vertex (in OCS) DXF: X value; APP: 2D point (multiple entries)
579 | "-0.5\n" .
580 | " 24\n" . //Clip boundary vertex (in OCS) DXF: y value; APP: 2D point (multiple entries)
581 | "-0.5\n" .
582 | " 14\n" . //Clip boundary vertex (in OCS) DXF: X value; APP: 2D point (multiple entries)
583 | "{$clipboundaryvertexu2}\n" .
584 | " 24\n" . //Clip boundary vertex (in OCS) DXF: y value; APP: 2D point (multiple entries)
585 | "{$clipboundaryvertexv2}\n" .
586 | "0\n";
587 | return $this;
588 | }
589 |
590 |
591 | /**
592 | * Add Arc to current layer.
593 | * Don't forget: it's drawing by counterclock-wise.
594 | * @param float $x
595 | * @param float $y
596 | * @param float $z
597 | * @param float $radius
598 | * @param float $startAngle
599 | * @param float $endAngle
600 | * @return $this
601 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-0B14D8F1-0EBA-44BF-9108-57D8CE614BC8.htm
602 | */
603 | public function addArc($x, $y, $z, $radius, $startAngle = 0.1, $endAngle = 90.0)
604 | {
605 | $x += $this->offset[0];
606 | $y += $this->offset[1];
607 | $z += $this->offset[2];
608 | $this->shapes[] = "ARC\n" .
609 | "5\n" . // Entity Handle
610 | "{number}\n" .
611 | "100\n" . // Subclass marker (AcDbEntity)
612 | "AcDbEntity\n" .
613 | "8\n" . // Layer name
614 | "{$this->layerName}\n" .
615 | "100\n" . // Subclass marker (AcDbCircle)
616 | "AcDbCircle\n" .
617 | "39\n" . // Thickness (optional; default = 0)
618 | "0\n" .
619 | "10\n" . // Center point, X value
620 | "{$x}\n" .
621 | "20\n" . // Center point, Y value
622 | "{$y}\n" .
623 | "30\n" . // Center point, Z value
624 | "{$z}\n" .
625 | "40\n" . // Radius
626 | "{$radius}\n" .
627 | "100\n" . // Subclass marker (AcDbArc)
628 | "AcDbArc\n" .
629 | "50\n" . // Start angle
630 | "{$startAngle}\n" .
631 | "51\n" . // End angle
632 | "{$endAngle}\n" .
633 | "0\n";
634 | return $this;
635 | }
636 |
637 |
638 | /**
639 | * Add Ellipse to current layer.
640 | * @param float $cx Center Point X
641 | * @param float $cy Center Point Y
642 | * @param float $cz Center Point Z
643 | * @param float $mx Major Axis Endpoint X
644 | * @param float $my Major Axis Endpoint Y
645 | * @param float $mz Major Axis Endpoint Z
646 | * @param float $ratio Ratio of minor axis to major axis
647 | * @return $this
648 | * @see https://raw.githubusercontent.com/active-programming/DXF-Creator-for-PHP/master/demo/ellipse2.png
649 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-107CB04F-AD4D-4D2F-8EC9-AC90888063AB.htm
650 | */
651 | public function addEllipse($cx, $cy, $cz, $mx, $my, $mz, $ratio=0.5, $start = 0, $end = 6.283185307179586)
652 | {
653 | $mx -= $cx;
654 | $my -= $cy;
655 | $mz -= $cz;
656 | $this->shapes[] = "ELLIPSE\n" .
657 | "5\n" . // Entity Handle
658 | "{number}\n" .
659 | "100\n" . // Subclass marker (AcDbEntity)
660 | "AcDbEntity\n" .
661 | "8\n" . // Layer name
662 | "{$this->layerName}\n" .
663 | "100\n" . // Subclass marker (AcDbEllipse)
664 | "AcDbEllipse\n" .
665 | "10\n" . // Center point, X value
666 | "{$cx}\n" .
667 | "20\n" . // Center point, Y value
668 | "{$cy}\n" .
669 | "30\n" . // Center point, Z value
670 | "{$cz}\n" .
671 | "11\n" . // Endpoint of major axis, X value
672 | "{$mx}\n" .
673 | "21\n" . // Endpoint of major axis, Y value
674 | "{$my}\n" .
675 | "31\n" . // Endpoint of major axis, Z value
676 | "{$mz}\n" .
677 | "40\n" . // Ratio of minor axis to major axis
678 | "{$ratio}\n" .
679 | "41\n" . // Start parameter (this value is 0.0 for a full ellipse)
680 | "{$start}\n" .
681 | "42\n" . // End parameter (this value is 2pi for a full ellipse)
682 | "{$end}\n" .
683 | "0\n";
684 | return $this;
685 | }
686 |
687 |
688 | /**
689 | * Add Ellipse to current layer.
690 | * @param float $cx Center Point X
691 | * @param float $cy Center Point Y
692 | * @param float $cz Center Point Z
693 | * @param float $mx Major Axis Endpoint X
694 | * @param float $my Major Axis Endpoint Y
695 | * @param float $mz Major Axis Endpoint Z
696 | * @param float $rx Minor Axis Endpoint X
697 | * @param float $ry Minor Axis Endpoint Y
698 | * @param float $rz Minor Axis Endpoint Z
699 | *
700 | * @return $this
701 | * @see https://raw.githubusercontent.com/active-programming/DXF-Creator-for-PHP/master/demo/ellipse.png
702 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-107CB04F-AD4D-4D2F-8EC9-AC90888063AB.htm
703 | */
704 | public function addEllipseBy3Points($cx, $cy, $cz, $mx, $my, $mz, $rx, $ry, $rz, $start = 0, $end = 6.283185307179586)
705 | {
706 | $length1 = sqrt(pow($cx - $mx, 2) + pow($cy - $my, 2) + pow($cz - $mz, 2));
707 | $length2 = sqrt(pow($cx - $rx, 2) + pow($cy - $ry, 2) + pow($cz - $rz, 2));
708 | $ratio = round($length2 / $length1, 3);
709 | $mx -= $cx;
710 | $my -= $cy;
711 | $mz -= $cz;
712 | $this->shapes[] = "ELLIPSE\n" .
713 | "5\n" . // Entity Handle
714 | "{number}\n" .
715 | "100\n" . // Subclass marker (AcDbEntity)
716 | "AcDbEntity\n" .
717 | "8\n" . // Layer name
718 | "{$this->layerName}\n" .
719 | "100\n" . // Subclass marker (AcDbEllipse)
720 | "AcDbEllipse\n" .
721 | "10\n" . // Center point, X value
722 | "{$cx}\n" .
723 | "20\n" . // Center point, Y value
724 | "{$cy}\n" .
725 | "30\n" . // Center point, Z value
726 | "{$cz}\n" .
727 | "11\n" . // Endpoint of major axis, X value
728 | "{$mx}\n" .
729 | "21\n" . // Endpoint of major axis, Y value
730 | "{$my}\n" .
731 | "31\n" . // Endpoint of major axis, Z value
732 | "{$mz}\n" .
733 | "40\n" . // Ratio of minor axis to major axis
734 | "{$ratio}\n" .
735 | "41\n" . // Start parameter (this value is 0.0 for a full ellipse)
736 | "{$start}\n" .
737 | "42\n" . // End parameter (this value is 2pi for a full ellipse)
738 | "{$end}\n" .
739 | "0\n";
740 | return $this;
741 | }
742 |
743 |
744 | /**
745 | * Add polyline to current layer.
746 | * @param array[float] $points Points array: [x, y, x2, y2, x3, y3, ...]
747 | * @param int $flag Polyline flag (bit-coded); default is 0: 1 = Closed; 128 = Plinegen
748 | * @return $this
749 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-ABF6B778-BE20-4B49-9B58-A94E64CEFFF3.htm
750 | */
751 | public function addPolyline($points, $flag = 0)
752 | {
753 | $count = count($points);
754 | if ($count > 2 && ($count % 2) == 0) {
755 | $dots = ($count / 2 + 1);
756 | $polyline = "LWPOLYLINE\n" .
757 | "5\n" . // Entity Handle
758 | "{number}\n" .
759 | "100\n" . // Subclass marker (AcDbEntity)
760 | "AcDbEntity\n" .
761 | "8\n" . // Layer name
762 | "{$this->layerName}\n" .
763 | "100\n" . // Subclass marker (AcDbPolyline)
764 | "AcDbPolyline\n" .
765 | "90\n" . // Number of vertices
766 | "{$dots}\n" .
767 | "70\n" . // Polyline flag (bit-coded); default is 0: 1 = Closed; 128 = Plinegen
768 | "{$flag}\n" .
769 | "43\n" . // Constant width (optional; default = 0).
770 | "0\n" .
771 | "38\n" . // Elevation (optional; default = 0)
772 | "0\n" .
773 | "39\n" . // Thickness (optional; default = 0)
774 | "0\n";
775 | for ($i = 0; $i < $count; $i += 2) {
776 | $x = $points[$i] + $this->offset[0];
777 | $y = $points[$i+1] + $this->offset[1];
778 | $polyline .=
779 | "10\n" .
780 | "{$x}\n" .
781 | "20\n" .
782 | "{$y}\n";
783 | }
784 | $this->shapes[] = $polyline . "0\n";
785 | }
786 | return $this;
787 | }
788 |
789 |
790 | /**
791 | * Add 3D polyline to current layer.
792 | * @param array[float] $points Points array: [x, y, z, x2, y2, z2, x3, y3, z3, ...]
793 | * @return $this
794 | * @deprecated It was mistake, the polyline has no Z coordinate point (code 30)
795 | */
796 | public function addPolyline2d($points)
797 | {
798 | return $this->addPolyline($points);
799 | }
800 |
801 |
802 | /**
803 | * Returns last error
804 | * @return null
805 | */
806 | public function getError()
807 | {
808 | return $this->error;
809 | }
810 |
811 |
812 | /**
813 | * Set offset
814 | * @param $x
815 | * @param $y
816 | * @param $z
817 | */
818 | public function setOffset($x, $y, $z = 0)
819 | {
820 | $this->offset = [$x, $y, $z];
821 | }
822 |
823 |
824 | /**
825 | * Get offset
826 | * @return array
827 | */
828 | public function getOffset()
829 | {
830 | return $this->offset;
831 | }
832 |
833 |
834 | /**
835 | * Save DXF document to file
836 | * @param string $fileName
837 | * @return bool True on success
838 | */
839 | function saveToFile($fileName)
840 | {
841 | $this->error = '';
842 | $dir = dirname($fileName);
843 | if (!is_dir($dir)) {
844 | $this->error = "Directory not exists: {$dir}";
845 | return false;
846 | }
847 | if (!file_put_contents($fileName, $this->getString())) {
848 | $this->error = "Error on save: {$fileName}";
849 | return false;
850 | }
851 | return true;
852 | }
853 |
854 |
855 | /**
856 | * Send DXF document to browser
857 | * @param string $fileName
858 | * @param bool $stop Set to FALSE if no need to exit from script
859 | */
860 | public function sendAsFile($fileName, $stop = true)
861 | {
862 | while (false !== ob_get_clean()) { };
863 | header("Content-Type: image/vnd.dxf");
864 | header("Content-Disposition: inline; filename={$fileName}");
865 | echo $this->getString();
866 | if ($stop) {
867 | exit;
868 | }
869 | }
870 |
871 |
872 | /**
873 | * Returns DXF document as string
874 | * @return string DXF document
875 | */
876 | public function getString()
877 | {
878 | $template = file_get_contents(__DIR__ . '/template.dxf');
879 | $images = $this->getImagesString();
880 | $lTypes = $this->getLtypesString();
881 | $layers = $this->getLayersString();
882 | $textStyles = $this->getTextStylesString();
883 | $entities = $this->getEntities();
884 |
885 | $dxf = str_replace([
886 | '{LTYPES_TABLE}',
887 | '{LAYERS_TABLE}',
888 | '{UNITS}',
889 | '{STYLES_TABLE}',
890 | '{ENTITIES_SECTION}',
891 | '{CLASSES_FOR_IMAGES}',
892 | '{DICTIONARY_IMAGE_VAR}',
893 | '{IMAGEDEF_REACTOR}',
894 | '{DICTIONARY_IMAGES}',
895 | '{IMAGEDEFS}'
896 | ], [
897 | $lTypes,
898 | $layers,
899 | $this->units,
900 | $textStyles,
901 | $entities,
902 | $images['CLASSES_FOR_IMAGES'],
903 | $images['DICTIONARY_IMAGE_VAR'],
904 | $images['IMAGEDEF_REACTOR'],
905 | $images['DICTIONARY_IMAGES'],
906 | $images['IMAGEDEFS']
907 | ], $template);
908 |
909 | return $dxf;
910 | }
911 |
912 |
913 | private function getEntities()
914 | {
915 | foreach ($this->shapes as &$shape) {
916 | $shape = str_replace('{number}', $this->getEntityHandle(), $shape);
917 | }
918 | $entities = implode('', $this->shapes);
919 | return rtrim($entities, "\n");
920 | }
921 |
922 |
923 | /**
924 | * Generates IMAEGADEF AND IMAGEDEF_REACTOR items
925 | *
926 | * @return string[]
927 | * @see http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-EFE5319F-A71A-4612-9431-42B6C7C3941F
928 | * @see http://help.autodesk.com/view/ACD/2016/ENU/?guid=GUID-46C12333-1EDA-4619-B2C9-D7D2607110C8
929 | */
930 | private function getImagesString()
931 | {
932 | $dictionaryimagevarHandle = $this->getEntityHandle();
933 | $dictionaryHandle = $this->getEntityHandle();
934 | $rastervariable = $this->getEntityHandle();
935 |
936 | if ( count($this->images) === 0 ) {
937 | return [
938 | 'CLASSES_FOR_IMAGES' => '',
939 | 'DICTIONARY_IMAGE_VAR' => '',
940 | 'IMAGEDEF_REACTOR' => '',
941 | 'DICTIONARY_IMAGES' => '',
942 | 'IMAGEDEFS' => ''
943 | ];
944 | }
945 |
946 | $imagesclasses = "\nCLASS\n".
947 | "1\n".
948 | "RASTERVARIABLES\n".
949 | "2\n".
950 | "AcDbRasterVariables\n".
951 | "3\n".
952 | "ISM\n".
953 | " 90\n".
954 | "32768\n".
955 | "280\n".
956 | " 0\n".
957 | "281\n".
958 | " 0\n".
959 | "0\n".
960 | "CLASS\n".
961 | "1\n".
962 | "IMAGEDEF\n".
963 | "2\n".
964 | "AcDbRasterImageDef\n".
965 | "3\n".
966 | "ISM\n".
967 | " 90\n".
968 | "32768\n".
969 | "280\n".
970 | " 0\n".
971 | "281\n".
972 | " 0\n".
973 | "0\n".
974 | "CLASS\n".
975 | "1\n".
976 | "IMAGE\n".
977 | "2\n".
978 | "AcDbRasterImage\n".
979 | "3\n".
980 | "ISM\n".
981 | " 90\n".
982 | "32895\n".
983 | "280\n".
984 | " 0\n".
985 | "281\n".
986 | " 1\n".
987 | "0\n".
988 | "CLASS\n".
989 | "1\n".
990 | "IMAGEDEF_REACTOR\n".
991 | "2\n".
992 | "AcDbRasterImageDefReactor\n".
993 | "3\n".
994 | "ISM\n".
995 | " 90\n".
996 | "32769\n".
997 | "280\n".
998 | " 0\n".
999 | "281\n".
1000 | " 0\n".
1001 | "0\n";
1002 |
1003 | $dictionaryImageVars = "\n3\n".
1004 | "ACAD_IMAGE_DICT\n".
1005 | "350\n".
1006 | "{$dictionaryHandle}\n".
1007 | " 3\n".
1008 | "ACAD_IMAGE_VARS\n".
1009 | "350\n".
1010 | "{$rastervariable}\n".
1011 | "0\n";
1012 |
1013 | $dictionaryImages = "DICTIONARY\n".
1014 | "5\n".
1015 | "{$dictionaryHandle}\n".
1016 | "102\n".
1017 | "{ACAD_REACTORS\n".
1018 | "330\n".
1019 | "{$dictionaryimagevarHandle}\n".
1020 | "102\n".
1021 | "}\n".
1022 | "330\n".
1023 | "{$dictionaryimagevarHandle}\n".
1024 | "100\n".
1025 | "AcDbDictionary\n".
1026 | " 0\n".
1027 | " DICTIONARY\n".
1028 | " 5\n".
1029 | "{$dictionaryHandle}\n".
1030 | "102\n".
1031 | "{ACAD_REACTORS\n".
1032 | "330\n".
1033 | "{$dictionaryimagevarHandle}\n".
1034 | "102\n".
1035 | "}\n".
1036 | "330\n".
1037 | "{$dictionaryimagevarHandle}\n".
1038 | "100\n".
1039 | "AcDbDictionary\n";
1040 |
1041 | foreach ($this->images as $imgnom => $img) {
1042 | $dictionaryImages.= "3\n".
1043 | "{$imgnom}\n".
1044 | "350\n".
1045 | "{$dictionaryimagevarHandle}\n";
1046 | }
1047 |
1048 | $dictionaryImages .= " 0\n".
1049 | "RASTERVARIABLES\n".
1050 | " 5\n".
1051 | "{$rastervariable}\n".
1052 | "102\n".
1053 | "{ACAD_REACTORS\n".
1054 | "330\n".
1055 | "{$dictionaryimagevarHandle}\n".
1056 | "102\n".
1057 | "}\n".
1058 | "330\n".
1059 | "{$dictionaryimagevarHandle}\n".
1060 | "100\n".
1061 | "AcDbRasterVariables\n".
1062 | "90\n".
1063 | " 0\n".
1064 | "70\n".
1065 | " 1\n".
1066 | "71\n".
1067 | " 1\n".
1068 | "72\n".
1069 | " 0\n".
1070 | " 0\n";
1071 |
1072 |
1073 | $imageDefReactors = '';
1074 | foreach ($this->images as $imgnom => $img) {
1075 | $imageHandler = $img['imagehandler'];
1076 | $imageDefReactorHandler= $img['imagedef_reactorhandler'];
1077 | $imageDefReactors .= "IMAGEDEF_REACTOR\n".
1078 | " 5\n".
1079 | "{$imageDefReactorHandler}\n".
1080 | "330\n".
1081 | "{$imageHandler}\n".
1082 | "100\n".
1083 | "AcDbRasterImageDefReactor\n".
1084 | " 90\n".
1085 | " 2\n".
1086 | "330\n".
1087 | "{$imageHandler}\n".
1088 | " 0\n";
1089 | }
1090 |
1091 | $imagesDef = '';
1092 | foreach ($this->images as $imgnom => $img) {
1093 | $imageDefHandler = $img['imagedefhandler'];
1094 | $imageDefReactorHandler = $img['imagedef_reactorhandler'];
1095 | $path = $img['path'];
1096 | $sizeu = $img['sizeu'];
1097 | $sizev = $img['sizev'];
1098 | $pixelsize = $img['pixelsize'];
1099 | $imagesDef .= "\nIMAGEDEF\n".
1100 | "5\n".
1101 | "{$imageDefHandler}\n".
1102 | "102\n".
1103 | "{ACAD_REACTORS\n".
1104 | "330\n".
1105 | "{$dictionaryHandle}\n".
1106 | "330\n".
1107 | "{$imageDefReactorHandler}\n".
1108 | "102\n".
1109 | "}\n".
1110 | "330\n".
1111 | "{$dictionaryHandle}\n".
1112 | "100\n".
1113 | "AcDbRasterImageDef\n".
1114 | "90\n".
1115 | " 0\n".
1116 | " 1\n".
1117 | "{$path}\n".
1118 | " 10\n".
1119 | "{$sizeu}\n".
1120 | " 20\n".
1121 | "{$sizev}\n".
1122 | " 11\n".
1123 | "{$pixelsize}\n".
1124 | " 21\n".
1125 | "{$pixelsize}\n".
1126 | "280\n".
1127 | " 1\n".
1128 | "281\n".
1129 | " 3\n".
1130 | " 0\n";
1131 | }
1132 |
1133 | $strings = [
1134 | 'CLASSES_FOR_IMAGES' => rtrim($imagesclasses, "\n"),
1135 | 'DICTIONARY_IMAGE_VAR' => $dictionaryImageVars,
1136 | 'IMAGEDEF_REACTOR' => $imageDefReactors,
1137 | 'DICTIONARY_IMAGES' => rtrim($dictionaryImages, "\n"),
1138 | 'IMAGEDEFS' => rtrim($imagesDef, "\n")
1139 | ];
1140 |
1141 | return $strings;
1142 | }
1143 |
1144 |
1145 |
1146 | /**
1147 | * Generates LTYPE items
1148 | * @return string
1149 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-F57A316C-94A2-416C-8280-191E34B182AC.htm
1150 | * @see https://ezdxf.readthedocs.io/en/latest/dxfinternals/linetype_table.html
1151 | */
1152 | private function getLtypesString()
1153 | {
1154 | $ownerHandle = $this->getEntityHandle();
1155 | $lTypes = "LTYPE\n5\n{$ownerHandle}\n330\n0\n100\nAcDbSymbolTable\n70\n4\n0\n" .
1156 | "LTYPE\n5\n" . $this->getEntityHandle() . "\n330\n{$ownerHandle}\n100\nAcDbSymbolTableRecord\n100\nAcDbLinetypeTableRecord\n2\nByBlock\n70\n0\n3\n\n72\n65\n73\n0\n40\n0\n0\n" .
1157 | "LTYPE\n5\n" . $this->getEntityHandle() . "\n330\n{$ownerHandle}\n100\nAcDbSymbolTableRecord\n100\nAcDbLinetypeTableRecord\n2\nByLayer\n70\n0\n3\n\n72\n65\n73\n0\n40\n0\n0\n";
1158 | foreach ($this->lTypes as $type) {
1159 | $number = $this->getEntityHandle();
1160 | $name = isset(LineType::$lines[$type]) ? LineType::$lines[$type][0] : '';
1161 | $pattern = isset(LineType::$lines[$type][1]) ? LineType::$lines[$type][1] : "73\n0\n40\n0.0";
1162 | $lTypes .= "LTYPE\n" .
1163 | "5\n" . // Handle
1164 | "{$number}\n" .
1165 | "330\n" . // Soft-pointer ID/handle to owner object
1166 | "{$ownerHandle}\n" .
1167 | "100\n" . // Subclass marker (AcDbSymbolTable)
1168 | "AcDbSymbolTableRecord\n" .
1169 | "100\n" .
1170 | "AcDbLinetypeTableRecord\n" .
1171 | "2\n" . // Linetype name
1172 | "{$type}\n" .
1173 | "70\n" . // Standard flag values (bit-coded values)
1174 | "64\n" .
1175 | "3\n" . // Descriptive text for linetype
1176 | "{$name}\n" .
1177 | "72\n" . // Alignment code; value is always 65, the ASCII code for A
1178 | "65\n" .
1179 | "{$pattern}\n" .
1180 | "0\n";
1181 | }
1182 | return rtrim($lTypes, "\n");
1183 | }
1184 |
1185 |
1186 | /**
1187 | * Generates LAYERS
1188 | * @return string
1189 | * @see http://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-D94802B0-8BE8-4AC9-8054-17197688AFDB.htm
1190 | */
1191 | private function getLayersString()
1192 | {
1193 | $ownerNumber = $this->getEntityHandle();
1194 | $layers = "LAYER\n5\n{$ownerNumber}\n330\n0\n100\nAcDbSymbolTable\n70\n1\n0\n";
1195 | if ( count($this->layers) > 0 ) {
1196 | foreach ($this->layers as $name => $layer) {
1197 | $number = $this->getEntityHandle();
1198 | $layers .= "LAYER\n" .
1199 | "5\n" .
1200 | "{$number}\n" .
1201 | "330\n" .
1202 | "{$ownerNumber}\n" .
1203 | "100\n" . // Subclass marker
1204 | "AcDbSymbolTableRecord\n" .
1205 | "100\n" . // Subclass marker
1206 | "AcDbLayerTableRecord\n" .
1207 | "2\n" .
1208 | "{$name}\n" . // Layer name
1209 | "70\n" . // Standard flags (bit-coded values)
1210 | "64\n" .
1211 | "62\n" . // Color number (if negative, layer is off)
1212 | "{$layer['color']}\n" .
1213 | "6\n" . // Linetype name
1214 | "{$layer['lineType']}\n" .
1215 | "390\n" .
1216 | "F\n" .
1217 | "0\n";
1218 | }
1219 | }
1220 | return rtrim($layers, "\n");
1221 | }
1222 |
1223 |
1224 | /**
1225 | * Generates TEXTSTYLES
1226 | * @return string
1227 | * @see https://help.autodesk.com/cloudhelp/2016/ENU/AutoCAD-DXF/files/GUID-EF68AF7C-13EF-45A1-8175-ED6CE66C8FC9.htm
1228 | */
1229 | private function getTextStylesString()
1230 | {
1231 | $ownerNumber = $this->getEntityHandle();
1232 | $textStyles = "STYLE\n5\n{$ownerNumber}\n330\n0\n100\nAcDbSymbolTable\n70\n3\n0\n";
1233 |
1234 | if (count($this->textStyles) > 0) {
1235 | foreach ($this->textStyles as $name => $style) {
1236 | $number = $this->getEntityHandle();
1237 | $textStyles .= "STYLE\n" .
1238 | "5\n" .
1239 | "{$number}\n" .
1240 | "330\n" .
1241 | "{$ownerNumber}\n" .
1242 | "100\n" . // Subclass marker
1243 | "AcDbSymbolTableRecord\n" . // Subclass marker value
1244 | "100\n" . // Subclass marker group code
1245 | "AcDbTextStyleTableRecord\n" . // Subclass marker value
1246 | "2\n" . // Style name group code
1247 | "{$style['name']}\n" . // Style name value
1248 | "70\n" . // Standard flags group code
1249 | "{$style['stdFlags']}\n" . // Standard flags values
1250 | "40\n" . // Fixed text height group code
1251 | "{$style['fixedHeight']}\n" . // Fixed text height value;
1252 | "41\n" . // Width factor group code
1253 | "{$style['widthFactor']}\n" . // Width factor value
1254 | "50\n" . // Oblique angle group code
1255 | "{$style['obliqueAngle']}\n" . // Oblique angle value
1256 | "71\n" . // Text generation flags group code
1257 | "{$style['textGenerationFlags']}\n" . // Text generation flags value; 2 = Text is backward (mirrored in X); 4 = Text is upside down (mirrored in Y)
1258 | "42\n" . // Last height used group code
1259 | "{$style['lastHeightUsed']}\n" . // Last height used value
1260 | "3\n" . // Primary font file name group code
1261 | "{$style['font']}\n" . // Primary font file name value
1262 | "4\n" . // Bigfont file name group code
1263 | "{$style['bigFont']}\n"; // Bigfont file name value; blank if none
1264 | }
1265 |
1266 | $textStyles .= "0\n";
1267 | }
1268 | return rtrim($textStyles, "\n");
1269 | }
1270 |
1271 | public function __toString(){
1272 | return $this->getString();
1273 | }
1274 |
1275 | }
--------------------------------------------------------------------------------