using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; namespace MetroGauges.General { /// /// 竖曲线凹凸情况 /// public enum Vertical { /// /// 凸曲线 /// [Description("凸曲线")] Convex = 0, /// /// 凹曲线 /// [Description("凹曲线")] Concave = 1 } /// /// 车辆结构 /// public enum Structure { /// /// 整体焊接 /// [Description("整体焊接")] Integral = 0, /// /// 模块拼装 /// [Description("模块拼装")] Module = 1 } /// /// 计算断面位置 /// public enum Pin { /// /// 中心销内 /// [Description("中心销内")] Inside=0, /// /// 中心销外 /// [Description("中心销外")] Outside = 1 } /// /// 车辆轮廓控制点位置 /// public enum PositionI { /// /// 受电弓 /// [Description("受电弓")] Pantograph = 0, /// /// 车体 /// [Description("车体")] Body = 1, /// /// 转向架构架 /// [Description("转向架构架")] BogieFrame = 2, /// /// 簧下部分 /// [Description("簧下部分")] Unsprung = 3, /// /// 踏面 /// [Description("踏面")] Tread = 4, /// /// 轮缘 /// [Description("轮缘")] Rim = 5, /// /// 受流器 /// [Description("受流器")] Collector = 6, /// /// 其他 /// [Description("不可用")] INVAIL = 7 } /// /// 车辆限界控制点位置 /// public enum PositionII { /// /// 受电弓 /// [Description("受电弓")] Pantograph = 0, /// /// 车体顶部 /// [Description("车体顶部")] TopBody = 1, /// /// 车体底架边梁以上 /// [Description("车体底架边梁以上")] UpChassis = 2, /// /// 车体底架边梁及以下 /// [Description("车体底架边梁及以下")] LowChassis = 3, /// /// 转向架 /// [Description("转向架")] Bogie = 4, /// /// 车下吊挂 /// [Description("车下轨内吊挂")] InnerBodyHanger = 5, /// /// 车下吊挂 /// [Description("车下轨外吊挂")] OuterBodyHanger = 6, /// /// 轮缘 /// [Description("轮对")] Wheelset = 7, ///// ///// 车下轨内 ///// //[Description("车下轨内")] //InnerOthers = 8, ///// ///// 车下轨内 ///// //[Description("车下轨内")] //OuterOthers = 9, /// /// 无 /// [Description("不可用")] INVAIL = 10 } /// /// 工况 /// public enum WorkCondition { /// /// 空载 /// [Description("空载")] AW0 = 0, /// /// 座客荷载 /// [Description("座客荷载")] AW1 = 1, /// /// 定员荷载(6人/m2) /// [Description("定员荷载")] AW2 = 2, /// /// 超员荷载(9人/m2) /// [Description("超员荷载")] AW3 = 3 } /// /// 详细车型分类 /// public enum DMetro { [Description("A1型车")] A1 = 0, [Description("A2型车")] A2 = 1, [Description("B1型车")] B1 = 2, [Description("B2型车")] B2 = 3 } /// /// 通常车型分类 /// public enum NMetro { [Description("A型车")] A = 0, [Description("B型车")] B = 1 } /// /// 道床类型 /// public enum Ballast { /// /// 整体 /// [Description("整体")] Monolithic = 0, /// /// 碎石 /// [Description("碎石")] Gravel = 1 } /// /// 物理性质 /// public enum Physics { /// /// 柔性 /// [Description("柔性")] Flexibility = 0, /// /// 刚性 /// [Description("刚性")] Inflexibility = 1 } /// /// 线型 /// public enum CurveType { /// /// 直线 /// [Description("直线")] Straight = 0, /// /// 曲线 /// [Description("曲线")] Curve = 1 } /// /// 运行环境 /// public enum Environment { /// /// 隧道 /// [Description("隧道")] Tunnel = 0, /// /// 高架 /// [Description("高架")] Elevated = 1, } /// /// 高架受电弓高度 /// public enum ElvateHeight { /// /// 高架4400mm /// [Description("高架4400mm")] Elevated_4400 = 0, /// /// 高架5000mm /// [Description("高架5000mm")] Elevated_5000 = 1 } /// /// 高低调节阀 /// public enum HeightValve { /// /// 两点高度阀 /// [Description("两点高度阀")] Two = 0, /// /// 三点高度阀 /// [Description("三点高度阀")] Three = 1, /// /// 四点高度阀 /// [Description("四点高度阀")] Four = 2 } /// /// 超高值 /// public enum SuperEleValue { /// /// 通常120mm /// [Description("120mm")] Normal = 0, /// /// 时速120km/h,150mm /// [Description("150mm")] HighSpeed = 1 } /// /// 超高调节方式 /// public enum SuperElevSet { /// /// 仅调节外轨 /// [Description("仅调节外轨")] OneSide = 0, /// /// 调节内外轨 /// [Description("调节内外轨")] TwoSides = 1 } /// /// 地点 /// public enum Location { /// /// 站台 /// [Description("站台")] Platform = 0, /// /// 区间 /// [Description("区间")] Region = 1 } /// /// 方向 /// public enum HorizonDirection { /// /// 左转 /// [Description("左转")] Left = 0, /// /// 右转 /// [Description("右转")] Right = 1 } /// /// 受流器状态 /// public enum CollectorStatus { /// /// 上受流切除向上 /// [Description("上受流切除向上")] Upper = 0, /// /// 下受流释放反弹量 /// [Description("下受流释放反弹量")] Lower = 1 } /// /// 枚举类的扩展类 /// public static class GetDesc { public static string GetDescription(this Enum obj) { return GetDescription(obj, false); } private static string GetDescription(this Enum obj, bool isTop) { //if (obj == null) //{ // return string.Empty; //} try { Type _enumType = obj.GetType(); DescriptionAttribute dna = null; if (isTop) { dna = (DescriptionAttribute)Attribute.GetCustomAttribute(_enumType, typeof(DescriptionAttribute)); } else { FieldInfo fi = _enumType.GetField(Enum.GetName(_enumType, obj)); dna = (DescriptionAttribute)Attribute.GetCustomAttribute(fi, typeof(DescriptionAttribute)); } if (dna != null && string.IsNullOrEmpty(dna.Description) == false) return dna.Description; } catch { return string.Empty; } return obj.ToString(); } } /// /// 超高设置 /// public enum SuperelevationSet { /// /// 仅调节外轨 /// [Description("仅调节外轨")] Semi = 0, /// /// 调节内外轨 /// [Description("调节内外轨")] Full = 1, } }