- 设置SelectionBehavior
- 利用Search去查找
// 查找所有
public ModelItemCollection GetGeometrys()
{
Search s = new Search();
s.Selection.SelectAll();
s.SearchConditions.Add(SearchCondition.HasCategoryByName(PropertyCategoryNames.Geometry));
Document doc = Autodesk.Navisworks.Api.Application.ActiveDocument;
ModelItemCollection itemColl = s.FindAll(doc, true);
return itemColl;
}
// 查找指定
public ModelItemCollection GetGeometrys(ModelItemCollection modelItemCollection)
{
Search s = new Search();
s.Selection.CopyFrom(modelItemCollection);
s.SearchConditions.Add(SearchCondition.HasCategoryByName(PropertyCategoryNames.Geometry));
Document doc = Autodesk.Navisworks.Api.Application.ActiveDocument;
ModelItemCollection itemColl = s.FindAll(doc, true);
return itemColl;
}
我们可以把多有的Geometry记录在缓存中,这样会很方便的进行一些常规性操作。
比如:隐藏、显示、隔离、凸显等。