年度变更建库软件5.0版本
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

298 lines
7.5 KiB

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;
/// <summary>
/// 输入图层路径
/// </summary>
public List<string> ListInFeatureClassPath
{
get;
set;
}
/// <summary>
/// 图层一
/// </summary>
public string FirstFeatureClassPath
{
get;
set;
}
/// <summary>
/// 图层二
/// </summary>
public string SecondFeatureClassPath
{
get;
set;
}
/// <summary>
/// 图层一
/// </summary>
[System.Xml.Serialization.XmlIgnore]
public IFeatureClass FirstFeatureClass
{
get { return FirstFeatureLayer.FeatureClass; }
}
/// <summary>
/// 图层二
/// </summary>
[System.Xml.Serialization.XmlIgnore]
public IFeatureClass SecondFeatureClass
{
get { return SecondFeatureLayer.FeatureClass; }
}
/// <summary>
/// 图层一
/// </summary>
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;
}
/// <summary>
/// 图层二
/// </summary>
[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;
}
/// <summary>
/// 图层三
/// </summary>
[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);
}
}
/// <summary>
/// 输出图层路径
/// </summary>
public string OutFeatureClassPath
{
get;
set;
}
/// <summary>
/// 容差:单位 米
/// </summary>
public string Tolerance
{
get;
set;
}
/// <summary>
/// 保存属性
/// </summary>
public string PreserveAttributes
{
get;
set;
}
/// <summary>
/// 标签图层路径
/// </summary>
public string LableFeature
{
get;
set;
}
/// <summary>
/// 融合字段
/// </summary>
public List<string> ListDissolveFiledName
{
get;
set;
}
/// <summary>
/// 输入坐标参考Code
/// </summary>
public int InputCoordinateSystemCode
{
get;
set;
}
/// <summary>
/// 输入坐标参考路径
/// </summary>
public string InputCoordinateSystem
{
get;
set;
}
/// <summary>
/// 输入坐标参考
/// </summary>
[System.Xml.Serialization.XmlIgnore]
public ESRI.ArcGIS.Geometry.ISpatialReference InputSpatialReference
{
get;
set;
}
/// <summary>
/// 输出坐标参考路径
/// </summary>
public string OutputCoordinateSystem
{
get;
set;
}
/// <summary>
/// 空间赋值Spatial join关系选择
/// </summary>
public string Match_option
{
get;
set;
}
/// <summary>
/// 是否获取GP工具生成后的图层
/// </summary>
public bool IsGetOutPutFeature
{
get;
set;
}
/// <summary>
/// 坐标参考转换参数
/// </summary>
public ProjectParamtersClass ParamtersClass
{
get;
set;
}
public bool quxiaoxianfenge { get; set; }
/// <summary>
/// 要素转点时:Inside(内部)选项
/// </summary>
public string Inside
{
get;
set;
}
/// <summary>
/// Statistics_Fields
/// </summary>
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
}
}