【发布时间】:2017-07-02 03:38:32
【问题描述】:
我正在使用以下 C# 代码从 ifc4 文件访问几何数据。该文件仅包含使用 Revit 2016 创建的墙。我正在使用 Xbim 库。这是我的代码:
class Program
{
private static readonly ILog logger =
LogManager.GetLogger(typeof(Program));
static string _ifcFile = @"C:\Examples\OneWall.ifc";
static void Main(string[] args)
{
BasicConfigurator.Configure();
IfcStore model = IfcStore.Open(_ifcFile);
Xbim3DModelContext context = new Xbim3DModelContext(model);
context.CreateContext();
XbimMeshGeometry3D mesh = mesh = (XbimMeshGeometry3D)context.ShapeGeometryMeshOf(context.ShapeInstances().FirstOrDefault());
//The rest of my code
}
}
我收到以下错误。我正在使用 Visual Studio 2015。
1226 [1] 调试 Xbim.Geometry.Engine.Interop.XbimCustomAssemblyResolver (null) - 从以下位置加载程序集:C:\Examples\ifcWall\ifcWall\bin\Debug\x86\Xbim.Geometry.Engine32.dll 1404 [1] 调试 Xbim.Geometry.Engine.Interop.XbimCustomAssemblyResolver (null) - 从 C:\Examples\ifcWall\ifcWall\bin\Debug\x86\Xbim.Geometry.Engine32.dll 加载程序集
未处理的异常:System.Exception:无效的几何命令
在 C:\BuildAgent\work\860c3b913b6c647f\Xbim.ModelGeometry.Scene\XbimMeshGeometry3D.cs:line 669 中的 Xbim.ModelGeometry.Scene.XbimMeshGeometry3D.Read(String data, Nullable1 trans) in c:\BuildAgent\work\860c3b913b6c647f\Xbim.ModelGeometry.Scene\XbimMeshGeometry3D.cs:line 219
at Xbim.ModelGeometry.Scene.XbimMeshGeometry3D.Add(String mesh, Int16 productTypeId, Int32 productLabel, Int32 geometryLabel, Nullable1 transform, Int16 modelId)
在 Xbim.ModelGeometry.Scene.Xbim3DModelContext.ShapeGeometryMeshOf(XbimShapeInstance shapeInstance) 在 c:\BuildAgent\work\860c3b913b6c647f\Xbim.ModelGeometry.Scene\Xbim3DModelContext.cs:line 1525
在 C:\Users\karshenas\Documents\Courses\CEEN6840\VS_Projects\ifcWall\ifcWall\Program.cs: 26 行中的 ifcWall.Program.Main(String[] args) 处
感谢任何帮助修复错误。
【问题讨论】: