NW中Geometry的使用技巧

  • 設置SelectionBehavior
ApplicationControl.SelectionBehavior = SelectionBehavior.Geometry;
  • 利用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記錄在緩存中,這樣會很方便的進行一些常規性操作。

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章