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

计算古坐标——基于GPlates Web Service的坐标点重建

Gplates客户端和在线门户,pygplates和gplately是存在内在联系的应用,它们主要实现可视化,输入板块模型和化石点的现今坐标信息,在GPlates中可视化呈现,点位的坐标计算并不展现。而rgplates利用R语言提供了直接进行坐标点计算的reconstruct函数,最近看到了GPlates Web Service,即GPlates的API,阅读熟悉该文档的同时用python写一下脚本。

坐标点重建

该功能的作用:将现今的地理坐标点重建至古时的位置。根据选择的重建模型(板块模型),每个坐标点会被分配一个板块id,随即重建至期望的时间点。需要使用GET请求完成坐标点重建

请求网址终端

https://gws.gplates.org/reconstruct/reconstruct_points/

参数

  • points:必需的。期望重建的坐标点,经纬度用逗号分隔。
  • archor_plate_id:默认为0。重建锚定的板块id,用整数值表示。
  • time:必需的。重建时间点。
  • model:默认为网络服务器的设置。板块重建模型的名称。
  • pids:为每个坐标点提供各自锚定的板块id,以便提高运行性能。
  • pid:为所有坐标点提供同一锚定的板块id,以便提高运行功能。
  • reverse:控制重建方向的标志。如果本参数出现在url中,那么服务器将视输入的坐标为古坐标,进而计算它的现今坐标。
  • fc:feature collection(特征集合)。如果本参数出现,服务器将会返回一个GeoJSON特征集合。
  • return_null_points:如果本参数出现,服务器将返回空坐标点。空坐标点的出现是因为现今坐标点在指定的过去时间点并不存在。
  • ignore_valid_time:如果此参数存在,重建计算会突破“有效时段”的限制,从而始终可以返回坐标点,即便是这些坐标点毫无意义(不在有效时段内)。

返回值:重建后的坐标以GeoJSON格式返回。

  1. 例一:将两个坐标点(经:95,纬:54)(经:142,纬:-33)重建至140Ma前,模型采用“SETON2012”。返回GeoJSON格式的重建坐标点。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=95,54,142,-33&time=140&model=SETON2012
https://gws.gplates.org/reconstruct/reconstruct_points/?lons=95,142&lats=54,-33&time=140&model=SETON2012

{"type":"MultiPoint","coordinates":[[84.99,59.26],[123.37,-65.76]]}
  1. 例二:将两个古坐标点((lon:84.99,lat:59.26)(lon:123.37,lat:-65.76))重建至当今。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=84.99,59.26,123.37,-65.76&model=SETON2012&reverse
https://gws.gplates.org/reconstruct/reconstruct_points/?lats=59.26,-65.76&lons=84.99,123.37&time=140&model=SETON2012&reverse

{"type":"MultiPoint","coordinates":[[95.01,54.00],[142.00,-33.00]]}
  1. 例三:返回GeoJSON特征集合。服务器不仅返回古坐标,还会返回坐标点存在的时间段。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=95,54&time=140&model=SETON2012&fc
https://gws.gplates.org/reconstruct/reconstruct_points/?lats=54&lons=95&time=140&model=SETON2012&fc

{"type":"FeatureCollection","features":[{"type":"Feature","geometry":{"type":"Point","coordinates":[84.99,59.26]},"properties":{"valid_time":[600.0,"distant future"]}}]}
  1. 例四:返回空坐标点。当现今坐标点在期望的时间点并不存在时即会返回空坐标。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=-100,50,160,10,100,50&time=100&model=PALEOMAP&return_null_points
https://gws.gplates.org/reconstruct/reconstruct_points/?lats=50,10,50&lons=-100,160,100&time=100&model=PALEOMAP&return_null_points

{"type":"MultiPoint","coordinates":[[-56.84,47.13],null,[89.38,52.58]]}
  1. 例五:无效坐标点返回999.99。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=-100,50,160,10,100,50&time=100&model=PALEOMAP
https://gws.gplates.org/reconstruct/reconstruct_points/?lats=50,10,50&lons=-100,160,100&time=100&model=PALEOMAP

{"type":"MultiPoint","coordinates":[[-56.84,47.13],[999.99,999.99],[89.38,52.58]]}
  1. 例六:使用POST请求对大量坐标点进行重建,参考https://github.com/GPlates/gplates-web-service/blob/master/python/gplatesws.ipynb
  2. 例七:提供锚定板块ID以提高运行性能。所有坐标点使用同一板块ID。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=95,54,142,-33&time=140&model=SETON2012&pid=801
