示例#1
0
 public IXbimCurve CreateCurve(IIfcCurve curve, ILogger logger)
 {
     using (new Tracer(LogHelper.CurrentFunctionName(), this._logger, curve))
     {
         return(_engine.CreateCurve(curve, logger));
     }
 }
示例#2
0
 public XbimGrid(IIfcGrid ifcGrid, IXbimGeometryEngine engine)
 {
     _ifcGrid = ifcGrid;
     foreach (var gridAxis in ifcGrid.UAxes)
     {
         IXbimCurve curve = engine.CreateCurve(gridAxis.AxisCurve);
         _axis.Add(gridAxis, curve);
     }
     foreach (var gridAxis in ifcGrid.VAxes)
     {
         IXbimCurve curve = engine.CreateCurve(gridAxis.AxisCurve);
         _axis.Add(gridAxis, curve);
     }
     foreach (var gridAxis in ifcGrid.WAxes)
     {
         IXbimCurve curve = engine.CreateCurve(gridAxis.AxisCurve);
         _axis.Add(gridAxis, curve);
     }
 }
示例#3
0
 public void CompositeCurveBadPrecisionTest()
 {
     using (var er = new EntityRepository <IIfcCompositeCurve>(nameof(CompositeCurveBadPrecisionTest)))
     {
         Assert.IsTrue(er.Entity != null, "No IIfcCompositeProfileDef found");
         var wire = geomEngine.CreateWire(er.Entity, logger);
         Assert.IsTrue(wire.Edges.Count == 12, "This wire should have 12 edges");
         var curve = geomEngine.CreateCurve(er.Entity, logger);
         Assert.AreEqual(curve.Length, wire.Length, 0.999);
     }
 }
示例#4
0
 public IXbimCurve CreateCurve(IIfcCurve curve)
 {
     return(_engine.CreateCurve(curve));
 }