这次分享的是一个小功能。选择几根相互平行的轴网,然后快速生成标注,内容仅提供学习和参考,延展性很大,可自行开发。上代码Just Do It~~

            UIDocument uidoc = commandData.Application.ActiveUIDocument;Document doc = uidoc.Document;List<Reference> selRefList = uidoc.Selection.PickObjects(Autodesk.Revit.UI.Selection.ObjectType.Element).ToList();List<Grid> gridList = selRefList.Select(x => doc.GetElement(x)).OfType<Grid>().ToList();//其中一条轴网的定位线Line oneGridLocaLine = gridList[0].Curve as Line;//对轴网进行排列,先定个方向XYZ alignmentDirection = oneGridLocaLine.Direction.CrossProduct(XYZ.BasisZ);//确定一条排布的线Line tempLine = Line.CreateUnbound(oneGridLocaLine.GetEndPoint(0), alignmentDirection);//通过点乘去排列gridList = gridList.OrderBy(x => x.Curve.Evaluate(0.5, true).DotProduct(alignmentDirection)).ToList();Transaction trans = new Transaction(doc, "生成标注");trans.Start();//然后再遍历生成标注for (int i = 0; i < gridList.Count-1; i++){Reference gridRef1 = new Reference(gridList[i]);Reference gridRef2 = new Reference(gridList[i+1]);ReferenceArray rerArr = new ReferenceArray();rerArr.Append(gridRef1);rerArr.Append(gridRef2);doc.Create.NewDimension(doc.ActiveView, tempLine, rerArr);}trans.Commit();return Result.Succeeded;

主要的流程为找到对应的Reference,然后再定位一条放置的横线,最终生成标注。

希望可以帮到你,如果能点赞支持,则是对我最大的鼓励,谢谢

Revit二次开发知识分享(十四) 选择轴网快速生成标注相关推荐

  1. Revit二次开发知识分享(十七)梁板柱开洞的使用

    下面使用的API全是2019版本的API噢~~ 开洞的方法是RevitAPI中直接提供的(如下图),里面一共有四个创建的重载方法. 1.给梁,柱子和撑杆来开洞的,现在也仅支持XYZ三个方向上的开洞. ...

  2. Revit二次开发知识分享(二十一)修改墙的厚度(楼板同理)

    最近总会遇到对墙构件的厚度进行修改,就去了解了一下墙修改的类,下面和大家分享一下~~~ 主要想通过代码去修改墙类型属性中结构相关内容 对应的类是CompoundStructure 类 每一行数据都对应 ...

  3. Revit二次开发知识分享(五)单位转换问题

    我们在实际项目中用代码读取到的数据的单位都是用英尺.如果不清楚这个,在做一些输入数值指定数值的功能时就会出错.因此,RevitAPI中提供了单位转换的方法. DisplayUnitType是一个枚举类 ...

  4. Revit 二次开发实例分享

                                                                 叶雄进 Joe Ye Autodesk 2010/9/1     Autode ...

  5. Revit二次开发 管道弯头、三通、四通的生成代码

    原文链接:https://blog.csdn.net/qq_39412924/article/details/83110866 当进行管道生成的时候,发现二次开发基本教程中仅有弯头的示例,于是我补充上 ...

  6. Revit二次开发—载入族并交互式放置

    文章目录 核心代码 问题一:按esc取消放置时报错 问题二:如何在放置一个族实例之后退出放置 问题三:已存在所载入族时,如何正常放置 参考资料 核心代码 using (Transaction tx = ...

  7. 《C++游戏开发》笔记十四 平滑过渡的战争迷雾(二) 实现:真正的迷雾来了

    本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9712321 作者:七十一雾央 新浪微博:http:// ...

  8. 十年盘点,Revit二次开发这条路不易

    年底盘点Revit插件研发企业的不同发展形态,有停止更新的,有放弃的,有继续在大力研发的.相比AutoCAD当年的格局,看起来Revit插件公司失败概率更高.记得黄亚斌先生说过99%的插件公司会死掉, ...

  9. QT开发(六十四)——QT样式表(二)

    QT开发(六十四)--QT样式表 本文主要翻译自QT官方文档Qt Style Sheets . 五.QT样式表参考 QT样式表支持多种的属性.状态和子控件,使得定制组件的外观成为可能. 1.组件 以下 ...

最新文章

  1. java Collection-Map 之 TreeMap
  2. 性能SOTA,国防科技大学单张RGB-D图像预测物体对称性
  3. HACKER'S DELIGHT[算法心得]笔记
  4. CPU调度(CPU Scheduling)
  5. java完整版记事本_求java记事本完整版
  6. 笨办法学C 练习6:变量类型
  7. oracle insert into values select from,ORACLE语法中的INSERT INTO。。。SELECT。。。 收藏
  8. 项目使用ts辅助_我如何建立辅助项目并在第一周获得31,000名用户
  9. The operation cannot be completed. See the details.
  10. Bailan4142 二分法求函数的零点【二分法】
  11. [serial]基于select/poll/epoll的串口操作
  12. 【C语言】中的stdbool.h头文件
  13. spring security原理图及其解释
  14. 苹果Mac重复文件清理工具:​​​​Tidy Up
  15. 防病毒网关、防火墙与防病毒软件功能及部署对比
  16. nat123内网穿透
  17. 科学计算机怎么直接显示10的多少次方,科学计算器怎么开n次方
  18. bat脚本重启IIS中的网站
  19. php mysql_query 返回值
  20. TAOCP-Reading-计算机程序设计艺术阅读-1-0

热门文章

  1. ViTDet:Exploring Plain Vision Transformer Backbonesfor Object Detection(arXiv 2022)
  2. docker构造php执行环境
  3. idea改变大于等于、不等于!=等符号的样式
  4. TCP/IP,单进程服务器与客户端连接通信,ipv4,TCP传输,无复用简单实例,nc模拟客户端连接服务器
  5. DASCTF Oct X 吉林工师_Misc_复现
  6. 关于函数的局部变量与全局变量
  7. SVM+HOG识别Matlab代码,序列前向搜索Malab代码,抗遮挡的STC跟踪C++代码
  8. 查看Linux负载命令
  9. 重庆阿尔克解读从1G到5G--手机网络技术发展史
  10. google-glog 学习