欢迎来到天天文库
浏览记录
ID:49769460
大小:33.32 KB
页数:9页
时间:2020-03-04
《revit二次开发笔记.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Revit2016二次开发笔记1.选中图元1.1事先选择某类图元(Wall)Autodesk.Revit.UI.UIApplicationrevit=commandData.Application;ElementSetcollection=newElementSet();ElementSetselWall=newElementSet();foreach(ElementIdelementIdinrevit.ActiveUIDocument.Selection.GetElementIds()){collection.Insert(revit.ActiveUIDocument.Docume
2、nt.GetElement(elementId));//选中的原件}foreach(Elementeleinsel){Wallwall=eleasWall;//如果为墙if(wall!=null){SelWal.Insert(ele);}}1.2.通过交互方式1.2.1用矩形框选择图元所用方法:PickElementsByRectangle()usingSystem.Collections.Generic;//声明引用命名空间,IlistUIDocumentuidoc=commandData.Application.ActiveUIDocument;ElementSetcollect
3、or=newElementSet();IListelemList=uidoc.Selection.PickElementsByRectangle();//矩形框的应用stringinfo="所选图元:";foreach(ElementeleminelemList){collector.Insert(elem);info+="t"+elem.ToString();}TaskDialog.Show("ChooseItems",info);returnResult.Succeeded;1.2.2用点击选择图元所用方法:PickObject(ObjectType.El
4、ement)usingAutodesk.Revit.UI.Selection;//声明引用命名空间,ObjectTypeUIDocumentuidoc=commandData.Application.ActiveUIDocument;ReferencehasPickOne=uidoc.Selection.PickObject(ObjectType.Element);Elementelem=uidoc.Document.GetElement(hasPickOne.ElementId);stringinfo="所选图元:";info+="t"+elem.GetType().ToSt
5、ring();TaskDialog.Show("Revit",info);还存在其它用法:Selection.PickObject(ObjectType,String)//string为提示PickObjects(ObjectType)//允许选择多个元素1.2.3选择及过滤UIDocumentuidoc=commandData.Application.ActiveUIDocument;ISelectionFilterselFilter=newMassSelectionFilter();IListeList=uidoc.Selection.PickElementsB
6、yRectangle(selFilter)asIList;stringinfo="选择了以下的墙:";foreach(ElementelemineList){info+="t"+elem.Name;}TaskDialog.Show("Revit",info);returnResult.Succeeded;publicclassMassSelectionFilter:ISelectionFilter{publicboolAllowElement(Elementelem){returnelemisWall;//选择了墙}publicboolAllowReferen
7、ce(Referencereference,XYZposition){thrownewNotImplementedException();//第二个条件}}2.加载族并创建实例UIApplicationm_application;UIDocumentm_document;m_application=commandData.Application;m_document=m_application.ActiveUIDocument;2.1.加载族1)m_doc
此文档下载收益归作者所有