示例#1
0
        /// <summary>
        /// excel 导成shap
        /// </summary>
        public void ExcelToShap()
        {
            var files = Directory.GetFiles(this.GetCityDirectory(), "*.xls");

            foreach (var file in files)
            {
                var dataTable = AsposeCellsHelper.ExportToDataTable(file, true);

                var shpPath = Path.Combine(
                    this.GetCityDirectory(),
                    string.Format("{0}_{1}.shp", this.CityPinyin, file.Contains("roadcross") ? "roadcross" : "poi"));
                ShpFileHelper.saveShpFile(
                    dataTable,
                    shpPath,
                    file.Contains("roadnet") ? wkbGeometryType.wkbLineString : wkbGeometryType.wkbPoint,
                    ProjectConvert.NONE);
            }
        }
示例#2
0
        /// <summary>
        /// 路网数据下载
        /// </summary>
        public void DownLoadRoadLine()
        {
            GaoDeRoads roads         = new GaoDeRoads();
            var        roaddataTable = new DataTable(this.City);

            roaddataTable.Columns.AddRange(
                new[]
            {
                new DataColumn("Name"),
                new DataColumn("WIDTH"),
                new DataColumn("TYPE"),
                new DataColumn("PATH")
            });

            Console.WriteLine("下载{0}中", City);
            roads.downOverHandler += () =>
            {
                var directory = this.GetCityDirectory();
                var path      = Path.Combine(directory, this.CityPinyin + "_roadNet.shp");
                ShpFileHelper.saveShpFile(
                    roaddataTable,
                    path,
                    wkbGeometryType.wkbLineString,
                    ProjectConvert.GAODE84_WGS);
                roaddataTable.Rows.Clear();
            };
            roads.roadDateDowningHandler += (RoadModel road, int index, int count) =>
            {
                for (int i = 0; i < road.paths.Count; i++)
                {
                    DataRow row = roaddataTable.NewRow();
                    row[0] = road.name;
                    row[1] = road.width;
                    row[2] = road.type;
                    row[3] = road.paths[i];
                    roaddataTable.Rows.Add(row);
                }
            };
            roads.downLoadRoadsByCityName(City);
        }