Как мне написать DXF-код для POLYLINE? - PullRequest
0 голосов
/ 01 марта 2019

Здравствуйте. Я пытаюсь создать программу на основе C ++, которая вычисляет значения функции в заданном диапазоне, а затем программа переходит к созданию файла DXF для его графического отображения.

Проблема, связанная с тем, что я имею дело с частью DXF, это код, который генерирует моя программа на C ++, но кажется, что она не может быть прочитана Autocad.Любые идеи по этому вопросу будут высоко оценены.

0
SECTION
2
ENTITIES
0
POLYLINE
8
0
62
1
66
1
70
8
0
VERTEX
8
0
70
32
10
1
20
2
30
0
0
VERTEX
8
0
70
32
10
1.2
20
2.13688
30
0
0
VERTEX
8
0
70
32
10
1.4
20
2.28024
30
0
0
VERTEX
8
0
70
32
10
1.6
20
2.42929
30
0
0
VERTEX
8
0
70
32
10
1.8
20
2.58329
30
0
0
VERTEX
8
0
70
32
10
2
20
2.74166
30
0
0
91
0
0
SEQEND
0
ENDSEC
0
EOF

Ответы [ 2 ]

0 голосов
/ 04 марта 2019

Проблема, которая у меня возникла, заключалась в том, что я использовал коды DXF для LWPOLYLINE, когда я должен был использовать DXF в отношении POLYLINE.Разница невелика, но если человек, который читает это, сталкивается с проблемой, верните одну за другой ГРУППОВЫЕ КОДЫ и убедитесь, что все они являются частью одного и того же СУЩЕСТВА.Я поделюсь кодом, который наконец смог создать OUTPUT на AutoCad 2018 (имейте в виду изменения в формате DXF в версиях AutoCad в зависимости от вашего случая)

0
SECTION
2
ENTITIES
0
POLYLINE
8
0
62
1
66
1
70
8
0
VERTEX
8
0
70
32
10
0
20
0
30
0
0
SEQEND
0
ENDSEC
0
EOF
0 голосов
/ 01 марта 2019

В последнем VERTEX есть ошибка:

0
VERTEX
8
0
70
32
10
2
20
2.74166
30
0
0    <---- This 0 is too much, starts a structural group tag (0, 91)
91
0
0
SEQEND
0
ENDSEC
0
EOF

Если у вас есть какая-либо информация, для чего нужен код группы 91 (идентификатор вершины), дайте мне знать, я очень заинтересован.

...