EaBIM
标题:
澄清创建参考面函数参数含义
[打印本页]
作者:
萧闫子
时间:
2014-1-9 11:47
标题:
澄清创建参考面函数参数含义
用API创建族的时候,常常用到创建参考面,可以用 Autodesk.Create.Document.FamilyCreate.NewReferencePlane()方法和NewReferencePlane2() 方法创建. 这里我们只谈第一个函数。因为它有一个向量参数的含义比较模糊。方法二需要指定参考面上的三个点即可。
NewReferencePlane定义如下:
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">[c-sharp] view plaincopy</span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">public ReferencePlane NewReferencePlane( </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ bubbleEnd, </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ freeEnd, </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ cutVec, </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> View pView </span>
<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度斜参考平面。如下参考面。
可以用下面的代码。
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">[c-sharp] view plaincopy</span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Collections.Generic; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Text; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using System.Windows.Forms; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit .DB; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit.UI; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit .ApplicationServices; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">using Autodesk.Revit.Attributes ; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> [TransactionAttribute(Autodesk.Revit.Attributes.TransactionMode.Manual)] </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> [RegenerationAttribute(Autodesk.Revit.Attributes.RegenerationOption.Manual)] </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">public class RevitCommand : IExternalCommand </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">{ </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements) </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> { </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> UIApplication app = commandData.Application; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> Document doc = app.ActiveUIDocument.Document; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> Transaction trans = new Transaction(doc, "ExComm"); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> trans.Start(); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> // create the reference plane. </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ bubbleEnd = new XYZ(5,10,0); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ freeEnd = new XYZ(10,5,0); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> XYZ cutNorm = new XYZ(0,0,1); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> ReferencePlane rp1 = doc.FamilyCreate.NewReferencePlane(bubbleEnd, freeEnd, cutNorm, doc.ActiveView); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> rp1.Name = "my test43"; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> trans.Commit(); </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> return Result.Succeeded ; </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; "> } </span>
<span style="color: rgb(105, 105, 105); font-family: 'Microsoft Yahei', Simsun; ">} </span>
复制代码
转自:
http://blog.csdn.net/joexiongjin/article/details/6202804
作者:叶雄进
作者:
木鬼
时间:
2014-2-20 15:09
(*^__^*) 嘻嘻……
作者:
宇航员
时间:
2014-2-25 10:32
(*^__^*) 嘻嘻……
作者:
野风
时间:
2014-2-25 10:35
顶起来…………
作者:
长风
时间:
2014-3-4 13:57
顶!!!!!!!!!!
作者:
龙龙..!
时间:
2014-3-10 16:21
顶!!!!!!!!!!!!
作者:
爬爬``PA
时间:
2014-3-10 16:26
谢谢老师…
作者:
We晕晕
时间:
2014-3-10 16:29
了解下BIM..... ]
作者:
矮矮
时间:
2014-3-10 16:36
谢谢BIM大神…
作者:
茶神idg
时间:
2014-3-10 16:45
谢谢BIM大神…
作者:
大洪p1938
时间:
2014-3-10 16:52
非常感谢!!
作者:
AK47
时间:
2014-3-10 17:12
谢谢!!!
帮顶……
作者:
风吹枫落
时间:
2014-3-10 17:17
顶!!!!!!!!!!
作者:
苦田辛君
时间:
2014-3-11 10:30
谢谢BIM大神…
作者:
飞天舞
时间:
2014-3-11 10:32
顶!!!!!!!!!!!!
作者:
月之影
时间:
2014-3-11 10:33
了解下BIM.....
作者:
熊猫
时间:
2014-3-13 12:02
顶!!!!!!!!!!
作者:
chen_0003
时间:
2014-3-13 12:07
(*^__^*) 嘻嘻……
作者:
欧宝
时间:
2014-3-13 12:08
路过!!!
不发表意见……
作者:
順順
时间:
2014-3-13 12:18
顶!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
codywu
时间:
2014-3-13 12:23
(*^__^*) 嘻嘻……
作者:
中华!
时间:
2014-3-14 11:00
顶!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
V.__
时间:
2014-3-16 12:02
不明觉厉.
作者:
影馨
时间:
2014-3-18 10:58
顶......
楼下跟上.....
作者:
欧宝
时间:
2014-3-18 11:03
路过!!!
不发表意见……
作者:
妮可
时间:
2014-3-20 10:54
路过!!!
帮顶……
作者:
莞人莞事
时间:
2014-3-20 10:59
路过!!!
帮顶……
作者:
波罗友
时间:
2014-3-20 11:01
顶!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
极HONDA速
时间:
2014-3-26 15:49
(*^__^*) 嘻嘻……
作者:
风吹枫落
时间:
2014-3-26 15:53
顶!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
大洪p1938
时间:
2014-3-28 09:45
路过!!!
帮顶……
作者:
dison
时间:
2014-3-28 09:48
路过!!!
不发表意见……
作者:
极HONDA速
时间:
2014-3-28 09:53
顶起来…………
作者:
沧海冷月
时间:
2014-3-28 09:55
(*^__^*) 嘻嘻……
作者:
大头佬
时间:
2014-3-31 16:35
顶!!!!!!!!!!
作者:
拉登
时间:
2014-3-31 16:38
(*^__^*) 嘻嘻……
作者:
开始了d
时间:
2014-5-6 10:44
顶!!!!!!!!!!
作者:
孙雅
时间:
2014-6-12 09:46
(*^__^*) 嘻嘻……
作者:
大洪p1938
时间:
2014-6-17 14:36
顶!!!!!!!!!!
作者:
极HONDA速
时间:
2014-6-17 14:42
路过!!!
帮顶……
作者:
老朽
时间:
2014-6-17 14:48
路过!!!
不发表意见……
作者:
乖乖仔
时间:
2014-6-17 14:52
顶!!!!!!!!!!
作者:
宇航员
时间:
2014-6-17 15:04
顶......
楼下跟上.....
作者:
宇航员
时间:
2014-6-17 15:08
路过!!!
帮顶……
作者:
萧闫子
时间:
2014-7-21 15:58
(*^__^*) 嘻嘻……
作者:
萧闫子
时间:
2014-7-22 10:06
家哟
作者:
萧闫子
时间:
2014-7-23 10:08
感谢分享
作者:
萧闫子
时间:
2014-8-6 10:37
感谢分享
作者:
萧闫子
时间:
2014-8-10 10:26
谢谢BIM大神…
欢迎光临 EaBIM (https://eabim.net/)
Powered by Discuz! X3.2