|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
using ESRI.ArcGIS.Geometry;
|
|
|
|
|
|
|
|
|
|
namespace Kingo.Plugin.MakeTaskPackage.Entity
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 瓦片实体
|
|
|
|
|
/// </summary>
|
|
|
|
|
public class TileInfo
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 瓦片范围
|
|
|
|
|
/// </summary>
|
|
|
|
|
public IEnvelope Bound { get; private set; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 级别
|
|
|
|
|
/// </summary>
|
|
|
|
|
public int Level { get; private set; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 行号
|
|
|
|
|
/// </summary>
|
|
|
|
|
public int Row { get; private set; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 列
|
|
|
|
|
/// </summary>
|
|
|
|
|
public int Column { get; private set; }
|
|
|
|
|
|
|
|
|
|
public double Resolution { get; set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 裁剪倍数
|
|
|
|
|
/// </summary>
|
|
|
|
|
public int CutMultiple { get; set; }
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 瓦片数据
|
|
|
|
|
/// </summary>
|
|
|
|
|
public byte[] Data { get; set; }
|
|
|
|
|
|
|
|
|
|
public double XMax { get; set; }
|
|
|
|
|
public double XMin { get; set; }
|
|
|
|
|
public double YMax { get; set; }
|
|
|
|
|
public double YMin { get; set; }
|
|
|
|
|
|
|
|
|
|
public TileInfo(IEnvelope bound, int level, int row, int col, int cutMultiple = 1)
|
|
|
|
|
{
|
|
|
|
|
this.Bound = bound;
|
|
|
|
|
this.XMax = bound.XMax;
|
|
|
|
|
this.XMin = bound.XMin;
|
|
|
|
|
this.YMax = bound.YMax;
|
|
|
|
|
this.YMin = bound.YMin;
|
|
|
|
|
this.Level = level;
|
|
|
|
|
this.Row = row;
|
|
|
|
|
this.Column = col;
|
|
|
|
|
this.CutMultiple = cutMultiple;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public class TilesParam
|
|
|
|
|
{
|
|
|
|
|
public IEnvelope Bound { get; set; }
|
|
|
|
|
public int StartCol { get; set; }
|
|
|
|
|
public int EndCol { get; set; }
|
|
|
|
|
public int RowCount { get; set; }
|
|
|
|
|
public double Distance { get; set; }
|
|
|
|
|
public double OriginX { get; set; }
|
|
|
|
|
public double OriginY { get; set; }
|
|
|
|
|
public int Level { get; set; }
|
|
|
|
|
public int CutMultiple { get; set; }
|
|
|
|
|
public int TileSize { get; set; }
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public enum CUTAreaType
|
|
|
|
|
{
|
|
|
|
|
全部,
|
|
|
|
|
自定义,
|
|
|
|
|
自动分块
|
|
|
|
|
}
|
|
|
|
|
}
|