我目前能把参考文件参进来(这里是参考自身):
DgnModel m = Session.Instance.GetActiveDgnModel(); DgnDocumentMoniker moniker = m.GetDgnFile().GetDocument().GetMoniker(); DgnAttachment attachment = m.CreateDgnAttachment(moniker, "模板(三角形)"); attachment.SetLocateLock(true); attachment.SetSnapLock(true); ModelElementsCollection elements = attachment.GetDgnModel().GetGraphicElements(); foreach (Element element in elements) { if (element.IsInvisible) continue; element.AddToModel(); NotificationManager.OutputPrompt(cnt.ToString()); } m.DeleteDgnAttachment(attachment);
但是复制element就不行(AddToModel)
软件自身不是有个Reference的Merge into Master的工具吗?使用该工具就能将参考文件合并到主模型中。如下图所示,全选参考文件,执行图示中红框的工具即可。
请问这个功能能用c#实现吗?
跨Model复制元素的话需要使用ElementCopyContext类,具体用法可搜一下以前的帖子看看,SDK下也有例子:C:\Program Files\Bentley\MicroStationCONNECTSDK\examples\Elements\ElementsExample
Answer Verified By: 巴燕 史