public IXbimCurve CreateCurve(IIfcPolyline ifcPolyline, ILogger logger) { using (new Tracer(LogHelper.CurrentFunctionName(), this._logger, ifcPolyline)) { return(_engine.CreateCurve(ifcPolyline, logger)); } }
private static void Report(IIfcPolyline bound, TextHighliter sb) { sb.Append($"-LAYER M {bound.Points.Count} ", Brushes.Black); sb.Append("3DPOLY", Brushes.Black); var first = bound.Points.FirstOrDefault(); IIfcCartesianPoint last = null; foreach (var ifcCartesianPoint in bound.Points) { WritePointCoord(sb, ifcCartesianPoint); last = ifcCartesianPoint; } if (false && last != null) { if (!last.Equals(first)) { sb.Append($";open polyloop", Brushes.Black); } } sb.Append($"", Brushes.Black); sb.Append($"-HYPERLINK I O l #{bound.EntityLabel}", Brushes.Black); sb.Append($"", Brushes.Black); sb.Append($"", Brushes.Black); }
public static Dictionary <int, LinearPath> DicLinPathOfProductsGet(List <IIfcProduct> lstProduct) { Dictionary <int, LinearPath> dicLinPath = new Dictionary <int, LinearPath>(); for (int i = 0; i < lstProduct.Count; i++) { IIfcRepresentationItem repItem = lstProduct[i].Representation.Representations.First.Items.First; IIfcProfileDef profile = (repItem as IIfcExtrudedAreaSolid).SweptArea; IIfcCurve curve = (profile as IIfcArbitraryClosedProfileDef).OuterCurve; IIfcPolyline pLine = curve as IfcPolyline; IItemSet <IIfcCartesianPoint> ptSet = pLine.Points; List <Point3D> lstPt = new List <Point3D>(); for (int j = 0; j < ptSet.Count; j++) { lstPt.Add(new Point3D(ptSet[j].X, ptSet[j].Y, ptSet[j].Z)); } dicLinPath.Add(lstProduct[i].EntityLabel, new LinearPath(lstPt)); } return(dicLinPath); }
public IXbimCurve CreateCurve(IIfcPolyline ifcPolyline) { return(_engine.CreateCurve(ifcPolyline)); }
public IXbimFace CreateFace(IIfcPolyline pline) { return(_engine.CreateFace(pline)); }