Revit二开-批量风口连接

有时候风管风口与风口断开,如果重新连接风口,需要一个点击连接很麻烦,所以做一个批量连接风口的功能,直接上代码:

var references = sel.PickObjects(ObjectType.Element, new DuctTerminalFilter(), "选择风道末端");
foreach (var reference in references)
{
    familyInstances.Add(reference.GetElement(doc) as FamilyInstance);
}
Transaction tr = new Transaction(doc);
tr.Start("风口连接");

foreach (var instance in familyInstances)
{
	var conset = instance.MEPModel.ConnectorManager.Connectors;

	foreach (Connector item in conset)
	{
	 	if (item.IsConnected) continue;//忽略已连接的风口
	
		 FilteredElementCollector collector = new FilteredElementCollector(doc, activeview.Id);
		 ElementIntersectsElementFilter elementIntersects = new ElementIntersectsElementFilter(instance, false);//获取与风口有碰撞的风管
	     mepcurve = collector.OfCategory(BuiltInCategory.OST_DuctCurves).WherePasses(elementIntersects).FirstOrDefault() as MEPCurve;
	 
		 try
		 {
		     MechanicalUtils.ConnectAirTerminalOnDuct(doc, instance.Id, mepcurve.Id);//连接风道末端
		 }
		 catch
		 {
		     continue;
		 }
	}
}

tr.Commit();
}
 return Result.Succeeded;

分享一请添加图片描述
分享一个自制Revit插件,本人是个BIM工程师,该插件是根据自己做工程一些经验和对插件功能的频繁度,自己整合开发功能,初衷是提高效率。
目前MagicTools的功能包括通用功能、土建、机电、审图、出图功能。还有好多功能都想做,如果有好的需求也可以提,后续有新增继续增加上去,努力弄个实用的插件,希望能帮到真正有需要的BIMer。
如有需要的可以加企鹅群:630552940

插件下载地址,免费试用
链接:https://pan.baidu.com/s/1GDnHeWwZ5r_HrnT3Mo7twA?pwd=jhlt
提取码:jhlt

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值