天天看點

NW中Geometry的使用技巧

  • 設定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記錄在緩存中,這樣會很友善的進行一些正常性操作。

比如:隐藏、顯示、隔離、凸顯等。

繼續閱讀