BIM建筑网
更专业的BIM技术学习网站!


Revit如何提取轴线信息

BIM 软件小技巧: Revit如何提取轴线信息

在Revit里面如何提取当前视图中轴网的信息,例如名称,标高,坐标等等?

这个问题在Revit编程时是非常典型的应用情况。找到目标对象,然后获取目标对象上的信息。

找到目标对象需要使用Revit的过滤机制,最核心的也是比用的类就是FilteredElementCollector类,他提供了添加过滤条件的方法,并且提供方法来获取满足条件的对象集合。

获取对象信息需要用Revit类的属性以及Revit对象的参数值,还有从Element.Location属性获取对象的位置信息。

下面是实例代码如何获取上述信息。

[Transaction(TransactionMode.Manual)]

public class GetAllGrids : IExternalCommand

{

public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)

{

UIApplication uiApp = commandData.Application;

Application app = uiApp.Application;

UIDocument uiDoc = uiApp.ActiveUIDocument;

Document doc = uiDoc.Document;

FilteredElementCollector collector = new FilteredElementCollector(doc,doc.ActiveView.Id);

collector.OfClass(typeof(Grid));

string sInfo = null;

foreach (Element elem in collector)

{

sInfo += "Name = " + elem.Name + ";";

Grid grid = elem as Grid;

LocationCurve locCurve = grid.Location as LocationCurve;

Curve cur = locCurve.Curve;

XYZ ptStart = cur.get_EndPoint(0);

XYZ ptEnd = cur.get_EndPoint(0);

}

TaskDialog.Show("Grid message", sInfo);

return Result.Succeeded;

}

}


微信公众号:xuebim
关注建筑行业BIM发展、研究建筑新技术,汇集建筑前沿信息!
← 微信扫一扫,关注我们+
赞(0) 打赏
BIM建筑网 » Revit如何提取轴线信息

BIM建筑网,更专业的BIM技术学习网站!

关注建筑新动态,分享建筑新技术

联系我们关于BIM建筑网

觉得文章有用就打赏一下小编吧

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

扫码登录

微信「关注」,快捷登录
扫码关注后会自动登录
注册登录代表您已同意《用户许可协议》
账号登录 | 其他登录

|登录

找回密码

|账号登录注册