【发布时间】:2016-12-14 03:00:02
【问题描述】:
我正在用 c# 编写代码以从 dxf 文件中读取点坐标。我基本上是逐行读取 dxf 文件并检查像if( i == "AcdbLine") 这样的条件,将点的坐标写入文件。
AcDbLine
10
0.0
20
0.0
30
0.0
11
700.0
21
0.0
31
0.0
0
LINE
这会将坐标写为 (0,0,0) (700,0,0)。
我现在的问题是在 block 中找到 AcDbLine 时忽略它。我想编写一个逻辑,当它落在AcDbBlockBegin 和AcDbBlockEnd 的块内时,它会忽略任何AcDbline 及其对应点。
AcDbBlockBegin
2
*U1
70
1
10
0.0
20
0.0
30
0.0
3
*U1
1
0
LINE
5
3F0
330
3E9
100
AcDbEntity
8
0
100
AcDbLine
10
-47.22702216883923
20
-0.0131059296418084
30
0.0
11
-19.82207380431916
21
-0.0131059296418084
31
0.0
0
LINE
5
3F1
330
3E9
100
AcDbEntity
8
0
100
AcDbLine
10
22.19765948514734
20
0.0131059296418101
30
0.0
11
47.22702216883923
21
0.0131059296418101
31
0.0
0
ENDBLK
5
3EB
330
3E9
100
AcDbEntity
8
0
100
AcDbBlockEnd
抱歉代码太长,感谢您的帮助!
【问题讨论】: