OpenLayers7官方文档翻译,OpenLayers7中文文档,OpenLayers快速入门

在这里插入图片描述

快速入门

这个入门文档向您展示如何放一张地图在web网页上。
开发设置使用 NodeJS(至少需要Nodejs 14 或更高版本),并要求安装 git

设置新项目

开始使用OpenLayers构建项目的最简单方法是运行:npm create ol-app

npm create ol-app my-app
cd my-app
npm start
  1. 第一个命令将创建一个名为 my-app 的目录(如果您愿意,可以使用不同的名称),安装 OpenLayers 和开发服务器,并使用index.htmlmain.jsstyle.css 文件设置一个基本应用程序。

  2. 第二个命令 (cd my-app) 将工作目录更改为新的 my-app 项目,以便您可以开始使用它。

  3. 第三个命令 (npm start) 启动开发服务器,以便您可以在处理应用程序时在浏览器中查看应用程序。运行 npm start 后,你将看到告诉你要打开的 URL 的输出。打开 http://localhost:5173/(或显示的任何 URL)以查看新应用程序。

探索组件

OpenLayers 应用程序由三个基本部分组成:

  • 带有包含映射的元素的 HTML 标记(index.html
  • 初始化地图的 JavaScript(main.js)
  • 确定地图大小和任何其他自定义项的 CSS 样式(style.css)

markup(标记)

在文本编辑器中打开 index.html 文件。它应该看起来像这样:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Quick Start</title></head><body><div id="map"></div><script type="module" src="./main.js"></script></body>
</html>

标记中的两个重要部分是<div>包含映射的元素和<script>要拉入 JavaScript 的标记。映射容器或目标应该是块级元素(如 <div>),并且必须出现在初始化<script>映射的标记之前。

script(脚本)

在文本编辑器中打开文件。它应该看起来像这样:main.js

import './style.css';
import Map from 'ol/Map.js';
import OSM from 'ol/source/OSM.js';
import TileLayer from 'ol/layer/Tile.js';
import View from 'ol/View.js';const map = new Map({target: 'map',layers: [new TileLayer({source: new OSM(),}),],view: new View({center: [0, 0],zoom: 2,}),
});

OpenLayers被打包为ES模块的集合。导入行用于拉入应用程序所需的模块。浏览示例和 API 文档,了解您可能想要使用哪些模块。

导入“./样式.css”;台词可能有点出乎意料。在此示例中,我们使用 Vite 作为开发服务器。Vite 允许从 JavaScript 模块导入 CSS。如果您使用的是其他开发服务器,则可以改为在索引的标记中包含样式.css.html。

main.js 模块用作应用程序的入口点。它初始化新地图,为其提供具有 OSM 源和描述中心和缩放级别的视图的单个图层。通读基本概念教程,了解有关地图、视图、图层和源组件的详细信息。

style(样式风格)

在文本编辑器中打开样式.css文件。它应该看起来像这样:

@import "node_modules/ol/ol.css";html,
body {margin: 0;height: 100%;
}#map {position: absolute;top: 0;bottom: 0;width: 100%;
}

第一行导入 ol 包附带的 ol.css 文件(OpenLayers 在 npm 注册表中作为 ol 包发布)。ol 包安装在上面的 npm 创建 ol-app 步骤中。如果您从现有应用程序开始而不是使用 npm create ol-app,您将使用 npm install ol 安装包。ol.css样式表包括OpenLayers创建的元素的样式 - 例如用于放大和缩小的按钮。

样式.css文件中的其余规则使包含地图的<div id=“map”>元素填充整个页面。

部署应用

您可以编辑index.htmlmain.jsstyle.css文件,并在运行开发服务器(使用 npm start)时在浏览器中查看生成的更改。完成编辑后,是时候捆绑或构建应用程序了,以便可以将其部署为静态网站(无需运行像 Vite 这样的开发服务器)。

若要生成应用程序,请运行以下命令:

npm run build

这将创建一个 dist 目录.html其中包含构成应用程序的新索引和资产。这些 dist 文件可以与您的生产网站一起部署。


本文翻译自:https://openlayers.org/doc/quickstart.html


