我有一个小的vb.net应用程序,可以从头开始创建DXF文件,其中包含折线和一些文本对象。它正在按预期目的工作,并利用我在网上找到的一些“最低dxf要求”信息来完成任务。
作为该应用程序的升级,我决定在折线上添加一些xdata,这就是我遇到麻烦的地方。
我在ENTITIES部分的折线定义内添加了以下几行:
1001
MYAPPID01
1002
{
1000
-Some string I want to associate with the polyline-
1002
}
并且还为appid创建了一个表部分,如下所示:
0
SECTION
2
TABLES
0
TABLE
2
APPID
2
MYAPPID01
70
0
0
ENDTAB
0
ENDSEC
我还在acaddoc lsp文件中添加了自动加载过程以注册该应用程序:
(if (not (tblsearch "APPID" "MYAPPID01"))
(regapp "MYAPPID01")
)
我的dxf文件未加载,并显示“无效的应用程序”错误。我该怎么做才能以最少的添加量将此xdata添加到我的常规dxf例程中?
任何有关APPID及其注册的帮助都将非常有用。 谢谢大家。
答案 0 :(得分:2)
缺少的是表类型定义标记(70
,count
)之后的最大表计数标记(2
,APPID
),以下表条目以(0
,APPID
)标签。 (DXF R12解决方案)
0
SECTION <<< start table section
0
TABLE <<< start table
2 <<< group code 2 for
APPID <<< table type definition
70
10 <<< max table entry count
0 <<< group code 0 for
APPID <<< 1. table entry
2
ACAD <<< application name
70
0 <<< flags, 0 is good
0
APPID <<< 2. table entry
2
MYAPPID01 <<< application name
70
0 <<< flags
... and so on
0
ENDTAB
0
ENDSEC
您可以找到更多信息here(对DXF R13和更高版本有效):