Dxf:如何知道要显示哪些图层?
Dxf : how to know which layers to show?
我必须解析 dxf 文件以将其转换为 .net 中的图像。
我使用了 DxfLib (https://github.com/mkernel/DXFLib)。
我有层问题:我有 3 层,只需要显示一个(我在一些 dxf 查看器中上传了我的文件,它们只显示了一层)
我不知道如何知道图层是否需要显示。我没有在我的 dxf 解析文件中找到这些信息。
你知道我在哪里可以找到这个吗? (可能是 DxfLib 中缺少的元素)
编辑:我的 dxf 文件有一个例子:https://github.com/mkernel/DXFLib/files/286112/DIAMOND-R.zip
DXF 文件包含 LAYERS table 31=]HEADER 部分。这是层 table record:
的详细信息
http://www.autodesk.com/techpubs/autocad/acad2000/dxf/layer_dxf_04.htm
您对群码感兴趣62:
如您所见,如果图层颜色为负,则图层切换为关闭。这是一个例子:
0
LAYER
5
242
330
2
100
AcDbSymbolTableRecord
100
AcDbLayerTableRecord
2
LAYER2
70
0
62
-3
6
Continuous
370
-3
390
F
347
EE
348
0
0
ENDTAB
因此,当您处理实体并检查层值时,在 LAYERS table 中查找 HEADER 部分。这是该部分的开头:
0
TABLE
2
LAYER
找到后,检查颜色 属性,如果负,图层关闭。
我不知道 DXFLib 有哪些功能可用于解析 DXF 文件的 HEADERS 部分。但我希望这个细节对你有所帮助!
终于找到解决办法了!
我的问题不是 show/hide 层,而是如何检测和隐藏不相关的对象。
我在页眉部分使用 DrawingExtendsLowerRight 和 DrawingExtendsUpperRight 属性来了解绘图的限制。我只保留限制范围内的元素。
我必须解析 dxf 文件以将其转换为 .net 中的图像。
我使用了 DxfLib (https://github.com/mkernel/DXFLib)。
我有层问题:我有 3 层,只需要显示一个(我在一些 dxf 查看器中上传了我的文件,它们只显示了一层)
我不知道如何知道图层是否需要显示。我没有在我的 dxf 解析文件中找到这些信息。
你知道我在哪里可以找到这个吗? (可能是 DxfLib 中缺少的元素)
编辑:我的 dxf 文件有一个例子:https://github.com/mkernel/DXFLib/files/286112/DIAMOND-R.zip
DXF 文件包含 LAYERS table 31=]HEADER 部分。这是层 table record:
的详细信息http://www.autodesk.com/techpubs/autocad/acad2000/dxf/layer_dxf_04.htm
您对群码感兴趣62:
如您所见,如果图层颜色为负,则图层切换为关闭。这是一个例子:
0
LAYER
5
242
330
2
100
AcDbSymbolTableRecord
100
AcDbLayerTableRecord
2
LAYER2
70
0
62
-3
6
Continuous
370
-3
390
F
347
EE
348
0
0
ENDTAB
因此,当您处理实体并检查层值时,在 LAYERS table 中查找 HEADER 部分。这是该部分的开头:
0
TABLE
2
LAYER
找到后,检查颜色 属性,如果负,图层关闭。
我不知道 DXFLib 有哪些功能可用于解析 DXF 文件的 HEADERS 部分。但我希望这个细节对你有所帮助!
终于找到解决办法了!
我的问题不是 show/hide 层,而是如何检测和隐藏不相关的对象。
我在页眉部分使用 DrawingExtendsLowerRight 和 DrawingExtendsUpperRight 属性来了解绘图的限制。我只保留限制范围内的元素。