首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Xbim从IFC文件中检索几何图形?或者,除了这项任务,还有其他选择吗?

如何使用Xbim从IFC文件中检索几何图形?或者,除了这项任务,还有其他选择吗?
EN

Stack Overflow用户
提问于 2019-06-14 10:59:27
回答 1查看 1.7K关注 0票数 2

我想从原始IFC文件中检索数据。我正在用Xbim试试这个。我可以检索元素,但不能获得特定的几何数据。我需要位置,边界框。

可以用xbim来完成这个任务吗?有什么替代xbim的方法吗?

在我的例子中,国际金融公司包括墙壁,开口,板,梁和螺柱。我需要他们的相关几何图形和位置。横梁和螺柱都有钻孔。但这些钻孔不属于任何国际金融公司实体,如IfcOpeningElement或ifc空洞。

,我有什么办法可以得到这些洞的几何形状吗?

我只需要访问IFC实体的几何数据.

我还尝试使用Revit来获取data.But --转换中存在问题,就像它在很大程度上依赖于Ifc实体与revit类别的映射是如何present.For的--所有其他模型ifc元素都映射到不同的类别。

在revit中,我导入了ifc文件并为revit创建了加载项。这些加载项可以读取所有元素并获取它们的几何数据。还有其他这样的应用程序,但比revit重一些,我可以尝试构建这样的加载项,应用程序必须正确地对元素进行分类?

EN

回答 1

Stack Overflow用户

发布于 2019-07-15 15:01:52

Revit是一个很重的程序,使用xbim代替,尝试下面的代码来获取几何信息:

代码语言:javascript
复制
using (var model = IfcStore.Open("ifc_file.ifc"))
{
    Xbim3DModelContext context = new Xbim3DModelContext(model);
    context.CreateContext();

    List<XbimShapeGeometry> geometrys = context.ShapeGeometries().ToList();
    List<XbimShapeInstance> instances = context.ShapeInstances().ToList();

    //Check all the instances
    foreach (var instance in instances)
    {
        var transfor = instance.Transformation; //Transformation matrix (location point inside)

        XbimShapeGeometry geometry = context.ShapeGeometry(instance);   //Instance's geometry
        XbimRect3D box = geometry.BoundingBox; //bounding box you need

        byte[] data = ((IXbimShapeGeometryData)geometry).ShapeData;

        //If you want to get all the faces and trinagulation use this
        using (var stream = new MemoryStream(data))
        {
            using (var reader = new BinaryReader(stream))
            {
                var mesh = reader.ReadShapeTriangulation();

                List<XbimFaceTriangulation> faces = mesh.Faces as List<XbimFaceTriangulation>;
                List<XbimPoint3D> vertices = mesh.Vertices as List<XbimPoint3D>;
            }
        }
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56596815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档