- 博客(9)
- 资源 (3)
- 收藏
- 关注
原创 Revit二次开发 - 位置查看帮助类
revit二次开发中,从顶层抽象上看,很大部分的需求,就是如何把正确的构件摆放在正确的位置,最后得出一个正确的结果所有,如何快速、直观的查看 构件坐标、轮廓、坐标系统 等等位置信息变得尤为重要,它能提高我们的开发效率和正确率。我们一般的操作是在lookup中查看,不过它的结果是一长串的数字,一眼看不出问题,最后写接口把这些数据创建到document中,比如:需要查看梁的方向,我会创建用一个带有箭头的线把梁的LocationCurve创建出来;比如常规模型,需要看出该构件的位置,则把这个点打出来,如下
2020-08-21 11:21:43 575
原创 Revit二次开发 - 插件更新升级
加载插件的方式一般有两种1、通过自己做的一个壳程序(.exe)再启动revit加载插件2、打开Revit就自动加载插件第一种方式的升级操作很好办到的,因为在启动Revit之间,你是知道Revit的插件是否需要更新,如需更新,直接从服务器下载覆盖即可,不存在动态库被占用的情况;而第二种方式,在加载你的插件后,需要更新的相关库可能已经被加载revit环境中了,这时覆盖可能会提示被占用的异常。这时就需要把你的库调整下结构了(可作参考):addin文件指向加载器"WXVisual.Rev
2020-08-13 23:59:12 1266
原创 Revit二次开发 - 动态模型更新DMU
当你关心的构件(注册时)行为发生改变时,revit会通过回调的方式相应该事件class UpdaterTemplateService : IUpdater { const string UpdaterId = "082604f4-9551-4bd3-b676-d5e10fb99577"; readonly AddInId _appId = null; readonly UpdaterId _updaterId = null; //
2020-08-13 23:23:55 1296
原创 Revit二次开发 - 过滤元素
在revit二次开发中,过滤指定类型元素的需求是很常见的,比如说获取标高、轴网、三维视图、FamilySymbol等等,于是乎: /// <summary> /// 元素过滤服务 /// </summary> public static class FilterElementService { #region 通用过滤器 /// <summary> /// 过滤元素
2020-08-11 22:14:00 1036
原创 Revit二次开发 - 设置元素颜色和透明度
public static class ElementColorUtils { static ElementId _fillPatternElementId = null; /// <summary> /// 设置 元素填充颜色 /// </summary> /// <param name="element"></param> /// <param.
2020-08-11 17:36:56 1480
原创 提高我的代码质量
关于写代码,严格遵从某种良好的习惯,会给你带来意想不到的效果,它是一种提高你效率最简单、代价最小的一种方式。接下来,作者会介绍个人认为比较好的编码习惯,仅供大家参考交流。关于编码习惯,大多数来自《代码大全》关于设计,则来自《敏捷开发-敏捷软件开发:原则、模式与实践》废话不多说,直入主题:1、该篇文章会持续更新,慢慢积累,是本人的笔记,更希望给读者一些些启发,那就是有意义的。。。...
2020-08-04 23:36:29 241 1
原创 Revit中创建TextNote
创建TextNote时,不知Revit中它是以何种对齐方式创建,也很难放到我们想要的位置,固有如下工具类: public static class TextNoteSrv { public static TextNote CreateTextNote( this ViewPlan viewPlan, string text, ElementId textTypeId, XYZ.
2020-08-04 22:45:48 932 3
原创 Revit二次开发 - 创建共享参数
/// <summary> /// 共享参数服务 /// </summary> class SharedParameterService { Document _document = null; readonly string ShareParamFileName = "visual_ShareParam.txt"; /// <summary> /// ...
2020-08-01 14:16:39 845 1
原创 给Revit发送ESC消息
static void SendKeyToRevit(byte bVk, int dwFlags) { IntPtr Revit = Autodesk.Windows.ComponentManager.ApplicationWindow; SetForegroundWindow(Revit); keybd_event(bVk, 0, dwFlags, 0); } pub...
2020-08-01 10:36:07 392
数据访问层DAL设计框架_Demo.rar
2021-01-04
Revit_2018_族库管理_20200601.exe
2020-08-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人