打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
RevitAPI: 如何获取RevitLinkInstance链接模型的位置?

在RevitAPI中获取RevitLinkInstance对象然后调用Location方法的时候,发现它返回一个Location对象,该对象没有任何方法可以获取位置。

[csharp] view plain copy
  1. RevitDoc = commandData.Application.ActiveUIDocument.Document;  
  2. var linkFilter = new ElementClassFilter(typeof(RevitLinkInstance));  
  3. FilteredElementCollector linkInstances = new FilteredElementCollector(RevitDoc);  
  4. linkInstances = linkInstances.WherePasses(linkFilter);  
  5. foreach (RevitLinkInstance element in linkInstances)  
  6. {  
  7.     var location = element.Location; //<==无法获取位置信息  
  8. }  

怎么办?

这里我们可以使用Instance.GetTransform()方法。该方法返回的是一个矩阵变换,代表的是链接文件的中心点和当前文件中心点之间的相对位置。代码如下:

[csharp] view plain copy
  1. foreach (RevitLinkInstance element in linkInstances)  
  2. {  
  3.     var transform = element.GetTransform(); //<==获取相对位置关系  
  4.     var location = transform.Origin; //<==原点  
  5. }  


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Safari 浏览器 一键翻译网页
jQuery.contains() 函数详解
如何在客户端验证表单被改变
ZH奶酪:JavaScript调用AngularJS的函数/$scope/变量
Javascript动态绑定事件的简单方法
js常用方法之事件注册
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服