https://gws.gplates.org/reconstruct/reconstruct_points/?lons=95,142&lats=54,-33&time=140&model=SETON2012&pid=801

{"type": "MultiPoint", "coordinates": [[110.4975, 29.7166], [123.374, -65.7611]]}
  1. 例八:提供锚定板块ID以提高运行性能。所有坐标点使用各自的板块ID。

https://gws.gplates.org/reconstruct/reconstruct_points/?points=95,54,142,-33&time=140&model=SETON2012&pids=801,704
https://gws.gplates.org/reconstruct/reconstruct_points/?lons=95,142&lats=54,-33&time=140&model=SETON2012&pids=801,704

{"type": "MultiPoint", "coordinates": [[110.4975, 29.7166], [-164.6523, -52.7301]]}

支持信息

*可用的板块重建模型:默认模型为SETON2012。

  • MULLER2022
  • MERDITH2021
  • MULLER2019
  • MULLER2016
  • MATTHEWS2016_mantle_ref
  • MATTHEWS2016_pmag_ref
  • RODINIA2013
  • SETON2012
  • GOLONKA
  • PALEOMAP

代码思路

只需要实现单个点的重建代码即可。其余的操作均可以此为基础而实现。
再了解以下GeoJSON格式即可。

相关文章:

计算古坐标——基于GPlates Web Service的坐标点重建

Gplates客户端和在线门户,pygplates和gplately是存在内在联系的应用,它们主要实现可视化,输入板块模型和化石点的现今坐标信息,在GPlates中可视化呈现,点位的坐标计算并不展现。而rgplates利用R语言提供了直接进行坐标…...

智安网络|加强软件供应链安全保障:共同抵御威胁的关键路径

在当今数字化时代,软件供应链安全成为了一个备受关注的话题。各行各业都依赖于软件产品和服务来支持其业务运营。然而,随着供应链的不断扩大和复杂化,软件供应链安全问题也日益突出。那么应该如何解决? 首先,软件供应…...

华为Mate 60系列发售,北斗卫星通信技术进一步深入大众消费市场

近日,华为Mate 60系列手机在没有举办发布会的情况下在官方商城突然上架开售,人气火爆。 值得一提的是,华为Mate60 Pro支持卫星通话,无地面网络时,也能拨打和接听卫星电话,还可自由编辑卫星消息。华为 Mate6…...

Grad-CAM,即梯度加权类激活映射 (Gradient-weighted Class Activation Mapping)

