Revit二开——翻转喷头
Revit绘制喷淋时,有时需要翻转喷头调整喷头的方向,有的插件已经有此功能,不过是收费的,今天分享一下这个功能的实现思路及源代码。
- 实现过程:
1.通过喷头递归找到喷头连接件方向的三通弯头 或者 一端开放的管道。
2.将递归查找过的元素打包。
3.通过递归查找到的末端元素的相关信息,建立 旋转轴。
4.在revit事务中将打包的元素,绕着第3部的旋转轴,旋转180°。
5.代码中封装的方法请参照唐僧解瓦项目。 - 代码如下
/// <summary>
/// 上下喷转换
/// </summary>
[Transaction(TransactionMode.Manual)]
[Regeneration(RegenerationOption.Manual)]
[Journaling(JournalingMode.UsingCommandData)]
public class Cmd_ModifySprinkler : IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
UIApplication uiapp = commandData.Application;
UIDocument uidoc = commandData.Application.ActiveUIDocument;
Document doc = uidoc.Document;
Selection sel = uidoc.Selection;
View acview = uidoc.ActiveView;
//UIView acuivew = uidoc.Activeuiview();
var collector = new FilteredElementCollector(doc);
var elementGroup =