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

前端解析超图的iserver xml

前端解析超图的iserver xml

        const res = await axios.get(url)const xmlDom = new DOMParser().parseFromString(res.data, 'text/xml');// 获取versionconst version = xmlDom.getElementsByTagNameNS('*', 'ServiceTypeVersion')[0].textContent// 获取layerconst layerDom = xmlDom.getElementsByTagNameNS('*', 'Layer')[0]const layer = layerDom.getElementsByTagNameNS('*', 'Identifier')[0].textContent// 获取styleconst styleDom = layerDom.getElementsByTagNameNS('*', 'Style')[0]const style = styleDom.getElementsByTagNameNS('*', 'Identifier')[0].textContent// 获取formatconst format = layerDom.getElementsByTagNameNS('*', 'Format')[0].textContent// 获取crsconst crsBoundingBox = layerDom.getElementsByTagNameNS('*', 'BoundingBox')[1]const crs = crsBoundingBox.attributes.crs.value// 获取TileMatrixSetconst TileMatrixSetBox = layerDom.getElementsByTagNameNS('*', 'TileMatrixSet')[2]const TileMatrixSet = TileMatrixSetBox.textContent// 获取serviceUrlconst ResourceURL = layerDom.getElementsByTagNameNS('*', 'ResourceURL')[0]const serviceUrl = ResourceURL.attributes.template.value.replace('{TileMatrixSet}', TileMatrixSet)// 获取四至const boundingBox = layerDom.getElementsByTagNameNS('*', 'BoundingBox')[0]const lowerCorner = boundingBox.getElementsByTagNameNS('*', 'LowerCorner')[0].textContentconst upperCorner = boundingBox.getElementsByTagNameNS('*', 'UpperCorner')[0].textContentconst xMin = parseFloat(lowerCorner.split(' ')[0])const yMin = parseFloat(lowerCorner.split(' ')[1])const xMax = parseFloat(upperCorner.split(' ')[0])const yMax = parseFloat(upperCorner.split(' ')[1])

相关文章:

前端解析超图的iserver xml

前端解析超图的iserver xml const res await axios.get(url)const xmlDom new DOMParser().parseFromString(res.data, text/xml);// 获取versionconst version xmlDom.getElementsByTagNameNS(*, ServiceTypeVersion)[0].textContent// 获取layerconst layerDom xmlDom.ge…...

LocalForage 使用指南:统一管理 LocalStorage、WebSQL 和 IndexedDB

前言 在前端开发中,客户端数据存储是一个至关重要的环节。无论是用户偏好设置、缓存内容,还是表单数据,都需要一个高效、可靠的存储方案。浏览器原生提供的 LocalStorage、SessionStorage 和 IndexedDB 等 API 虽然功能强大,但使…...

代码随想录算法训练营第五天-哈希-242.有效的字母异位词

这道题的总体感觉不是很难&#xff0c;但是其完成的思想还是很有趣的利用数据下标来代表字母序列然后遍历两个字符串每个字符&#xff0c;给对应字母下标的数组中一个自增&#xff0c;另一个自减通过查看最后的数组内容是不是0&#xff0c;来判断是不是异位词 #include <io…...

学习maven(maven 项目模块化,继承,聚合)

前言 本篇博客的核心&#xff1a;理解maven 项目模块化&#xff0c;继承&#xff0c;聚合 的含义 maven 项目模块化 含义 maven项目模块化&#xff1a;使用maven 构建项目&#xff0c;管理项目的方式&#xff0c;我们可以将maven项目根据内在的关系拆分成很多个小项目【模块】…...

KDD 2025预讲会:10位一作的论文分享与话题思辨|12月18日全天直播

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 圆桌思辨&#xff1a;一作们的KDD 2025投稿经验分享与热点探讨 1. KDD 2025 与往年相比有哪些新变化&#xff1f;两次投稿周期的新规则有哪些影响&#xff1f; 2. 第一篇KDD的工作是如何成功被接收的&#xff1…...

掌握特征提取:机器学习中的 PCA、t-SNE 和 LDA模型

文章目录 一、说明二、既然有 PCA 技术降维&#xff0c;为什么还要学习 t-SNE&#xff1f;2.1 t-SNE的核心思想&#xff1a;2.2 保持点之间的局部关系有什么意义&#xff1f;2.3 t-SNE 的几何直觉&#xff1a; 三、t-SNE 的数学公式&#xff1a;四、目标函数&#xff1a;五、梯…...

JAVA基础:注释

JAVA基础:注释 作用 使得代码中的一段文本不被执行,起到解释说明的作用。 分类 JAVA中的注释有三种: 单行注释 //单行注释多行注释 /* 多 行 注 释 */文档注释 /***@deprecated comments* @author lhy*/文档注释可以添加一些参数作为说明。 有趣的代码注释 卡车/* * *…...

