1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- /*-------------------------------------------------------------------------
- * 功能描述: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;
- }
- }
- }
|