
Family
AaronLuu
致力于BIM在中国的推广和落地
展开
-
RevitAPI:不要在遍历(Iterate)过滤出来的收集器(FilteredElementCollector)时修改文档(Document)
有客户报了一个问题,说用API加载族(Familly)的时候,如果这个文件是一个新的文件,那不会出现问题,但是如果是升级文件,Revit就会崩溃。他的代码大概是这样的:UIApplication rvtApp = commandData.Application;UIDocument rvtDoc = rvtApp.ActiveUIDocument;FilteredElementCol原创 2015-03-30 15:06:22 · 2650 阅读 · 0 评论 -
RevitAPI: FamilyManager.Set - InvalidOperationException: There is no current type
在Family中调用Set(FamilyParameter)的时候,会抛出异常InvalidOperationException: There is no current type,例如下面的代码:var para = RevitDoc.FamilyManager.AddParameter("Length", BuiltInParameterGroup.INVALID, ParameterTy原创 2015-06-29 17:41:47 · 1521 阅读 · 0 评论 -
RevitAPI: 设置管件族的连接件的半径属性抛异常 - 如何获取关联族参数
管件族的连接件有一个属性叫“半径”,我们想使用api来修改它的值,直观的做法可能是这样的:connectorElement.Radius = 0.041;但是,Radius属性是只读的,编译不过,或者编译过了,但是抛异常。另外一种做法是使用Parameter:var radiusPara = connectorElement.get_Parameter(BuiltInPar原创 2016-02-19 11:01:17 · 3242 阅读 · 3 评论 -
RevitAPI: 如何判断天花板的族类型是否是复合结构
从Revit界面上看,复合天花板的类型有“结构”这个参数,而非复合没有,所以,其中一个解决办法就是通过判断有没有这个参数,代码如下: bool isCompondStructure = ceilingType.get_Parameter(BuiltInParameter.CEILING_STRUCTURE_ID_PARAM) != null;另外一种方式是调用GetCompoundStru原创 2014-11-27 14:40:49 · 1503 阅读 · 0 评论 -
RevitAPI: 如何实现族编辑器里的连接几何图形
我们知道Revit族编辑器里面可以实现连接几何图形的操作,菜单是"修改>连接几何图形",然后选择多个几何图形进行连接。但是通过API代码如何实现呢?我们知道API有一些几何操作的方法,例如:BooleanOperationsUtils.ExecuteBooleanOperationModifyingOriginalSolid,该方法只是对两个Solid进行bool运算,并不原创 2014-11-27 14:04:21 · 6611 阅读 · 3 评论 -
RevitAPI: 新建系统族类型并创建族实例
昨天有客户问到如何通过API实现下面的步骤:1. 新建一个系统族,并修改参数2. 使用该系统族创建一个族实例,例如创建墙。回答:1. 新建族实例我们可以使用ElementType.Duplicate(string)方法,因为系统族是不允许用户创建的,我们只能复制一个。2. 创建系统族可以使用形如Wall.Create方法或者Document.Create.NewFloor这样的原创 2014-11-27 13:53:34 · 8636 阅读 · 10 评论