EaBIM一直以来积极响应国家“十二五”推进建筑业信息化的号召,对建筑领域的信息技术开展深入技术交流和探讨!致力于打造“BIM-建筑师-生态技术”三位一体综合资源交流共享平台,希望为BIM与可持续设计理念及技术的普及做出微小的贡献!!!

EaBIM

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 2294|回复: 48
打印 上一主题 下一主题

澄清创建参考面函数参数含义

[复制链接]

1514

主题

7465

帖子

1万

积分

admin

Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10

积分
12406

社区QQ达人

跳转到指定楼层
楼主
发表于 2014-1-9 11:47:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用API创建族的时候,常常用到创建参考面,可以用 Autodesk.Create.Document.FamilyCreate.NewReferencePlane()方法和NewReferencePlane2() 方法创建. 这里我们只谈第一个函数。因为它有一个向量参数的含义比较模糊。方法二需要指定参考面上的三个点即可。

NewReferencePlane定义如下:


  1. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">[c-sharp] view plaincopy</span>
  2. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">public ReferencePlane NewReferencePlane(  </span>
  3. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    XYZ bubbleEnd,  </span>
  4. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    XYZ freeEnd,  </span>
  5. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    XYZ cutVec,  </span>
  6. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    View pView  </span>
  7. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">)  </span>
复制代码
他可以用两个点外加一个向量在指定的视图上创建参考面。



这里第三个参数的向量在RevitAPI.chm中的解释是:The cut vector apply to reference plane, should perpendicular to the vector (bubbleEnd-freeEnd).    cut vector 的含义好像不是一个专有名词,无法找到解释。这个cutVec向量参数的含义是这个向量必须在需要创建的参考平面的里面,相当于切线向量吧。而不是需要创建参考面的法向量。这一点最容易误解。



知道这个含义就简单了。



例如我们想创建一个水平面上45度斜参考平面。如下参考面。





可以用下面的代码。


  1. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">[c-sharp] view plaincopy</span>
  2. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System;  </span>
  3. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Collections.Generic;  </span>
  4. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Text;  </span>
  5. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Windows.Forms;  </span>
  6. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  7. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using  Autodesk.Revit .DB;  </span>
  8. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit.UI;  </span>
  9. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit .ApplicationServices;  </span>
  10. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit.Attributes ;  </span>
  11. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  12. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  13. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  14. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  [TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)]  </span>
  15. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  [RegenerationAttribute(Autodesk.Revit.Attributes.RegenerationOption.Manual)]  </span>
  16. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">public class RevitCommand : IExternalCommand  </span>
  17. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">{  </span>
  18. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements)  </span>
  19. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    {  </span>
  20. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  21. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      UIApplication app = commandData.Application;  </span>
  22. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      Document doc = app.ActiveUIDocument.Document;  </span>
  23. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      Transaction trans = new Transaction(doc, "ExComm");  </span>
  24. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      trans.Start();  </span>
  25. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  26. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  27. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      // create the reference plane.  </span>
  28. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      XYZ bubbleEnd = new XYZ(5,10,0);  </span>
  29. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      XYZ freeEnd = new XYZ(10,5,0);  </span>
  30. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">        </span>
  31. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      XYZ cutNorm = new XYZ(0,0,1);  </span>
  32. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  33. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  34. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      ReferencePlane rp1 = doc.FamilyCreate.NewReferencePlane(bubbleEnd, freeEnd, cutNorm, doc.ActiveView);  </span>
  35. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      rp1.Name = "my test43";  </span>
  36. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">  </span>
  37. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      trans.Commit();  </span>
  38. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">      </span>
  39. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">        return Result.Succeeded ;  </span>
  40. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">    }  </span>
  41. <span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">}  </span>
复制代码
转自:http://blog.csdn.net/joexiongjin/article/details/6202804 作者:叶雄进
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对
工作时间:工作日的9:00-12:00/13:30-18:00,节假日不在线,请勿留言

7

主题

896

帖子

1515

积分

BIM经理

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

积分
1515
推荐
发表于 2014-2-25 10:32:44 | 只看该作者
(*^__^*) 嘻嘻……

5

主题

851

帖子

1342

积分

BIM经理

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

积分
1342
推荐
发表于 2014-2-20 15:09:45 | 只看该作者
(*^__^*) 嘻嘻……

1514

主题

7465

帖子

1万

积分

admin

Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10

积分
12406

社区QQ达人

推荐
 楼主| 发表于 2014-7-21 15:58:37 | 只看该作者

(*^__^*) 嘻嘻……
工作时间:工作日的9:00-12:00/13:30-18:00,节假日不在线,请勿留言

11

主题

888

帖子

1723

积分

BIM经理

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

积分
1723
9F
发表于 2014-3-10 16:29:41 | 只看该作者
了解下BIM..... ]

4

主题

708

帖子

1142

积分

BIM项目负责人

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

积分
1142
10F
发表于 2014-3-10 16:36:53 | 只看该作者
谢谢BIM大神…

4

主题

723

帖子

1173

积分

BIM项目负责人

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

积分
1173
11F
发表于 2014-3-10 16:45:41 | 只看该作者
谢谢BIM大神…

0

主题

836

帖子

1198

积分

BIM项目负责人

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

积分
1198
15F
发表于 2014-3-11 10:30:20 | 只看该作者
谢谢BIM大神…
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|EaBIM网 ( 苏ICP备2020058923号-1  苏公网安备32011502011255号

GMT+8, 2024-11-27 05:31

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表