从源码构建安装Landoop kafka-connect-ui

背景 部署Landoop kafka-connect-ui最简单的办法还是通过docker来部署&#xff0c;我们之前的kafka-connect-ui就是通过docker部署的&#xff0c;但是&#xff0c;最近发现个问题&#xff1a;当使用docker部署且防火墙使用的是firewalld的情况下&#xff0c;就会出现端口冲突。…...

【自动驾驶】Ubuntu22.04源码安装Autoware Core/Universe

【自动驾驶】Ubuntu22.04源码安装Autoware Core/Universe 官方源码安装教程前置条件安装ROS2 Humble安装Autoware Core/Universe配置开发环境配置工作空间设置控制台 官方源码安装教程 链接&#xff1a;https://autowarefoundation.github.io/autoware-documentation/main/ins…...

使用Nexus3搭建npm私有仓库

一、npm介绍 npm的全称是Node Package Manager&#xff0c;它是一个开放源代码的命令行工具&#xff0c;用于安装、更新和管理Node.js模块。npm是Node.js的官方模块管理器&#xff0c;它允许用户从一个集中的仓库中下载和安装公共的Node.js模块&#xff0c;并将这些模块集成到…...

OpenHarmony和OpenVela的技术创新以及两者对比

两款有名的国内开源操作系统&#xff0c;OpenHarmony&#xff0c;OpenVela都非常的优秀。本文对二者的创新进行一个简要的介绍和对比。 一、OpenHarmony OpenHarmony具有诸多有特点的技术突破和重要贡献&#xff0c;以下是一些主要方面&#xff1a; 架构设计创新 分层架构…...

【LeetCode每日一题】Leetcode 1071.字符串的最大公因子

Leetcode 1071.字符串的最大公因子 题目描述&#xff1a; 对于字符串 s 和 t&#xff0c;只有在 s t t t … t t&#xff08;t 自身连接 1 次或多次&#xff09;时&#xff0c;我们才认定 t 能除尽 s。 给定两个字符串 str1 和 str2 。返回 最长字符串 x&#xff0c;要…...

《C++:计算机视觉图像识别与目标检测算法优化的利器》

在当今科技飞速发展的时代&#xff0c;计算机视觉领域正经历着前所未有的变革与突破。图像识别和目标检测作为其中的核心技术&#xff0c;广泛应用于安防监控、自动驾驶、智能医疗等众多领域&#xff0c;其重要性不言而喻。而 C语言&#xff0c;凭借其卓越的性能、高效的资源控…...

大模型的构建与部署(2)——数据清洗

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl1. 数据清洗的必要性与影响 1.1 数据清洗对模型性能的影响 数据清洗是数据预处理的关键步骤,对于模型训练的性能和准确性有着直接的影响。原始数据中的缺失值、重复值、异常值以及数据格式不一致…...

试题转excel;word转excel;大风车excel

一、问题描述 一名教师朋友&#xff0c;偶尔会需要整理一些高质量的题目到excel中 以往都是手动复制搬运&#xff0c;几百道题几乎需要一个下午的时间 关键这些事&#xff0c;枯燥无聊费眼睛&#xff0c;实在是看起来就很蠢的工作 就想着做一个工具&#xff0c;可以自动处理…...

微信小程序webview和小程序通讯

1.背景介绍 1.1需要在小程序嵌入vr页面&#xff0c;同时在vr页面添加操作按钮与小程序进行通信交互 1.2开发工具&#xff1a;uniapp开发小程序 1.3原型图 功能&#xff1a;.点击体验官带看跳转小程序的体验官带看页面 功能&#xff1a;点击立即咨询唤起小程序弹窗打电话 2.…...

ChatGPT大模型 创作高质量文案的使用教程和案例

引言 随着人工智能技术的飞速发展,大语言模型如 ChatGPT 在创作文案、生成内容方面展现出了强大的能力。无论是个人用户还是企业用户,都可以利用 ChatGPT 提高工作效率、激发创意、甚至解决实际问题。本文将详细介绍 ChatGPT 如何帮助创作各类高质量文案,并通过具体案例展示…...

Vue Web开发(八)

1. VueWeb面包屑和tag的布局 本章节完成VueWeb面包屑和tag的布局&#xff0c;并且与左侧菜单联系&#xff0c;涉及组件间通信。 1.1. 页面创建 &#xff08;1&#xff09;首先我们先完成每个页面的路由&#xff0c;之前已经有home页面和user页面&#xff0c;缺少mail页面和其…...

element-ui实现table表格的嵌套(table表格嵌套)功能实现

最近在做电商类型的官网&#xff0c;希望实现的布局如下&#xff1a;有表头和表身&#xff0c;所以我首先想到的就是table表格组件。 表格组件中常见的就是&#xff1a;标题和内容一一对应&#xff1a; 像效果图中的效果&#xff0c;只用基础的表格布局是不行的&#xff0c;因…...

【考前预习】4.计算机网络—网络层

往期推荐 【考前预习】3.计算机网络—数据链路层-CSDN博客 【考前预习】2.计算机网络—物理层-CSDN博客 【考前预习】1.计算机网络概述-CSDN博客 目录 1.网络层概述 2.网络层提供的两种服务 3.分类编址的IPV4 4.无分类编址的IPV4—CIDR 5.IPV4地址应用规划 5.1使用定长子…...

深入解析RS485接口:从硬件设计到工业应用

1. RS485接口基础解析 第一次接触RS485时&#xff0c;我也被它复杂的电气特性搞得一头雾水。直到在工厂里亲眼看到它如何稳定地穿过嘈杂的电机区域传输数据&#xff0c;才真正理解这个老牌工业接口的魅力。RS485本质上是一种差分信号传输标准&#xff0c;采用双绞线进行平衡传…...

华为HMS Scan Kit Customized View Mode:打造品牌专属扫码界面的实战指南

1. 为什么选择Customized View Mode&#xff1f; 扫码功能已经成为现代App的标配&#xff0c;但很多开发者面临一个两难选择&#xff1a;要么用系统默认的扫码界面显得千篇一律&#xff0c;要么完全自己开发一套又耗时耗力。华为HMS Scan Kit的Customized View Mode正好解决了这…...

快速掌握C#语言基础知识点(17.委托)

关注我的动态 namespace _17.委托 {public delegate void doMyAction(); //委托&#xff0c;无参&#xff0c;无返回值public delegate int doPlus(int a, int b);//委托&#xff0c;有参&#xff0c;有返回值internal class Program{//委托成员变量public static doMyAction a…...

ESLint代码规范(二)

通过配置文件来忽略对指定文件的代码检查ESLint低于7.0.0.eslintignore/config src/utils/**.prettierignore&#xff08;避免代码被 Prettier 的通用规则修改&#xff09;.eslintcache *.lock yarn-error.log src/utils/**ESLint大于7.0.0.eslintrc.js"ignorePatterns&qu…...

告别远程服务器:在Ubuntu 22.04上为ARM64嵌入式开发搭建本地sysroot环境(保姆级教程)

告别远程服务器&#xff1a;在Ubuntu 22.04上为ARM64嵌入式开发搭建本地sysroot环境&#xff08;保姆级教程&#xff09; 嵌入式开发者常面临一个尴尬困境&#xff1a;每次修改代码后&#xff0c;都需要将代码上传到远程ARM服务器或开发板进行编译测试&#xff0c;不仅耗时耗力…...

手把手教你用MCP+Selenium打造专属内容发布机器人(附避坑指南)

从零构建MCPSelenium自动化发布系统的实战指南 在当今内容为王的数字时代&#xff0c;如何高效管理多平台内容发布成为创作者和企业的核心需求。本文将带您深入探索如何利用MCP协议与Selenium技术栈&#xff0c;打造一个高度定制化的自动化内容发布系统&#xff0c;特别针对小红…...

AI风口来袭!转型LLM应用开发工程师,非常详细收藏我这一篇就够了

一、引言&#xff1a;AI时代下的新职业机遇 近年来&#xff0c;随着人工智能技术的快速发展&#xff0c;尤其是大语言模型&#xff08;Large Language Models, LLM&#xff09;的突破&#xff0c;软件行业正在经历深刻变革。以GPT系列模型为代表的技术&#xff0c;使自然语言理…...

告别环境配置烦恼:在Windows上通过VSCode与ESP-IDF快速搭建ESP32开发环境

1. 为什么选择VSCodeESP-IDF开发ESP32&#xff1f; 作为一个从Arduino转向ESP32开发的过来人&#xff0c;我深刻理解新手在环境配置上的痛苦。传统方法需要手动安装Python、Git、交叉编译工具链等十多个组件&#xff0c;光是处理环境变量冲突就能让人崩溃一整天。直到发现VSCod…...

用Arduino Uno和纸板DIY一个超静音扫地机器人(附完整代码和接线图)

用Arduino Uno和纸板DIY一个超静音扫地机器人&#xff08;附完整代码和接线图&#xff09; 在宿舍或小公寓里&#xff0c;市售扫地机器人的马达噪音常常让人头疼。特别是对于学生和创客群体来说&#xff0c;既需要保持环境整洁&#xff0c;又不希望打扰到室友或邻居的休息。今天…...

新手入门指南:在快马平台用万文通思路打造你的第一个文本转换网页

今天想和大家分享一个特别适合编程新手的实践项目——用万文通思路在InsCode(快马)平台快速搭建文本转换网页。这个项目完全不需要复杂的环境配置&#xff0c;打开浏览器就能完成&#xff0c;特别适合想体验完整开发流程的初学者。 项目核心功能设计 这个网页的核心功能非常简单…...