Vue+OpenLayers中文教程推荐,不同于OpenLayers官方文档使用html+js原生原生教程,博主专栏包含大量vue整合案例和实际开发案例,非常适合地图开发小白快速入门。

  1. vue整合OpenLayers6入门教程:
    《OpenLayers入门教程汇总目录,OpenLayers教程,OpenLayers中文文档,OpenLayers手册,OpenLayers6文档教程,OpenLayers中文手册》
  2. vue整合OpenLayers6实战中文教程,包含大量OpenLayers官方文档没有涉及到的实际开发案例:
    《OpenLayers实战进阶专栏目录,OpenLayers实战案例,OpenLayers6实战教程》

end

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/67004.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Go 面向对象(匿名字段)

概述 严格意义上说&#xff0c;GO语言中没有类(class)的概念,但是我们可以将结构体比作为类&#xff0c;因为在结构体中可以添加属性&#xff08;成员&#xff09;&#xff0c;方法&#xff08;函数&#xff09;。 面向对象编程的好处比较多&#xff0c;我们先来说一下“继承…

QWidget的ui界面绘制成图片

文章目录 源文件源码解释效果修复图片清晰度 源文件 #include "widget.h" #include "ui_widget.h"#include <QPixmap> #include <QDir>Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);// 构造…

Pinely Round 2 (Div. 1 + Div. 2) G. Swaps(组合计数)

题目 给定一个长度为n(n<1e6)的序列&#xff0c;第i个数ai(1<ai<n)&#xff0c; 操作&#xff1a;你可以将当前i位置的数和a[i]位置的数交换 交换可以操作任意次&#xff0c;求所有本质不同的数组的数量&#xff0c;答案对1e97取模 思路来源 力扣群 潼神 心得 感…

Android之布局转圆角

Android之布局转圆角 文章目录 Android之布局转圆角说明一、效果图二、实现步骤1.自定义RoundRelativeLayout2.使用 总结 说明 很多需求比较无语&#xff0c;需要某个布局转圆角&#xff0c;像个显眼包一样&#xff0c;所以为了满足显眼包&#xff0c;必须整呐提示&#xff1a…

Java智慧工地信息化管理平台源码,依托计算机信息、网络通讯、物联网、系统集成及云计算技术建立

Java智慧工地源码 智慧工地APP源码 系统定义&#xff1a; 智慧工地信息化管理平台是依托计算机信息、网络通讯、物联网、系统集成及云计算技术&#xff0c;通过数据采集、信息动态交互、智能分析&#xff0c;建立起来的一套集成的项目建设综合管理系统。实现项目管理信息化、网…

LeetCode 剑指offer 09.用两个栈实现队列

LeetCode 剑指offer 09.用两个栈实现队列 题目描述 用两个栈实现一个队列。队列的声明如下&#xff0c;请实现它的两个函数 appendTail 和 deleteHead &#xff0c;分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素&#xff0c;deleteHead 操作返回…

C语言网络编程实现组播(多播)

1、组播IP划分 224.0.0.0&#xff5e;224.0.0.255 为预留的组播地址&#xff08;永久组地址&#xff09;&#xff0c;地址224.0.0.0保留不做分配&#xff0c;其它地址供路由协议使用&#xff1b; 224.0.1.0&#xff5e;224.0.1.255 是公用组播地址&#xff0c;可以用于Inter…

Scala的特质trait与java的interface接口的区别,以及Scala特质的自身类型和依赖注入

1. Scala的特质trait与java接口的区别 Scala中的特质&#xff08;trait&#xff09;和Java中的接口&#xff08;interface&#xff09;在概念和使用上有一些区别&#xff1a; 默认实现&#xff1a;在Java中&#xff0c;接口只能定义方法的签名&#xff0c;而没有默认实现。而在…

机器连接和边缘计算

以一种高效、可扩展的方式进行连接和边缘计算的结合&#xff0c;解决了在工业物联网应用中的机器数据集成问题。 一 边缘计算 边缘计算描述了由中央平台管理的数据分散式处理&#xff0c;它对于工业物联网而言非常重要。在许多应用程序中&#xff0c;由于数据量非常大&#xf…

【USRP】集成化仪器系列1 :信号源,基于labview实现

USRP 信号源 1、设备IP地址&#xff1a;默认为192.168.10.2&#xff0c;请勿 修改&#xff0c;运行阶段无法修改。 2、天线输出端口是TX1&#xff0c;请勿修改。 3、通道&#xff1a;0 对应RF A、1 对应 RF B&#xff0c;运行 阶段无法修改。 4、中心频率&#xff1a;当需要…

界面控件DevExpress .NET应用安全 Web API v23.1亮点:支持Swagger模式

DevExpress拥有.NET开发需要的所有平台控件&#xff0c;包含600多个UI控件、报表平台、DevExpress Dashboard eXpressApp 框架、适用于 Visual Studio的CodeRush等一系列辅助工具。 DevExpress 今年第一个重要版本v23.1日前已正式发布了&#xff0c;该版本拥有众多新产品和数十…

电子学会 2023年3月 青少年软件编程Python编程等级考试三级真题解析(选择题+判断题+编程题)

青少年编程Python编程等级考试三级真题解析(选择题+判断题+编程题) 2023年3月 一、选择题(共25题,共50分) 十进制数111转换成二进制数是?( ) A. 111 B. 1111011 C. 101111 D. 1101111 答案选:D 考点分析:考察python 进制转换 十进制转二进制,采用除二倒取余数,直到商…

使用 SQL 的方式查询消息队列数据以及踩坑指南

Pulsar-sql.png 背景 为了让业务团队可以更好的跟踪自己消息的生产和消费状态&#xff0c;需要一个类似于表格视图的消息列表&#xff0c;用户可以直观的看到发送的消息&#xff1b;同时点击详情后也能查到消息的整个轨迹。 消息列表 点击详情后查看轨迹 原理介绍 由于 Pulsar …

MyBatis关联关系映射详解

前言 在使用MyBatis进行数据库操作时&#xff0c;关联关系映射是一个非常重要的概念。它允许我们在数据库表之间建立关联&#xff0c;并通过对象之间的关系来进行数据查询和操作。本文将详细介绍MyBatis中的关联关系映射&#xff0c;包括一对一、一对多和多对多关系的处理方法…

Spring MVC:域对象共享数据

Spring MVC 前言域对象共享数据使用 ModelAndView 向 request 域对象中共享数据使用 Map 、Model 或 ModelMap 向 request 域对象中共享数据使用 SesionAttributes 注解向 session 域对象中共享数据使用 Servlet API 向 application 域对象中共享数据 附 前言 在上一章中&…

Linux搭建GitLab私有仓库,并内网穿透实现公网访问

目录 前言 1.下载Gitlab 2.安装Gitlab 3.启动Gitlab 4.安装cpolar 5. 创建隧道配置访问地址 6.固定GitLab访问地址 7. 配置二级子域名 8. 测试访问二级子域名 前言 GitLab 是一个用于仓库管理系统的开源项目&#xff0c;使用Git作为代码管理工具&#xff0c;并在此基…

问道管理:什么是大盘?大盘股又是什么?

聊到股市就免不了聊到大盘&#xff0c;有些新进场的投资者对此或许带有疑问&#xff0c;什么是大盘&#xff1f;我们所说的大盘股又是什么&#xff1f;关于这些&#xff0c;问道管理为我们准备了以下参考内容。 什么是大盘&#xff1f; 大盘&#xff0c;主要是指股市的整体行情…

python-数据分析-numpy、pandas、matplotlib的常用方法

一、numpy import numpy as np1.numpy 数组 和 list 的区别 输出方式不同 里面包含的元素类型 2.构造并访问二维数组 使用 索引/切片 访问ndarray元素 切片 左闭右开 np.array(list) 3.快捷构造高维数组 np.arange() np.random.randn() - - - 服从标准正态分布- - - …

CSS 一个好玩的卡片“开卡效果”

文章目录 一、用到的一些CSS技术二、实现效果三、代码 一、用到的一些CSS技术 渐变 conic-gradientbox-shadowclip-path变换、过渡 transform、transition动画 animation keyframes伪类、伪元素 :hover、::before、::after …绝对布局。。。 clip-path 生成网站 https://techb…

Yjs + Quill 实现文档多人协同编辑器开发(基础+实战)

前言 多人协同开发确实是比较难的知识点&#xff0c;在技术实现上有一定挑战&#xff0c;但随着各种技术库的发展&#xff0c;目前已经有了比较成熟的解决方案。今介绍 Yjs 基于CRDT算法&#xff0c;用于构建自动同步的协作应用程序&#xff0c;与Quill富文本编辑器&#xff0c…