实体句柄值作为模型的“身份证”,在许多场合都有重要作用。例如,在按条件搜索模型时,便可通过实体句柄的值来进行搜索。实体句柄往往扮演着“桥梁”的角色,将模型与施工信息一一对应起来。模型的实体句柄值可以在“特性”或者“选择树”中显示,然而,在Navisworks二次开发中,如何通过程序来读取实体句柄值呢?
思路:遍历模型的特性,找到实体句柄,读取值。
string handlevalue;
string[] HandleValue;
string EntityHandle;
public void 获取实体句柄()//一个获取实体句柄的函数
{
if(Autodesk.Navisworks.Api.Application.ActiveDocument!= null &&
!Autodesk.Navisworks.Api.Application.ActiveDocument.IsClear)
{
documentControl1.Document.Tool.Value =Autodesk.Navisworks.Api.Tool.Select;
foreach (ModelItem item inAutodesk.Navisworks.Api.Application.ActiveDocument.CurrentSelection.SelectedItems)
{
//iterate the item's PropertyCategory entries
foreach (PropertyCategory category initem.PropertyCategories)
{
//iterate over the DataPropertys
foreach (DataProperty dataProperty in category.Properties)
{