当前位置: 首页 > news >正文

ArcGIS API for JavaScript 4.x 教程(二)切换基础地图图层

了解如何更改地图中的基础地图图层。

基础地图图层:
基础地图层是用于访问和显示来自基础地图层服务的数据的层。它为地图或场景提供视觉和地理上下文,通常包含具有管理边界和地名的全局数据。

基本地图图层服务提供了许多基本地图图层样式,例如地形、街道和图像,您可以在地图中使用这些样式。
在本教程中,您将使用Basemap Toggle和BasemapGallery小部件来选择和显示不同的Basemap图层。

笔记
有关更多信息,请访问映射API和定位服务指南中的Basemap层。

步骤

创建新笔

若要开始,请完成“显示地图”教程或使用此笔。

设置API键

要访问ArcGIS服务,您需要一个API密钥。
转到您的仪表板以获取API密钥。
在CodePen中,将apiKey设置为您的密钥,这样它就可以用于访问basemap层和位置服务。

esriConfig.apiKey = "YOUR_API_KEY";
const map = new Map({basemap: "arcgis-topographic" // Basemap layer service
});

添加模块

在require语句中,添加Basemap Toggle和BasemapGallery模块。

    require(["esri/config","esri/Map","esri/views/MapView","esri/widgets/BasemapToggle","esri/widgets/BasemapGallery"], function(esriConfig, Map, MapView, BasemapToggle, BasemapGallery) {

在基础地图之间切换

在两个基本地图之间进行选择的一个简单方法是使用基本地图切换小部件。使用小部件在arcgis地形图和arcgis图像基础图之间切换。
创建“Basemap Toggle”并设置视图。将nextBasemap属性设置为arcgis图像。

      const basemapToggle = new BasemapToggle({view: view,nextBasemap: "arcgis-imagery"});

将小部件添加到视图的右下角。

view.ui.add(basemapToggle,"bottom-right");

在基础地图之间切换。

从图库中选择基础地图

您也可以使用BasemapGallery小部件来选择不同的基础地图。
创建一个BasemapGallery,并在源属性中设置查询以搜索“开发人员的世界Basemaps”basemap组。

      const basemapGallery = new BasemapGallery({view: view,source: {query: {title: '"World Basemaps for Developers" AND owner:esri'}}});

将小部件添加到视图的右上角。

      view.ui.add(basemapGallery, "top-right"); // Add to the view

完整代码

<html>
<head><meta charset="utf-8"><meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no"><title>ArcGIS Maps SDK for JavaScript Tutorials: Change the basemap layer</title><style>html, body, #viewDiv {padding: 0;margin: 0;height: 100%;width: 100%;}</style><link rel="stylesheet" href="https://js.arcgis.com/4.27/esri/themes/light/main.css"><script src="https://js.arcgis.com/4.27/"></script><script>require(["esri/config","esri/Map","esri/views/MapView","esri/widgets/BasemapToggle","esri/widgets/BasemapGallery"], function(esriConfig, Map, MapView, BasemapToggle, BasemapGallery) {esriConfig.apiKey = "YOUR_API_KEY";const map = new Map({basemap: "arcgis-topographic"});const view = new MapView({container: "viewDiv",map: map,center: [-118.80543,34.02700],zoom: 13});const basemapToggle = new BasemapToggle({view: view,nextBasemap: "arcgis-imagery"});view.ui.add(basemapToggle,"bottom-right");const basemapGallery = new BasemapGallery({view: view,source: {query: {title: '"World Basemaps for Developers" AND owner:esri'}}});view.ui.add(basemapGallery, "top-right"); // Add to the view});</script>
</head>
<body><div id="viewDiv"></div>
</body>
</html>

运行应用程序

在CodePen中,运行代码以显示地图。
您的应用程序中应该有两个小部件,它们提供了不同的方式来选择基本地图。

注明:翻译自esri,仅供个人查阅使用,侵删

相关文章:

ArcGIS API for JavaScript 4.x 教程(二)切换基础地图图层

了解如何更改地图中的基础地图图层。 基础地图图层&#xff1a; 基础地图层是用于访问和显示来自基础地图层服务的数据的层。它为地图或场景提供视觉和地理上下文&#xff0c;通常包含具有管理边界和地名的全局数据。 基本地图图层服务提供了许多基本地图图层样式&#xff0c;例…...

SpringBoot——如何读写使用JSON文件保存的数据

文章目录 1. 将数据写入JSON文件2. 从JSON文件读取数据2.1 读取单个对象2.2 读取对象列表 1. 将数据写入JSON文件 要将数据写入JSON文件&#xff0c;可以使用Spring Boot中提供的Jackson库。Jackson库是处理JSON的Java库&#xff0c;可以轻松地将对象转换为JSON字符串&#xff…...

SDU Crypto School - 计算不可区分性1

Encryption: Computational security 1-4 主讲人&#xff1a;李增鹏&#xff08;山东大学&#xff09; 参考教材&#xff1a;Jonathan Katz, Yehuda Lindell, Introduction to Modern Cryptography - Principles and Protocols. 什么是加密 首先&#xff0c;加密方案的目的在于…...

win11 vscode torch 编译遇错

1. 错误内容&#xff1a; Failed to build pc-util ERROR: Could not build wheels for pc-util, which is required to install pyproject.toml-based projects NativeCommandExitException: Program “pip.exe” ended with non-zero exit code: 2.问题分析&#xff1a; pip出…...

Markdown系列之Flowchat流程图

一.欢迎来到我的酒馆 介绍Markdown的Flowchart流程图语法。 目录 一.欢迎来到我的酒馆二.什么是Flowchart三.更进一步 二.什么是Flowchart 2.1 Flowchart是一款基于javascript的工具&#xff0c;使用它可以用代码创建简单的流程图。具体信息可以查看flowchart官网&#xff1a;…...

小程序wx:else提示 Bad attr `wx

问题&#xff1a;以下wx:for里的wx:if &#xff0c; wx:else 会报这个错&#xff1a;Bad attr wx <scroll-view class"scroll1" scroll-x enable-flex"true"><view wx:if"{{playlist.length>0}}" class"item" wx:for"…...

halcon 学习笔记

图像的参数 图形参数 Iconic, 包括 image, region, XLD 1.1 image 图像由一个或者多个通道组成&#xff0c;是大小相同的矩阵&#xff0c;包含各种像素类型的灰度值 在图像显示界面&#xff0c;按ctrl健&#xff0c;可以查看当前的像素值 灰度图 一个通道像素点存放在一个矩…...

vscode 设置滑条颜色

1. 默认的滑条是灰黑色的&#xff0c;很难看的清 2. 左下角&#xff0c;打开VS Code 设置功能 3. 输入命令 workbench color&#xff0c;回车 4. 找到工作台&#xff1a;自定义颜色设置&#xff0c;打开设置文件 setting.json 5. 打开配置文件 6. 添加颜色配置 "workben…...

农业大数据可视化平台,让农业数据更直观展现!

农业大数据可视化平台是指利用大数据技术和可视化工具&#xff0c;对农业领域的数据进行收集、整理、分析和展示的平台。它可以帮助农业从业者更好地理解和利用农业数据&#xff0c;提高农业生产效率和决策水平。 农业大数据可视化平台通常具有以下特点和功能&#xff1a; 数据…...

【沁恒蓝牙mesh】CH58x USB功能开发记录(二)

本文主要介绍基于【沁恒蓝牙mesh】CH58x USB功能, BLE_USB 工程 解析与修改,主要实现 手机app与节点的数据双向通讯 【沁恒蓝牙mesh】CH58x USB功能开发记录(二) 1. BLE_USB 工程1.1 数据转发接口1.2 PC端测试1.3 手机APP端测试1.4 工程修改实现双向通讯1.4.1 【测试原理图…...

go的type关键字

在 Go 语言中&#xff0c;type 关键字用于定义自定义数据类型&#xff08;类型别名、结构体、接口等&#xff09;&#xff0c;以及获取某个变量的类型信息。type 关键字有多种用法&#xff0c;下面将详细解释这些用法&#xff1a; 1. 自定义数据类型 使用 type 关键字可以定义…...

Linux 信号signal处理机制

Signal机制在Linux中是一个非常常用的进程间通信机制&#xff0c;很多人在使用的时候不会考虑该机制是具体如何实现的。signal机制可以被理解成进程的软中断&#xff0c;因此&#xff0c;在实时性方面还是相对比较高的。Linux中signal机制的模型可以采用下图进行描述。 每个进程…...

SpringBoot3之Web编程

标签&#xff1a;Rest.拦截器.swagger.测试; 一、简介 基于web包的依赖&#xff0c;SpringBoot可以快速启动一个web容器&#xff0c;简化项目的开发&#xff1b; 在web开发中又涉及如下几个功能点&#xff1a; 拦截器&#xff1a;可以让接口被访问之前&#xff0c;将请求拦截…...

策略模式(C++)

定义 定义一系列算法&#xff0c;把它们一个个封装起来&#xff0c;并且使它们可互相替换((变化)。该模式使得算法可独立手使用它的客户程序稳定)而变化(扩展&#xff0c;子类化)。 ——《设计模式》GoF 使用场景 在软件构建过程中&#xff0c;某些对象使用的算法可能多种多…...

【每日一题Day290】LC1281整数的各位积和之差 | 模拟

整数的各位积和之差【LC1281】 给你一个整数 n&#xff0c;请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。 思路&#xff1a;简单模拟 循环取余&#xff0c;计算「各位数字之积」与「各位数字之和」&#xff0c;最后求差返回 实现 class Solution {public…...

揭示CTGAN的潜力:利用生成AI进行合成数据

推荐&#xff1a;使用 NSDT场景编辑器 助你快速搭建可编辑的3D应用场景 我们都知道&#xff0c;GAN在生成非结构化合成数据&#xff08;如图像和文本&#xff09;方面越来越受欢迎。然而&#xff0c;在使用GAN生成合成表格数据方面所做的工作很少。合成数据具有许多好处&#x…...

GitHub中readme.md文件的编辑和使用

GitHub中readme.md文件的编辑和使用 | YuuiChungs BlogGitHub - guodongxiaren/README: README文件语法解读&#xff0c;即Github Flavored Markdown语法介绍...

Python 四舍五入到最接近的十位

本篇文章将讨论使用 Python 的 ceil() 函数将数字四舍五入到最接近的十。 Python 整数到最接近的十 Python 具有三个内置函数 round()、floor() 和 ceil()&#xff0c;可用于对数字进行舍入。 ceil() 函数属于数学模块&#xff0c;用于将浮点数舍入为大于或等于给定数字的最接…...

Unity限制在一个范围内移动

Unity限制在一个范围内移动 这个例子中&#xff0c;我们学习Vector3.ClampMagnitude的用法&#xff0c;限制小球在范围内移动。 在地图上放了一个小球&#xff0c;让他移动&#xff0c;但是不想让他掉下去&#xff0c;限制在一个球星范围内&#xff0c;就好像绳子拴住了一样&…...

dji uav建图导航系列(一)建图

文章目录 1、uav + rplidir雷达1.2、思岚激光雷达1.3、dji uav的launch文件2、cartographer激光建图2.1、启动文件2.2、config修改2.3、建图过程3、融合odom+laser建图1、uav + rplidir雷达 思岚激光雷达frame为base_laser_link, 无人机frame为base_footprint。 文件uav_lid…...

OpCore-Simplify:黑苹果配置的智能革命——从手动调试到自动化生成的转变

OpCore-Simplify&#xff1a;黑苹果配置的智能革命——从手动调试到自动化生成的转变 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify 传统黑苹果配置需…...

python zipfile

# Python 的 zipfile&#xff1a;不只是打包文件那么简单 如果你用过压缩软件&#xff0c;大概知道 ZIP 格式是用来把多个文件打包成一个&#xff0c;顺便还能压缩节省空间。Python 里的 zipfile 模块就是干这个的&#xff0c;但它的能力远不止“打包”这么简单。 它到底是什么…...

三菱电梯保密资料解析与代码分析

三菱电梯保密资料凌云PRO地址码包括&#xff1a; 1.基本参数地址 2.轿厢部件地址 3.操作箱与外招部件地址 门部件地址 5.楼层部件地址 6.井道信息系统地址 7.操作模式地址 8.附加功能(各台)地址 9.附加功能&#xff08;群控&#xff09;地址 10.响应部件地址 11.声音部件地址 1…...

Ollama部署granite-4.0-h-350m:面向开发者的小型AI工具链构建教程

Ollama部署granite-4.0-h-350m&#xff1a;面向开发者的小型AI工具链构建教程 1. 开篇&#xff1a;为什么选择granite-4.0-h-350m&#xff1f; 如果你正在寻找一个既轻量又功能强大的AI模型来构建自己的开发工具链&#xff0c;granite-4.0-h-350m绝对值得关注。这个只有350M参…...

StructBERT-Large镜像部署教程:GPU加速推理环境搭建指南

StructBERT-Large镜像部署教程&#xff1a;GPU加速推理环境搭建指南 1. 环境准备与快速部署 在开始部署StructBERT-Large镜像之前&#xff0c;我们需要确保基础环境配置正确。这个步骤将帮助你快速搭建起可运行的GPU加速推理环境。 1.1 硬件与系统要求 为了获得最佳性能&am…...

FontForge完整指南:免费开源字体设计工具的终极解决方案

FontForge完整指南&#xff1a;免费开源字体设计工具的终极解决方案 【免费下载链接】fontforge Free (libre) font editor for Windows, Mac OS X and GNULinux 项目地址: https://gitcode.com/gh_mirrors/fo/fontforge 寻找一款功能全面且完全免费的字体设计工具&…...

双腔制动主缸建模实战:从物理结构到联合仿真验证

乘用车双腔制动主缸建模&#xff0c;simulink模型&#xff0c;以及amesim模型&#xff0c;simulink和amesim联合仿真模型及验证&#xff0c;而是较为精细化的建模&#xff0c;非常详细的公式建模&#xff0c;不是相关文献上对制动主缸进行简化的公式模型&#xff0c;制动主缸的…...

新手福音:在快马平台用clawhub编写你的第一个爬虫程序

作为一个刚接触爬虫开发的新手&#xff0c;最近在尝试用clawhub框架写第一个爬虫程序时&#xff0c;发现这个框架对初学者特别友好。特别是在InsCode(快马)平台上&#xff0c;通过简单的描述就能生成结构清晰的示例代码&#xff0c;大大降低了学习门槛。下面分享下我的学习过程…...

掌握Trilium Notes:打造个人知识管理系统的完整指南

掌握Trilium Notes&#xff1a;打造个人知识管理系统的完整指南 【免费下载链接】trilium-translation Translation for Trilium Notes. Trilium Notes 中文适配, 体验优化 项目地址: https://gitcode.com/gh_mirrors/tr/trilium-translation 你是否曾为散落各处的笔记感…...

解放知识资产:dedao-dl让你的得到课程永久保存成为可能

解放知识资产&#xff1a;dedao-dl让你的得到课程永久保存成为可能 【免费下载链接】dedao-dl 得到 APP 课程下载工具&#xff0c;可在终端查看文章内容&#xff0c;可生成 PDF&#xff0c;音频文件&#xff0c;markdown 文稿&#xff0c;可下载电子书。 项目地址: https://g…...