threejs(18) - 地图模型加载

在这里插入图片描述

GeoJSON是什么

如果你接触过数据可视化,那么大概率会知道GeoJSON。不知道?没关系,本文将为您娓娓道来!
GeoJSON是一种对各种地理数据结构进行编码的格式,基于Javascript对象表示法的地理空间信息数据交换格式。

官网: https://geojson.org/

中文翻译:https://www.oschina.net/translate/geojson-spec

GeoJSON对象

GeoJSON对象必须由一个名字为"type"的成员。
type成员的值必须是下面之一:“Point”, “MultiPoint”, “LineString”, “MultiLineString”, “Polygon”, “MultiPolygon”, “GeometryCollection”, “Feature”, 或者 “FeatureCollection”。
GeoJSON对象分为三种:几何对象、特征对象、特征集合对象
note: 下面的代码都可以在 geojson.io 查看效果,如下:

在这里插入图片描述

几何对象

GeoJSON支持以下几何类型:Point,MultiPoint,LineString,MultiLineString,Polygon,和MultiPolygon。
除了“GeometryCollection”外的其他任何类型的GeoJSON几何对象必须由一个名字为"coordinates"的成员。coordinates成员的值总是数组。这个数组里的元素的结构由几何类型来确定。

点(Point)
{ "type": "Point", "coordinates": [100.0, 0.0] }

多点(MultiPoint)

{"type": "MultiPoint","coordinates": [[ 100, 0 ],[ 101, 1 ]]
}

线 (LineString)

{"type": "MultiLineString","coordinates": [[ [100.0, 0.0], [101.0, 1.0] ],[ [102.0, 2.0], [103.0, 3.0] ]]
}

多边 (Polygon)

没有孔的:

{"type": "Polygon","coordinates": [[[ 100, 0 ],[ 101, 0 ],[ 101, 1 ],[ 100, 1 ],[ 100, 0 ]]]
}

有孔的:

{"type": "Polygon","coordinates": [[[ 100, 0 ],[ 101, 0 ],[ 101, 1 ],[ 100, 1 ],[ 100, 0 ]],[[ 100.2, 0.2 ],[ 100.8, 0.2 ],[ 100.8, 0.8 ],[ 100.2, 0.8 ],[ 100.2, 0.2 ]]]
}

多多边(和MultiPolygon)

{"type": "MultiPolygon","coordinates":[ [[[102.0, 2.0], [103.0, 2.0], [103.0, 3.0], [102.0, 3.0], [102.0, 2.0]]],[[[100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0]],[[100.2, 0.2], [100.8, 0.2], [100.8, 0.8], [100.2, 0.8], [100.2, 0.2]]]]
}

几何集合

{ "type": "GeometryCollection","geometries": [{ "type": "Point","coordinates": [100.0, 0.0]},{ "type": "LineString","coordinates": [ [101.0, 0.0], [102.0, 1.0] ]}]
}

特征对象

类型为"Feature"的GeoJSON对象是特征对象。
特征对象必须由一个名字为"geometry"的成员,这个几何成员的值是上面定义的几何对象或者JSON的null值。
特征对戏那个必须有一个名字为“properties"的成员,这个属性成员的值是一个对象(任何JSON对象或者JSON的null值)。
如果特征是常用的标识符,那么这个标识符应当包含名字为“id”的特征对象成员。

{"type":"Feature","properties":{},"geometry":{ "type": "Point", "coordinates": [100.0, 0.0] }
}

特征集合对象

特征集合对象type为FeatureCollection。
类型为"FeatureCollection"的对象必须由一个名字为"features"的成员。与“features"相对应的值是一个数组。这个数组中的每个元素都是上面定义的特征对象。

{"type": "FeatureCollection","features": []
}

坐标参考系统对象

GeoJSON对象的坐标参考系统(CRS)是由它的"crs"成员(指的是下面的CRS对象)来确定的。如果对象没有crs成员,那么它的父对象或者祖父对象的crs成员可能被获取作为它的crs。如果这样还没有获得crs成员,那么默认的CRS将应用到GeoJSON对象。

边界框

GeoJSON对象可能有一个名字为"bbox的成员。bbox成员的值必须是2*n数组,这儿n是所包含几何对象的维数,并且所有坐标轴的最低值后面跟着最高者值。

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

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

