/*------------------------------------------------------------------------- * 功能描述:GeometryLocation * 作者:xulisong * 创建时间: 2019/6/19 16:43:58 * 版本号:v1.0 * -------------------------------------------------------------------------*/ using System; using System.Collections.Generic; namespace JBIM.Definition { /// <summary> /// 定位类型 /// </summary> public enum LocationType { Point=0, Line, Arc, Common } public class GeometryLocation { public GeometryLocation(LocationType type) { Type = type; Points = new List<XYZ>(); } public LocationType Type { get; set; } public List<XYZ> Points { get;private set; } public static GeometryLocation CreatePointLocation(XYZ xyz) { if (xyz == null) return null; var result = new GeometryLocation(LocationType.Point); try { result.Points.Add(xyz); } catch (Exception e) { Console.WriteLine(e); } return result; } public static GeometryLocation CreateLineLocation(List<XYZ> xyzes) { var result = new GeometryLocation(LocationType.Line); result.Points.AddRange(xyzes); return result; } public static GeometryLocation CreateArcLocation(List<XYZ> xyzes) { var result = new GeometryLocation(LocationType.Arc); result.Points.AddRange(xyzes); return result; } } }