using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Construction.BatchCreateMap
{
///
/// 垂直断距计算参数
///
public class FaultAmplitudeParameter
{
[Category("\t\t数据"), DisplayName("\t\t\t\t\t数据文件"), ReadOnly(true)]
public string SourceFile { get; set; }
[Category("\t\t数据"), DisplayName("\t\t\t\t输出文件"), ReadOnly(true), Browsable(false)]
public string DestFile { get; set; }
[Category("\t\t数据"), DisplayName("\t\t\t统计数据"), ReadOnly(true), Browsable(false)]
public string StatisticFile { get; set; }
[Category("\t\t数据"), DisplayName("\t\t断层图层")]
public string FaultLayer { get; set; } = "断层";
[Category("\t\t数据"), DisplayName("\t断层名称筛选")]
public String FaultNames { get; set; } = string.Empty;
[Category("\t计算方式"), DisplayName("\t\t\t等间隔/测线")]
public bool IsCalculateByStep { get; set; } = true;
[Category("\t计算方式"), DisplayName("\t\t计算间隔")]
public double CalculateStep { get; set; } = 100;
[Category("\t计算方式"), DisplayName("\t测线图层")]
public string SurveyLayer { get; set; } = "测线";
[Category("\t计算方式"), DisplayName("局部走向")]
//[TypeConverter(typeof(CustomBooleanConverter))]
public bool LocalFltDirect { get; set; } = false;
[Category("\t计算方式"), DisplayName("计算倾角")]
//[TypeConverter(typeof(CustomBooleanConverter))]
public bool WithIncline { get; set; } = false;
[Category("显示设置"), DisplayName("\t倾角系数")]
public double InclineScale { get; set; } = 10;
[Category("显示设置"), DisplayName("\t\t\t\t\t\t高低值分界")]
public double DivideValue { get; set; } = 10;
[Category("显示设置"), DisplayName("\t\t\t\t\t柱子宽度")]
public double PillarWidth { get; set; } = 20;
[Category("显示设置"), DisplayName("\t\t\t\t柱子高度系数")]
public double PillarScale { get; set; } = 10;
[Category("显示设置"), DisplayName("\t\t\t文字高度")]
public double TextHeight { get; set; } = 5;
[Category("显示设置"), DisplayName("\t\t高值颜色")]
public int HeighColor { get; set; } = ColorTranslator.ToWin32(Color.Red);
[Category("显示设置"), DisplayName("\t低值颜色")]
public int LowColor { get; set; } = ColorTranslator.ToWin32(Color.Blue);
[Category("显示设置"), DisplayName("\t倾角颜色")]
public int InclineColor { get; set; } = ColorTranslator.ToWin32(Color.Blue);
public FaultAmplitudeParameter() { ; }
/////
///// bool型数据属性转换
/////
//private class CustomBooleanConverter : BooleanConverter
//{
// ///
// public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
// {
// if (destinationType == typeof(string) && value is bool)
// {
// return (bool)value ? "是" : "否";
// }
// return base.ConvertTo(context, culture, value, destinationType);
// }
// ///
// /// Converts from.
// ///
// /// The context.
// /// The culture.
// /// The value.
// ///
// public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
// {
// if (value is string)
// {
// string strValue = ((string)value).Trim().ToLower();
// if (strValue == "是" || strValue == "true")
// {
// return true;
// }
// else if (strValue == "否" || strValue == "false")
// {
// return false;
// }
// }
// return base.ConvertFrom(context, culture, value);
// }
//}
}
}