ArcGIS Web API 接入天地图瓦片

2024-03-05 00:08
文章标签 arcgis web api 地图 接入 瓦片

本文主要是介绍ArcGIS Web API 接入天地图瓦片,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

接入天地图的瓦片完全类似google的瓦片服务,但是空间参考不一致,想叠加其他的数据的话需要注意空间参考的设置,以上三篇博客的目的为简单的技术研究,如果想将这些内容用于商业用途,大家还是要联系厂家啊!

publicclasstianditu :TiledMapServiceLayer

{

    publicstring _mapType = null;

    privatestring[] _hosts = new
string[] { “tile0,
“tile1, “tile2,
“tile3, “tile4,
“tile5, “tile6,
“tile6, “tile7
};

    publicoverridevoid
Initialize()

    {

       this.FullExtent
=
new
ESRI.ArcGIS.Client.Geometry.Envelope(180,-90,-180,90);       
{

           SpatialReference = newESRI.ArcGIS.Client.Geometry.SpatialReference(4326);

       };

       this.SpatialReference
=
new
ESRI.ArcGIS.Client.Geometry.SpatialReference(4326);

       this.TileInfo
=
new TileInfo()

       {

           Height = 256,

           Width = 256,

 

           Origin = new
ESRI.ArcGIS.Client.Geometry.MapPoint(-90d,45d)           
{

                SpatialReference = new
ESRI.ArcGIS.Client.Geometry.SpatialReference(4326)

           },

           Lods = new
Lod[18]

       };

       double
resolution = 0.3515625;

       for (int i = 0; i <TileInfo.Lods.Length; i++)

       {

           TileInfo.Lods[i] = new Lod() { Resolution = resolution };

           resolution /= 2;

       }

       base.Initialize();

    }

    publicoverridestring
GetTileUrl(
int level, int
row,
int col)

    {

       int
index =
Math.Abs(col % 7);

       string
host = _hosts[index];

       string
url=
“”;

       if(_mapType==
“map)

       {

           if
(level < 10)

           {

                url=string.Format(“http://{0}.tianditu.com/DataServer?T=A0512_EMap&X={1}&Y={2}&L={3},
host, col, row, level+1);

           }

           else
if (level < 12)

           {

                url=string.Format(“http://{0}.tianditu.com/DataServer?T=B0627_EMap1112&X={1}&Y={2}&L={3},
host, col, row, level+1);

           }

           else

           {

                url=string.Format(“http://{0}.tianditu.com/DataServer?T=siwei0608&X={1}&Y={2}&L={3},
host, col, row, level+1);

           }

       }

       if
(_mapType ==
“Vanno)

       {

           if
(level < 10)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=AB0512_Anno&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

       }

       if
(_mapType ==
“img)

       {

           if
(level < 10)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=sbsm0210&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

           else
if (level == 10)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=e11&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

           else
if (level == 11)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=e12&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

           else
if (level == 12)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=e13&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

           else
if (level == 13)

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=eastdawnall&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

           else

           {

                url = string.Format(“http://{0}.tianditu.com/DataServer?T=sbsm1518&X={1}&Y={2}&L={3},
host, col, row, level + 1);

           }

       }

       return
url;

    }

}

这篇关于ArcGIS Web API 接入天地图瓦片的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/774700

相关文章

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

PyCharm 接入 DeepSeek最新完整教程

《PyCharm接入DeepSeek最新完整教程》文章介绍了DeepSeek-V3模型的性能提升以及如何在PyCharm中接入和使用DeepSeek进行代码开发,本文通过图文并茂的形式给大家介绍的... 目录DeepSeek-V3效果演示创建API Key在PyCharm中下载Continue插件配置Con

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

Spring AI Alibaba接入大模型时的依赖问题小结

《SpringAIAlibaba接入大模型时的依赖问题小结》文章介绍了如何在pom.xml文件中配置SpringAIAlibaba依赖,并提供了一个示例pom.xml文件,同时,建议将Maven仓... 目录(一)pom.XML文件:(二)application.yml配置文件(一)pom.xml文件:首

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

一分钟带你上手Python调用DeepSeek的API

《一分钟带你上手Python调用DeepSeek的API》最近DeepSeek非常火,作为一枚对前言技术非常关注的程序员来说,自然都想对接DeepSeek的API来体验一把,下面小编就来为大家介绍一下... 目录前言免费体验API-Key申请首次调用API基本概念最小单元推理模型智能体自定义界面总结前言最

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep