using ESRI.ArcGIS.Carto; using ESRI.ArcGIS.Geodatabase; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace IDEParameter { public class GPParamClass { private string strFirstFeatureLayer; private string strSecondFeatureLayer; private string strThirdFeatureLayer; private IFeatureLayer secondFeatureLayer; private IFeatureLayer thirdFeatureLayer; private IFeatureLayer firstFeatureLayer; /// /// 输入图层路径 /// public List ListInFeatureClassPath { get; set; } /// /// 图层一 /// public string FirstFeatureClassPath { get; set; } /// /// 图层二 /// public string SecondFeatureClassPath { get; set; } /// /// 图层一 /// [System.Xml.Serialization.XmlIgnore] public IFeatureClass FirstFeatureClass { get { return FirstFeatureLayer.FeatureClass; } } /// /// 图层二 /// [System.Xml.Serialization.XmlIgnore] public IFeatureClass SecondFeatureClass { get { return SecondFeatureLayer.FeatureClass; } } /// /// 图层一 /// public string StrFirstFeatureLayer { get { return strFirstFeatureLayer; } set => strFirstFeatureLayer = value; } [System.Xml.Serialization.XmlIgnore] public IFeatureLayer FirstFeatureLayer { get { firstFeatureLayer = KGIS.Framework.AE.GeoDBAPI.DeSerialzedPersist(strFirstFeatureLayer) as IFeatureLayer; return firstFeatureLayer; } set { try { firstFeatureLayer = value; strFirstFeatureLayer = KGIS.Framework.AE.GeoDBAPI.SerialzedPersist(value); } catch (Exception ex) { Console.WriteLine("qqq"); Console.WriteLine(ex.Message); } } } [System.Xml.Serialization.XmlIgnore] public IFeatureLayer FirstFeatureLayer2 { get; set; } public string StrSecondFeatureLayer { get { return strSecondFeatureLayer; } set => strSecondFeatureLayer = value; } /// /// 图层二 /// [System.Xml.Serialization.XmlIgnore] public IFeatureLayer SecondFeatureLayer { get { secondFeatureLayer = KGIS.Framework.AE.GeoDBAPI.DeSerialzedPersist(strSecondFeatureLayer) as IFeatureLayer; return secondFeatureLayer; } set { secondFeatureLayer = value; StrSecondFeatureLayer = KGIS.Framework.AE.GeoDBAPI.SerialzedPersist(value); } } public string StrThirdFeatureLayer { get { return strThirdFeatureLayer; } set => strThirdFeatureLayer = value; } /// /// 图层三 /// [System.Xml.Serialization.XmlIgnore] public IFeatureLayer ThirdFeatureLayer { get { thirdFeatureLayer = KGIS.Framework.AE.GeoDBAPI.DeSerialzedPersist(strThirdFeatureLayer) as IFeatureLayer; return thirdFeatureLayer; } set { thirdFeatureLayer = value; StrThirdFeatureLayer = KGIS.Framework.AE.GeoDBAPI.SerialzedPersist(value); } } /// /// 输出图层路径 /// public string OutFeatureClassPath { get; set; } /// /// 容差:单位 米 /// public string Tolerance { get; set; } /// /// 保存属性 /// public string PreserveAttributes { get; set; } /// /// 标签图层路径 /// public string LableFeature { get; set; } /// /// 融合字段 /// public List ListDissolveFiledName { get; set; } /// /// 输入坐标参考Code /// public int InputCoordinateSystemCode { get; set; } /// /// 输入坐标参考路径 /// public string InputCoordinateSystem { get; set; } /// /// 输入坐标参考 /// [System.Xml.Serialization.XmlIgnore] public ESRI.ArcGIS.Geometry.ISpatialReference InputSpatialReference { get; set; } /// /// 输出坐标参考路径 /// public string OutputCoordinateSystem { get; set; } /// /// 空间赋值Spatial join关系选择 /// public string Match_option { get; set; } /// /// 是否获取GP工具生成后的图层 /// public bool IsGetOutPutFeature { get; set; } /// /// 坐标参考转换参数 /// public ProjectParamtersClass ParamtersClass { get; set; } public bool quxiaoxianfenge { get; set; } /// /// 要素转点时:Inside(内部)选项 /// public string Inside { get; set; } /// /// Statistics_Fields /// public object Statistics_Fields { get; set; } public string Where_clause { get; set; } public EnumGPType GPType { get; set; } public string FcName { get; set; } public string Overlap_type { get; set; } public string Search_radius { get; set; } public string Join_type { get; set; } public bool JOIN_ONE_TO_ONE { get; set; } public bool Multi_part { get; set; } public string TempGDBPath { get; set; } public string XZQDM { get; set; } } public enum EnumGPType { Default, Dissolve, Union, FcToFc, Intersect, Erase, PolygonToLine, UnsplitLine, SelectLayerByLocation, SelectLayerByAttribute, MultipartToSinglePath, SpatialJoin, Get20XDLTB, Identify, BGTBYCL, YBG, CZCYCL, CZCBG, XZQYCL, XZQBG, CJDCQYCL, CJDCQBG } }