我正在创建一个DXF文件,该文件会为Autocad 2012生成一个椭圆。 ellipse.dxf文件如下。
0
SECTION
2
ENTITIES
0
ELLIPSE
5
2C
100
AcDbEntity
8
0
62
2
100
AcDbEllipse
10
2.456341489793
20
1.0357141474129
30
0.0
11
3.39798382641241
21
0.0
31
0.0
210
0.0
220
0.0
230
1.0
40
0.1413778446865976
41
0.0
42
6.283185307179586
0
ENDSEC
0
EOF
并且autocad显示以下错误:“第18行上的对象的Autocad 2012未定义组代码10”。 我很难弄清楚组码10的错误,因为它代表了x轴第一点。如果我删除组代码10和2.456341489793,则显示组代码20的相同内容。
答案 0 :(得分:2)
您的群组代码格式不正确。所有组代码的长度均为3个字符。如果组代码中没有3位数,则代码必须具有足够的前导空格以组成3个字符。例如:组代码10实际上必须以“10”(不带引号)写入dxf文件。
前导空格是组代码的关键部分。这有助于区分组代码和数据。
因此,如果组代码10的值为10,则组代码中的前导空格允许dxf解释器区分它们。
修改强>
将组代码长度从4更改为3。
答案 1 :(得分:0)
您创建了一个仅包含ENTITIES部分的最小DXF。在AutoCAD中打开此DXF文件时,AutoCAD需要DXF R12文件,而DXF R12不支持随DXF R13 / 14引入的ELLIPSE实体。 AutoCAD应该更好地抱怨ELLIPSE实体而不是组代码10.这个只有CIRCLE实体的最小DXF可以工作:
0
SECTION
2
ENTITIES
0
CIRCLE
8
Layer_is_a_required_tag
10
0.0
20
0.0
40
1.5
0
ENDSEC
0
EOF
@Stewbob:组代码的前导空格是AutoCAD的惯例,但不是强制性的