Revit 二次开发——创建轴网(第九期)

2022-04-21 12:09:20 浏览数 (1)

这期我们来讲如何通过二次开发创建轴网。

revit API提供了两种轴网的创建,一种是创建曲线轴网:

代码语言:javascript复制
Create(Document, Arc)

另一种是创建直线轴网:

代码语言:javascript复制
Create(Document, Line)

创建曲线轴网的方式和直线一样,还不多见,所以小编主要介绍如何创建直线轴网。


创建轴网的代码很简单,不多说,直接上代码。

代码语言:javascript复制
 Grid gg = Grid.Create(doc, Line.CreateBound(new XYZ(0, 0, 0), new XYZ(0, 2000, 0)));

详细解释一下这行代码的意思:

Grid.Create是创建轴网;

括号里面是重载;

Line.CreateBound是创建直线的两个端点;

(new XYZ(0, 0, 0), new XYZ(0, 2000, 0))是两个端点的坐标;

要想给轴网起个名字的话用 gg.Name = "A";


下面示意一下如何去画一整片轴网(同样这里要自己复制模板):

代码语言:javascript复制
 Grid g1 = Grid.Create(doc, Line.CreateBound(new XYZ(100, 0, 0), new XYZ(100, 2000, 0)));
            g1.Name = "A";
            for (int i = 200; i < 2000; i  = 100)
            {
                 g1 = Grid.Create(doc, Line.CreateBound(new XYZ(i, 0, 0), new XYZ(i, 2000, 0)));
            }
            Grid g2 = Grid.Create(doc, Line.CreateBound(new XYZ(0, 100, 0), new XYZ(2000, 100, 0)));
            g2.Name = "1";
            for (int j = 200; j < 2000; j  = 100)
            {
                 g2 = Grid.Create(doc, Line.CreateBound(new XYZ(0, j, 0), new XYZ(2000, j, 0)));
            }

这里就是利用两个循环来画出一整片等距的轴网,并且规定了第一根轴网的命名,之后的轴网名字会自动改变。


来看一下效果吧:

好啦,基本的讲解就到这咯!最后别忘了


一纸清墨书过往,谁人勘破这离殇。

精讲Revit二次开发,望与君交。

0 人点赞