相关文章

如何通过IDEA创建基于Java8的Spring Boot项目

上次发现我的IDEA创建Spring Boot项目时只支持11和17的JDK版本,于是就通过Maven搭建SpringBoot项目。 究其原因,原来是Spring官方抛弃了Java8!!! 使用IDEA内置的Spring Initializr创建SpringBoot项目时,已…

Maven普通工程和web工程创建

文章目录 创建项目前设置maven工程前设置工作创建项目前--》设置utf-8配置maven参数Maven普通工程和web工程创建Maven简单工程第一步:File–New–Project 第二步:选择maven然后下一步:填写后询选择finish初始化maven工程目录简介maven简单工程…

day21-哈希表基础理论知识学习

day21-哈希表基础理论知识讲解 哈希表,也称为散列表(Hash table),是一种用于存储和检索键值对的数据结构。它通过将键映射到数组中的特定位置来实现高效的数据访问。转自-代码随想录。 哈希表中关键码就是数组的索引下标&#x…

【NodeJS】nodejs提供websocket服务

背景 在开发业务系统的时候,根据开发人员不同的技术栈,会使用不同的技术来开发微服务。本文是基于NodeJS提供的websocket的服务。在websocket通过分片的方式将字符串进行切割传递。 正文 1、源码 server.js: const WebSocket require(ws…

PDF有编辑密码怎么办

目录 注意: windows方法: 1 python 下载 2 打开命令行 3 安装 pikepdf 4 编写python脚本 5 使用py脚本 6解密完成 Linux方法: 注意: 此方法可以用于破解PDF的编辑密码,而不是PDF的打开密码 当遇到类似如下问…

分子动力学模拟—LAMMPS 模拟(固体和液体)数据后处理软件(六)

记录一下检索到一篇分子动力学模拟数据后处理的软件。 感谢论文的原作者! 主要功能: Structure Analysis Ackland Jones Analysis CentroSymmetry Parameter Common Neighbor Analysis Common Neighbor Parameter Atomic Structure Entropy Stein…

汽车生产污废水处理需要哪些工艺设备

对于汽车生产过程中产生的污废水处理,需要运用一系列的工艺设备来实现有效的清洁和回收利用。下面让我们一起来探索一下吧! 首先,汽车生产工艺设备中最常见的是物理处理设备。物理处理包括沉淀、过滤和吸附等过程。其中,沉淀操作可…

游卡:OceanBase在游戏核心业务的规模化降本实践

从 2023 年 9 月测试 OceanBase,到如今 3 个核心业务应用 OceanBase,国内最早卡牌游戏研发者之一的游卡仅用了两个月。是什么原因让游卡放弃游戏行业通用的 MySQL方案,选择升级至 OceanBase?杭州游卡网络技术有限公司(…

Web3与环保:区块链如何推动可持续发展

随着气候变化和环境问题日益严峻,社会对可持续发展的需求变得愈发迫切。在这个背景下,Web3技术和区块链崭露头角,成为推动可持续发展的关键力量。本文将深入探讨Web3技术如何与环保理念相结合,引领我们迈向更加可持续的未来。 1. …

2024年【G1工业锅炉司炉】考试题及G1工业锅炉司炉理论考试

题库来源:安全生产模拟考试一点通公众号小程序 2024年G1工业锅炉司炉考试题为正在备考G1工业锅炉司炉操作证的学员准备的理论考试专题,每个月更新的G1工业锅炉司炉理论考试祝您顺利通过G1工业锅炉司炉考试。 1、【多选题】TSGZ6001-2019《特种设备作业人…

JAVA实现向Word模板中插入Base64图片和数据信息

目录 需求一、准备模板文件二、引入Poi-tl、Apache POI依赖三、创建实体类(用于保存向Word中写入的数据)四、实现Service接口Controller层实现 需求 在服务端提前准备好Word模板文件,并在用户请求接口时服务端动态获取图片。数据等信息插入到…

力扣hot100 完全平方数 完全背包 滚动数组 四平方和定理

Problem: 279. 完全平方数 文章目录 思路💖 完全背包💖 滚动数组优化💖 四平方和定理 思路 👨‍🏫 三叶神解 👨‍🏫 数学解法 💖 完全背包 ⏰ 时间复杂度: O ( n 2 n ) O(n^2 …