для проекта нам нужно экспортировать некоторые фигуры в виде файла .dxf, используя php DXFwriter (https://github.com/digitalfotografen/DXFwriter) К сожалению, не включает в себя эллипсы. Мы уже использовали полилинии вместо этого, но с сотнями отдельных точек это не было хорошо для нашей цели.
Теперь мы хотели использовать объект эллипса, но если мы просто добавим эллипс в наш раздел сущностей, AutoCAD не сможет открыть файл .dxf. Нужно ли добавить несколько строк в один из других разделов, чтобы заставить работать эллипсы, или у вас есть другие идеи, как решить эту проблему?
Раздел сущностей:
0
SECTION
2
ENTITIES
0
ELLIPSE
5
262
330
1F
100
AcDbEntity
8
0
100
AcDbEllipse
10
1927.933413526791
20
2355.552659681358
30
0.0
11
1694.611795869434
21
-112.6281645577583
31
0.0
210
0.0
220
0.0
230
1.0
40
0.2345744769758316
41
0.0
42
6.283185307179586
0
ENDSEC
Привет
Джо
Решение:
В итоге мы решили написать собственную библиотеку экспорта DXF, которая может экспортировать действительные файлы R13 DXF. Это с открытым исходным кодом, так что если у кого-то будут похожие проблемы, может быть https://github.com/enjoping/DXFighter это что-то для вас.
Файл DXF только с разделом ENTITIES рассматривается AutoCAD как файл формата R12 и не может содержать тип объекта, добавленный после этого выпуска, например ELLIPSE и LWPOLYLINE. Вы не можете пропустить другие разделы, потому что для R13 и новейших файлов есть шаг аудита, который проверяет, является ли файл действительным.
Из моих экспериментов, кажется, очень трудно создать действительный файл DXF R12.
Других решений пока нет …