用户自定义的全局数据,通过扩展记录方式写到DWG图
下面代码,取到图纸全局字典,然后在字典中放一个用户自己的字典,在字典写一个扩展记录数据
如下js代码:
function wirteGlobalVer(sName, sVal) {
// 得到CAD数据库
var database = mxOcx.GetDatabase();
// 得到全局字典
var dict = database.GetNamedObjectsDictionary();
// 得到用户自定义字典,MyExDataDictName是字典名称
var myDict = dict.GetAt("MyExDataDictName");
if (myDict == null)
{
// 如果没有,就添加一个字典。
myDict = dict.AddObject("MyExDataDictName", "McDbDictionary");
}
// 得到字典中的扩展记录数据。
var rec =myDict.GetAt(sName);
if (rec == null)
{
// 如果没有就,添加一个扩展记录.
rec = myDict.AddXRecord(sName);
}
// 创建数据链表.
var res = mxOcx.NewResbuf();
// 设置值。
res.AddString(sVal);
// 设置扩展记录数据。
rec.SetXRecordData(res);
}
执行
wirteGlobalVer("MyData", "aaaa");
alert("写入成功");
DWG中的数据内容如下: