niuge8905的博客

还有什么比it技术更有趣???

排序:
默认
按更新时间
按访问量

Webgl显示Revit模型(二)——利用Three.js优化显示效果

Webgl显示Revit模型(一)请见: https://blog.csdn.net/niuge8905/article/details/80044802 Three.js已经算是开发webgl最常用的开源库了。Autodesk团队开源了一个va3c来在web端显示revit,但是这个更新很慢...

2018-11-01 21:59:03

阅读数:122

评论数:0

C#计算凸包的点的方法

参考资料: https://download.csdn.net/download/u010991835/10223982 http://www.cnblogs.com/HolyChen/p/5982184.html 传进来点集,输出凸包的点集: #region 计算点的凸包,并返回凸包的...

2018-10-16 16:16:12

阅读数:58

评论数:0

Revit二次开发高级应用(二)——怎样在Revit中使用多线程

在Revit中完全可以使用多线程,只是需要满足一定的规则:不改变Revit的Document文档的工作都可以在线程中完成,改变Document文档的工作都需要在主线程中完成。 如下:不改变文档,只是在线程里创建辅助的线,运行之后,丝毫不错。 namespace RevitUseThread ...

2018-10-09 09:48:19

阅读数:192

评论数:0

Revit二次开发高级应用(1)——利用wcf做简单的族库管理

因为对应用场景不是特别明确,暂时就用wcf做一个可以上传和下载的功能来管理族库。 1、用WCF做服务端的上传下载管理 首先添加上传下载的接口: [ServiceContract] public interface IFileService { //上传文件 ...

2018-10-03 13:24:22

阅读数:225

评论数:0

Revit二次开发——如何搭建多版本的框架,方便编程

       Revit基本两年一大变。所以在做开发的时候需要做多个版本的才行。但是每个版本做一个项目又很不方便,因为很多代码类似,改了前面忘了后面的版本,所以很头疼,最好能够几个版本共用一个类,不同版本通过预编译来解决。这里只说怎么解决多版本共用一个类的问题,预编译比较简单,自己去查查相关内容即...

2018-08-17 10:29:11

阅读数:268

评论数:0

Revit二次开发——字体的问题

在Revit二次开发中设置文字字体还是一件比较容易的事情,因为有现成的API.首先需要获取系统文字名称,这里用最简单的方式,百度一下:https://zhidao.baidu.com/question/69549353.html获取好系统名称后,只用在Revit的API中传入系统文字的名称即可:t...

2018-05-31 23:47:43

阅读数:329

评论数:0

怎样用webgl显示Revit模型

探索了一阵子,发现这个完全可以实现,模型带几何信息,带材质信息。目前还是有点缺陷,比如官方的这个例子中地形、和树木没显示出来,显示效果一般般。实现方法是通过插件把revit模型数据转成中间数据,然后webgl读取中间数据,然后重新生成最终的模型。目前还不支持直接读取rvt模型。 前者可以修改代码...

2018-04-22 23:39:43

阅读数:1331

评论数:0

Revit二次开发——加快过滤速度,以及对ElementIntersectsSolidFilter的API的Bug的处理办法

在Revit的API中有快过滤器和慢过滤器,其中慢过滤器和快过滤器合用会加快过滤器的速度。首先来看一个例子,以下是一个用了ElementIntersectsSolidFilter 慢过滤器的例子,如果元素多达几千个,下面最后一行代码起码耗时三四十秒: FilteredElementCollecto...

2018-03-31 12:42:22

阅读数:450

评论数:2

Revit二次开发——非模态窗口

非模态窗口有一个好处,就是可以一直停留在程序之前,然后持续完成操作。但是在Revit二次开发中,非模态窗口也有几个注意事项。1、需要在文档关闭的时候,把非模态窗口也关闭掉,不然会导致文档关闭,窗口还在这样奇怪的Bug。2、非模态的窗口的事件需要在IExternalCommand里注册。3、每个操作...

2018-03-31 12:08:25

阅读数:783

评论数:1

Revit二次开发——利用Dispatcher类添加进度条

当程序运行时间很长,然后避免程序假死,比较好的办法是增加一个进度条,如果当前只有你的这一个功能在跑,用Dispatcher类是一个简单的好选择。这里用wpf的窗口来实现。public partial class ProgressBarView : Window { Exte...

2018-03-25 23:01:49

阅读数:369

评论数:0

怎样自己制作Dynamo软件包(1)——在GitHub上寻找原始资料

共同精进Revit及编程开发技能兴趣群:660319009GitHub上很多大牛共享的源代码,其中Dynamo的源代码也在上面,在里面有个Dynamo的软件包制作方法:https://github.com/DynamoDS/Dynamo从上面的链接中,可以找到案例以及源码。以下是简单的样例源码,可...

2018-02-05 14:23:14

阅读数:1071

评论数:0

Revit二次开发——关联族参数

共同精进Revit及编程开发技能兴趣群:660319009在建族的时候,有个关联族参数的操作。应用场景比如:给族里的元素关联材质,关联长度等。string paramName = "材质"; FamilyParameter fam...

2018-02-02 11:31:17

阅读数:484

评论数:0

Revit二次开发——怎样建变直径螺旋箍筋

变截面螺旋箍筋是一条空间曲线,在Revit当中,空间曲线可以通过CurveByPoints来建立空间可见的螺旋曲线,也可以通过HermiteSpline在后台来建立空间曲线。 其实通过LookUp,就可以看到,其实CurveByPoints就是HermiteSpline曲线。 所以把这点搞...

2018-01-26 00:14:18

阅读数:772

评论数:0

Revit二次开发——读取链接cad文件的地址

共同精进Revit及编程开发技能兴趣群:660319009链接cad文件的地址没法用Lookup来查找,所以常规方法读取不了这个地址。这个时候需要用如下方法来读取这个地址:Reference reference = uiDoc.Selection.PickObject(ObjectType.Ele...

2018-01-18 17:19:06

阅读数:505

评论数:0

Revit二次开发——让窗口一直显示在Revit前面

共同精进Revit及编程开发技能兴趣群:660319009 在做开发的时候,经常会碰到这个问题,你把插件的窗口打开之后,然后运行其他软件,盖住Revit后,然后再打开Revit就会发现窗口不见了,感觉像死机一样。这个时候需要将窗口绑定到主窗口之上,也就是在view.ShowDialog()的时候...

2017-12-21 13:33:06

阅读数:796

评论数:0

Revit二次开发——从链接文件中选取指定元素

共同精进Revit及编程开发技能兴趣群:660319009 这里稍微讲一下怎么从链接文件中选取指定元素,这里以选取Space为例。 首先要另写一个Class。 public class SelectionLinkFilter : ISelectionFilter { ...

2017-12-08 13:31:39

阅读数:427

评论数:0

Revit二次开发winform简单的标准模板以及wpf简单的标准模板

共同精进Revit及编程开发技能兴趣群:660319009 《Revit二次开发官方教程》里的代码适合练手以及功能测试,但是在实际开发中,这种代码肯定不符合开发公司的标准。 这里可以使用这个简单的标准模板,这个标准模板的主要参考revit的SDK的Samples案例以及我自己在公司开发的实践来...

2017-12-02 19:29:45

阅读数:692

评论数:0

Revit二次开发——怎样在类中直接应用WPF窗口

共同精进Revit及编程开发技能兴趣群:660319009 WPF是winform的升级版,在做Revit二次开发,用WPF界面来做会好看且方便快捷好多。那么怎么在Revit二次开发中用到WPF呢?这个也很简单。 在类中,没办法直接添加WPF窗口,只能方便快捷的添加Winform窗口,所以...

2017-11-21 21:03:33

阅读数:814

评论数:2

Dynamo中的Core对应着安装文件里的哪个dll文件

共同精进Revit及编程开发技能兴趣群:660319009 因为想在Python Script脚本中用到Mtah.Random()这个函数,直接用的时候,居然发现报错,然后就意识到肯定是哪个dll没引用进来。 经过反编译,最后发现是需要引用DSCoreNodes.dll这个文件。 直接放上d...

2017-11-08 13:04:45

阅读数:650

评论数:0

Revit中Dynamo编程——利用反编译工具读取Dynamo的ProtoGeometry.dll的代码

共同精进Revit及编程开发技能兴趣群:660319009 上一篇博客讲了怎么用反编译工具,这篇博客直接可以用在实战方面。 我们知道Dynamo好用,其实原因是它里面封装了好多方法,免去我们重复的操作。而RevitAPI又没有那么多方法怎么办?这个时候完全可以借鉴一下Dynamo的ProtoG...

2017-10-27 16:02:26

阅读数:704

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