public void BIM_Logo_LetterB_Test() { var xbimGeometryCreator = new XbimGeometryEngine(); using (var eventTrace = LoggerFactory.CreateEventTrace()) { using (var m = IfcStore.Open("SolidTestFiles\\BIM Logo-LetterB.ifc")) { var eas = m.Instances[88] as IIfcCsgSolid; Assert.IsTrue(eas != null, "No CSG Solid found"); var solid = xbimGeometryCreator.Create(eas); Assert.IsTrue(solid is IXbimSolid); Assert.IsTrue(eventTrace.Events.Count == 0); //no events should have been raised from this call // IfcCsgTests.GeneralTest(solid); // Assert.IsTrue(solid.Faces.Count() == 15, "Letter B should have 15 faces"); // var xbimTessellator = new XbimTessellator(m,XbimGeometryType.PolyhedronBinary); // Assert.IsTrue(xbimTessellator.CanMesh(solid));//if we can mesh the shape directly just do it // var shapeGeom = xbimTessellator.Mesh(solid); var shapeGeom = xbimGeometryCreator.CreateShapeGeometry((IXbimSolid)solid, m.ModelFactors.Precision, m.ModelFactors.DeflectionTolerance, m.ModelFactors.DeflectionAngle, XbimGeometryType.PolyhedronBinary); } } }
public void BIM_Logo_LetterM_Test() { var xbimGeometryCreator = new XbimGeometryEngine(); using (var eventTrace = LoggerFactory.CreateEventTrace()) { using (var m = new XbimModel()) { m.CreateFrom("SolidTestFiles\\BIM Logo-LetterM.ifc", null, null, true, true); var eas = m.Instances[57] as IfcSurfaceCurveSweptAreaSolid; Assert.IsTrue(eas != null, "No IfcSurfaceCurveSweptArea Solid found"); var solid = (IXbimSolid)xbimGeometryCreator.Create(eas); Assert.IsTrue(eventTrace.Events.Count == 0); //no events should have been raised from this call IfcCsgTests.GeneralTest(solid); Assert.IsTrue(solid.Faces.Count() == 26, "Letter M should have 26 faces"); var xbimTessellator = new XbimTessellator(m, XbimGeometryType.PolyhedronBinary); // Assert.IsTrue(xbimTessellator.CanMesh(solid));//if we can mesh the shape directly just do it // var shapeGeom = xbimTessellator.Mesh(solid); var shapeGeom = xbimGeometryCreator.CreateShapeGeometry(solid, m.ModelFactors.Precision, m.ModelFactors.DeflectionTolerance, m.ModelFactors.DeflectionAngle, XbimGeometryType.PolyhedronBinary); } } }