Grad-CAM,即梯度加权类激活映射 (Gradient-weighted Class Activation Mapping),是一种用于解释卷积神经网络决策的方法。它通过可视化模型对于给定输入的关注区域来提供洞察。 原理: Grad-CAM的关键思想是将输出类别的梯度(相对于特定卷积…...

程序发布——使用pyinstaller打包识别程序为exe可执行文件 详解

当我们使用python完成项目开发后,必然面对着如何将自己的程序分享给其他人使用,这就离不开程序的打包工作。对于大多数人而言,我们还是使用windows电脑居多,因此我们在大多数场景是需要将程序打包为exe的可执行文件。笔者将在本章节详细介绍使用pyinstaller进行打包的全过程…...

Docker 使用

简介 Docker是一个开源的容器引擎,它有助于更快地交付应用。 Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。使用 Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。 Docker…...

电脑c盘变红满了怎么清理?4个方法轻松清理!

“我的电脑才用了不到一年,现在就已经满了!电脑c盘变红满了应该怎么清理呢?有什么方法能帮我清理的干净一点吗?希望大家给我出出主意。” 随着我们使用电脑时间的增多,电脑C盘可能会变得满满当当,这会不仅会…...

【UE 材质】实现角度渐变材质、棋盘纹理材质

目标 步骤 一、角度渐变材质 1. 首先通过“Mask”节点将"Texture Coordinate" 节点的R、G通道分离 2. 通过“RemapValueRange”节点将0~1范围映射到-1~1 可以看到此时R通道效果: G通道效果: 继续补充如下节点 二、棋盘纹理材质 原视频链接&…...

[深度学习]1. 深度学习知识点汇总

本文记录了我在学习深度学习的过程中遇到过的不懂的知识点,为了方便翻阅,故将其发表于此,随时更新,供大家参考。 深度学习常见知识点 1. 测试精度和训练精度 在深度学习中,测试精度和训练精度是两个重要的指标&#…...

鲁棒优化入门(6)—Matlab+Yalmip两阶段鲁棒优化通用编程指南(上)

0.引言 上一篇博客介绍了使用Yalmip工具箱求解单阶段鲁棒优化的方法。这篇文章将和大家一起继续研究如何使用Yalmip工具箱求解两阶段鲁棒优化(默认看到这篇博客时已经有一定的基础了,如果没有可以看看我专栏里的其他文章)。关于两阶段鲁棒优化与列与约束生成算法的原…...

golang通过gorm操作sqlite设置主键自增

在 Golang 中使用 GORM 操作 SQLite 数据库时,可以通过以下步骤设置主键自增: 首先,确保已经安装了 GORM 和 SQLite 的驱动程序。你可以使用以下命令安装它们: go get -u gorm.io/gorm go get -u gorm.io/driver/sqlite导入所…...

基于Spring Boot的企业门户网站设计与实现(Java+spring boot+MySQL)

获取源码或者论文请私信博主 演示视频: 基于Spring Boot的企业门户网站设计与实现(Javaspring bootMySQL) 使用技术: 前端:html css javascript jQuery ajax thymeleaf 微信小程序 后端:Java springboot…...

Json解析流程

一、拿到了题库 分析一下可以定义的 1、序号,用来区分题目数,每个题有唯一的序号 2、题目,就是下图的Q 3、预设的回答,下图的A 分析完我可以知道有三个字段,分别是int index、string Q、string A。 二、把字段丢到…...

Mybatis 动态SQL – 使用choose标签动态生成条件语句

之前我们介绍了if,where标签的使用;本篇我们需要在if,where标签的基础上介绍如何使用Mybatis提供的choose标签动态生成条件语句。 如果您对if,where标签动态生成条件语句不太了解,建议您先进行了解后再阅读本篇,可以参考: Mybat…...

http接口自动化测试框架实现

目录 一、测试需求描述 二、实现方法 三、Excel表格样式 四、实现代码(代码才是王道,有注释很容易就能看明白的) 一、测试需求描述 对服务后台一系列的http接口功能测试。 输入:根据接口描述构造不同的参数输入值 输出&…...

Android逆向学习(三)vscode修改smali绕过vip

Android逆向学习(三)vscode修改smali绕过vip 写在前面 这是吾爱的第二个作业,主要就是要修改smali代码,其实smali代码我感觉没有必要去学,当然主要是我本来就会汇编语言,基本上汇编语言都是一样的&#x…...

代码随想录训练营第38天|62.不同路径,63.不同路径II

代码随想录训练营第38天|62.不同路径,63.不同路径II 62.不同路径文章思路代码 63.不同路径II文章思路代码 总结 62.不同路径 文章 代码随想录|0062.不同路径 思路 d p [ i ] [ j ] { 1 , i 0 ∧ j 0 d p [ i − 1 ] [ j ] d p [ i ] [ j − 1 ] , e l s e \b…...

BlueStore BlueFS rocksdb 关联性梳理

Tag: ceph 12.2.4 BlueStore空间初始化 BlueStore磁盘空间管理 总述 OSD挂载目录基于文件系统管理,Slow、WAL、DB空间区域基于裸盘管理;Slow区域:此类空间主要用于存储对象数据,由BlueStore管理,其中分配于BlueFS空…...

PgSQL-并行查询系列-介绍[译]

PgSQL-并行查询系列-介绍 现代CPU模型拥有大量的CPU核心。多年来,数据库应用程序都是并发向数据库发送查询的。查询处理多个表的行时,若可以使用多核,则可以客观地提升性能。PgSQL 9.6引入了并行查询的新特性,开启并行查询后可以大…...

Linux以系统服务的方式启动Kafka(其他服务同理)

最终效果: 先回顾命令行的启动方式: kafka的启动 进入kafka的安装目录 1、首先启动zookeeper服务: bin/zookeeper-server-start.sh config/zookeeper.properties2、再启动kafka bin/kafka-server-start.sh config/server.properties &…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...

2025季度云服务器排行榜

在全球云服务器市场&#xff0c;各厂商的排名和地位并非一成不变&#xff0c;而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势&#xff0c;对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析&#xff1a; 一、全球“三巨头”…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...