ArcGIS API for JavaScript3.x 学习笔记[4] 加载底图(三)【Open Street Map开放街道地图】

Open Street Map

OpenStreetMap(简称OSM,中文是开放街道地图)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图。

OSM是一款由网络大众共同打造的免费开源、可编辑的地图服务。OpenStreetMap它是利用公众集体的力量和无偿的贡献来改善地图相关的地理数据。OSM是非营利性的,它将数据回馈给社区重新用于其它的产品与服务。而其他地图则是将大多数的地图数据出售给第三方。

OSM的地图由用户根据手提GPS装置、航空摄影照片、其他自由内容甚至单靠地方智慧绘制。网站里的地图图像及向量数据皆以共享创意姓名标示-相同方式分享2.0授权。

通过esri/layers/OpenStreetMapLayer类,可以将开放街道图作为基础底图。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>访问开放街道图</title>
    <link rel="stylesheet" href="http://js.arcgis.com/3.9/js/esri/css/esri.css">
    <style>
        html, body, #mapDiv {
            padding: 0;
            margin: 0;
            height: 100%;
        }
        /*设置图为灰度图*/
        #mapDiv_osmLayer img {
            filter: url(filters.svg#grayscale) !important; /* Firefox 3.5+ */
            filter: gray !important; /* IE5+ */
            -webkit-filter: grayscale(1) !important; /* Webkit Nightlies &amp; Chrome Canary */
        }
    </style>
    <script src="http://js.arcgis.com/3.9/"></script>
    <script>
        require(["esri/map", "esri/layers/OpenStreetMapLayer", "dojo/domReady!"], function (Map, OpenStreetMapLayer) {
            // 以下是创建地图与加入底图的代码
            var map = new Map("mapDiv");
            var osm = new OpenStreetMapLayer({
                id: ‘osmLayer‘
            });
            map.addLayer(osm);
        });
    </script>
</head>
<body class="tundra">
    <div id="mapDiv"></div>
</body>
</html>

ArcGIS API for JavaScript为每个图层创建html元素的命名规则是“地图DIV的id”+“图层的id”,那么由于我们在实例化 OpenStreetMapLayer类时,指定了图层的id为"osmLayer",而地图所在的元素id为“mapDiv”,那么该图层对应的元素id为“mapDiv_osmLayer”。

实现效果:

时间: 2024-07-28 18:20:21

ArcGIS API for JavaScript3.x 学习笔记[4] 加载底图(三)【Open Street Map开放街道地图】的相关文章

ArcGIS API for JavaScript3.x 学习笔记[5] 加载底图(四)【高德在线地图】

/** * Created by WanderGIS on 2015/7/15. */ define(["dojo/_base/declare", "esri/geometry/Extent", "esri/SpatialReference", "esri/geometry/Point", "esri/layers/TileInfo", "esri/layers/TiledMapServiceLa

ArcGIS API for JavaScript3.x 学习笔记[3] 加载底图(一)【天地图(经纬度版)】

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>天地图底图加载(经纬度版本)</title> 6 <link rel="stylesheet" href="https://js.arcgis.com/3.21/esri/css/esri.css"> 7 <script

ArcGIS API for JavaScript3.x 学习笔记[8] 动态地图服务图层

在ArcGIS API 中给我们提供了一个类叫做ArcGISDynamicMapServiceLayer利用这个类,我们可以获得发布的地图服务.调用动态地图服务一般只需要两步: 通过地图服务的URL创建一个ArcGISDynamicMapServiceLayer对象 将动态地图服务的对象添加到地图容器中 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"

Away3D 学习笔记(一): 加载3DS格式的模型文件

加载外部的3DS文件分为两种: 1: 模型与贴图独立于程序的,也就是从外部的文件夹中读取 1 private function load3DSFile():Loader3D 2 { 3 loader = new Loader3D(); 4 loader.addEventListener(LoaderEvent.RESOURCE_COMPLETE,onLoadComplete); 5 loader.addEventListener(AssetEvent.ASSET_COMPLETE,onAsset

OGEngine学习笔记---资源加载

声音管理兼容各种音频文件格式,比特率和样本率 OGEngine开源引擎兼容各种音频视频文件格式,并且引用了硬件加速技术,来对音频文件进行io读取,简化了资源的加载和读取写入的过程,大幅度减少应用卡顿.无响应的状况出现. 一个背景音乐 多个音效 OGEngine开源引擎在同一时间只能播放一首背景音乐,但是能同时播放多个音效. 首先自定义一个枚举类ConfigData,用来存放背景音乐key和音效key. public class ConfigData { /** 背景音乐*/ public sta

学习笔记TF015:加载图像、图像格式、图像操作、颜色

TensorFlow支持JPG.PNG图像格式,RGB.RGBA颜色空间.图像用与图像尺寸相同(height*width*chnanel)张量表示.通道表示为包含每个通道颜色数量标量秩1张量.图像所有像素存在磁盘文件,需要被加载到内存. 图像加载与二进制文件相同.图像需要解码.输入生成器(tf.train.string_input_producer)找到所需文件,加载到队列.tf.WholeFileReader加载完整图像文件到内存,WholeFileReader.read读取图像,tf.ima

Flixel学习笔记002 加载地图(一)

这篇的参考官方代码示例Cameras,代码在https://github.com/phmongeau/SplitScreen/tree/master/src. 首先用Windows的画图画了几个格,大小是20*20的. 然后参照官方代码示例,写了一段代码: 1 package org 2 { 3 import org.flixel.FlxState; 4 import org.flixel.FlxTilemap; 5 6 /** 7 * ... 8 * @author QuanJP [email

Java基础学习笔记十七 集合框架(三)之Map

Map接口 通过查看Map接口描述,发现Map接口下的集合与Collection接口下的集合,它们存储数据的形式不同,如下图. Collection中的集合,元素是孤立存在的(理解为单身),向集合中存储元素采用一个个元素的方式存储. Map中的集合,元素是成对存在的(理解为夫妻).每个元素由键与值两部分组成,通过键可以找对所对应的值. Collection中的集合称为单列集合,Map中的集合称为双列集合. 需要注意的是,Map中的集合不能包含重复的键,值可以重复:每个键只能对应一个值. Map中

OPENCV学习笔记2_Mat 加载, 显示

1.1 Introduction to related functions    1.Imread() function Mat imread( const String& filename, int flags = IMREAD_COLOR ); filename:Name of file to be loaded flags:载入标识,指定一个加载图像的颜色类型(参考enum ImreadModes).自带缺省值1,如果在调用时忽略这个参数,就表示载入三通道的彩色图像. enum Imrea