// Создание линии из пар кодов public static DxfLine Create(List <DxfCodePair> pairs, bool ignoreLineType) { DxfLine line = new DxfLine(); for (int i = 0; i < pairs.Count; i++) { switch (pairs[i].Code) { case 62: line.Color = DxfColor.Create(pairs[i], ignoreLineType); break; case 10: if (pairs[i + 2].Code == 30) { line.StartPoint = DxfDot.Create(pairs.GetRange(i, 3)); i += 2; } else { line.StartPoint = DxfDot.Create(pairs.GetRange(i, 2)); i++; } break; case 11: if ((i + 2) < pairs.Count && pairs[i + 2].Code == 31) { line.EndPoint = DxfEndPoint.Create(pairs.GetRange(i, 3)); i += 2; } else { line.EndPoint = DxfEndPoint.Create(pairs.GetRange(i, 2)); i++; } break; } } if (line.Color == 0 && ignoreLineType) { line.Color = DxfColors.MainOutline; } else if (line.Color == 0 || line.Color == DxfColors.NoColor) { return(null); } CreateRect(line); return(line); }
// создание точки из пар файла DXF public new static DxfFitPoint Create(List <DxfCodePair> pairs) { return(new DxfFitPoint(DxfEndPoint.Create(pairs))); }
public new static DxfMajorAxis Create(List <DxfCodePair> pairs) { return(new DxfMajorAxis(DxfEndPoint.Create(pairs))); }