OpenLayers 案例一

简介:

OpenLayers 是一个专为Web GIS 客户端开发提供的JavaScript 类库包,用于实现标准格式发布的地图数据访问。

例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<!doctype html>
<html lang= "en" >
   <head>
     <link rel= "stylesheet"  href= "../css/ol.css" >  <?--链接一个外部样式表-->
     <style>
       .map 2  {    <?--前边的点必不可少-->
         height 400px ;
         width 100% ;
       }
     </style>
     <script src= "../build/ol.js" ></script>        <?--链接一个外部脚本文件-->
     <title>OpenLayers  3  example</title>
   </head>
 
   <body>
     <h 2 >My Map</h 2 >
     <div id= "map"  class= "map2" ></div>  <?--ID如人的身份证,唯一标示( 1 1 )。Class如人穿的衣服,用于定义这个DIV的样式(n对 1 ),这里用到了上面stype定义的map 2 样式-->
     <script>
       var map = new ol.Map({
         target:  'map' ,
         layers: [
           new ol.layer.Tile({
             source: new ol.source.MapQuest({layer:  'sat' })
           })
         ],
         view: new ol.View({
           center: ol.proj.transform([ 37.41 8.82 ],  'EPSG:4326' 'EPSG:3857' ),
           zoom:  4
         })
       });
     </script>
   </body>
</html>

运行图示

为了调用map,一个web页面需要做3件事情:

  • 调用OpenLayers
  • <div>map容器 (<div>标签用来定义文档中的分区或节)
  • JavaScript新建map

调用OpenLayers

第一部分是调用JavaScript库。

<script src="../css/ol.js" type="text/javascript"></script>

<div>用来包含地图

<div id="map" class="map"></div>

map包含在html的<div></div>内。通过<div>地图的属性如长度、宽度、边框等通过css控制。该例中css设定地图的高度和宽度都为400像素。

复制代码
<style>
 .map {
    height: 400px;
    width: 100%;
   }
</style>
复制代码

JavaScript来创建map

复制代码
<script type="text/javascript">
    var map = new ol.Map({
       target: 'map',
        layers: [
          new ol.layer.Tile({
          source: new ol.source.MapQuest({layer: 'sat'})
          })
        ],
       view: new ol.View({
          center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
          zoom: 4
        })
      });
</script>
复制代码

步骤一:通过以下代码创建一个OpenLayers的Map对象,这里只是单纯的建立一个对象,由于没有图层信息和交互所以没有其他任何信息。

var map = new ol.Map({ ... });

步骤二:为了把map对象和<div>信息关联起来,map对象通过target作为它的参数,其值为<div>中的id

target: 'map'

步骤三:layers:[ ... ]数组用来定义map中可用的图层列表。

复制代码
layers: [
    new ol.layer.Tile({
     source: new ol.source.MapQuest({layer: 'sat'})
    })
]
复制代码

本例的图层用一个类型(Image,Tile或Vector)来定义,它包含了一个源。【参考available layer sources here

步骤四:map对象的下一部分是View。通过View可以指定中心、分辨率、旋转等信息。最简单的设置方式是指定中心点和缩放级别。注:缩放级别为0表示“缩小”。

    view: new ol.View({
      center: ol.proj.transform([37.41, 8.82], 'EPSG:4326', 'EPSG:3857'),
      zoom: 4
    })

这里指定的中心点是经纬坐标(EPSG:4326)。





本文转自jihite博客园博客,原文链接:http://www.cnblogs.com/kaituorensheng/p/4526149.html,如需转载请自行联系原作者


相关文章
|
4月前
|
定位技术 容器
openlayers
openlayers
54 1
openlayers
|
6月前
|
自然语言处理 JavaScript 前端开发
Element+Vue+OpenLayers webgis实战
Element+Vue+OpenLayers webgis实战
66 0
|
9月前
|
存储 JSON 数据可视化
Echarts实战案例代码(12):Highcharts与Echarts地图geoJSON的比较及使用方法
Echarts实战案例代码(12):Highcharts与Echarts地图geoJSON的比较及使用方法
102 0
|
JavaScript 前端开发 定位技术
OpenLayers入门(一)
OpenLayers入门(一)
570 0
OpenLayers入门(一)
|
数据可视化
干货!layerGroup在LeafLet中的实战
需求场景:boss想针对分子公司进行统一展示,有可能在地图上统一添加、移除、统一调整图标等操作。常规做法可以采用遍历法,去循环所有的marker,批量操作。此时,可以采用layerGroup的方式,将所有分子公司存放在一个layer中,通过分组,可以批量操作存放在layerGroup中
489 0
干货!layerGroup在LeafLet中的实战
|
缓存 JavaScript 编译器
Qt+ECharts开发笔记(三):ECharts的柱状图介绍、基础使用和Qt封装Demo
上一篇成功是EChart随着Qt窗口变化而变化,本篇将开始正式介绍柱状图介绍、基础使用,并将其封装一层Qt。   本篇的demo实现了隐藏js代码的方式,实现了一个条形图的基本交互方式,即Qt调用js脚本操作html。
Qt+ECharts开发笔记(三):ECharts的柱状图介绍、基础使用和Qt封装Demo
|
前端开发 定位技术 API
OpenLayers入门(二)
OpenLayers入门(二)
387 0
OpenLayers入门(二)
|
Web App开发 数据可视化 JavaScript
Qt+ECharts开发笔记(一):ECharts介绍、下载和Qt调用ECharts基础柱状图Demo
使用Qt开发大数据可视化看板,基于Qt使用QWidget或者QML是很难达到ECharts大数据看板的效果,所以使用Qt来制作。
Qt+ECharts开发笔记(一):ECharts介绍、下载和Qt调用ECharts基础柱状图Demo
Qt开发技术:QCharts(二)QCharts折线图介绍、Demo以及代码详解
Qt开发技术:QCharts(二)QCharts折线图介绍、Demo以及代码详解
Qt开发技术:QCharts(二)QCharts折线图介绍、Demo以及代码详解

热门文章

最新文章