jen*_*mm2 5 cad autocad dxf autodesk
我们正在构建一个DXF导出器,根据我的阅读,这个非常简单的文件应该是有效的.我们没有任何CAD工具可供测试,因此我的调试能力非常有限.这在Proficad在线查看器中打开正常但我从Autodesk查看器收到错误,说"图形文件无效且无法查看".
这是完整的文件.任何帮助表示赞赏!
0
SECTION
2
ENTITIES
0
LWPOLYLINE
90
5
70
0
43
0.0
10
-8.75
20
-11.75
30
0.0
10
-8.75
20
11.75
30
0.0
10
8.75
20
11.75
30
0.0
10
8.75
20
-11.75
30
0.0
10
-8.75
20
-11.75
30
0.0
0
ENDSEC
0
EOF
Run Code Online (Sandbox Code Playgroud)
您的 DXF 文件存在几个问题。
LWPOLYLINE 需要大量额外的开销才能使用。您需要一个 TABLES 部分,然后必须处理 AcDbEntity 和 AcDbPolyline 条目。它很快就会变得复杂。切换到 POLYLINE 实体将为您省去很多麻烦。
您需要 AutoCAD 的 HEADER 部分来打开 DXF 文件。您不必在标头中输入太多内容,基本上只是版本信息。
下面显示的是一个功能最少的 DXF 文件(以 R12 格式保存),该文件将在 AutoCAD 中成功打开:
0
SECTION
2
HEADER
9
$ACADVER
1
AC1009
0
ENDSEC
0
SECTION
2
ENTITIES
0
POLYLINE
5
7C
8
0
66
1
10
0.0
20
0.0
30
0.0
0
VERTEX
5
174
8
0
10
-8.75
20
-11.75
30
0.0
0
VERTEX
5
175
8
0
10
-17.5
20
0.0
30
0.0
0
VERTEX
5
176
8
0
10
-8.75
20
11.75
30
0.0
0
VERTEX
5
177
8
0
10
0.0
20
0.0
30
0.0
0
VERTEX
5
178
8
0
10
-8.75
20
-11.75
30
0.0
0
SEQEND
5
179
8
0
0
ENDSEC
0
EOF
Run Code Online (Sandbox Code Playgroud)
如果这就是您要放入文件中的全部内容,那么它应该可以正常工作。请记住,所有 DXF 实体都需要一个句柄(基本上是一个 ID 号)。
0
POLYLINE
5
7C
Run Code Online (Sandbox Code Playgroud)
以上5是指示后面将要处理的句柄(ID 号)的代码。这7C是实际的句柄。如果添加更多实体,则需要增加每个实体的句柄,因此每个实体都有一个唯一的句柄。