Skip to content

Commit

Permalink
Feat: 增加山东天地图历史影像 (#35)
Browse files Browse the repository at this point in the history
  • Loading branch information
liuxspro authored Dec 18, 2024
2 parents 583cc7e + dec888f commit 045453e
Show file tree
Hide file tree
Showing 11 changed files with 660 additions and 22 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/pylint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [ '3.9' ]
python-version: [ '3.12' ]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand Down
8 changes: 4 additions & 4 deletions tianditu_tools/maps/summary.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
tianditu_province:
id: tianditu_province
name: 天地图省级节点
lastUpdated: '2024-12-17 15:41:42'
extra:
id: extra
name: 其他地图
lastUpdated: '2024-07-01 09:45:32'
tianditu_province:
id: tianditu_province
name: 天地图省级节点
lastUpdated: '2024-07-01 10:04:25'
90 changes: 89 additions & 1 deletion tianditu_tools/maps/tianditu_province.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,23 @@
info:
id: tianditu_province
name: 天地图省级节点
lastUpdated: '2024-04-22 22:13:31'
lastUpdated: '2024-12-17 15:41:42'
maps:
天地图-北京:
- name: 北京 - 2024年01月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202401&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2023年06月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202306&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2023年03月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202303&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2022年12月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202212&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2022年09月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202209&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2022年06月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202206&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
- name: 北京 - 2022年03月影像
uri: crs=EPSG:3857&dpiMode=7&featureCount=10&format=image/png&layers=bj_202203&styles=default&tileMatrixSet=GLOBAL_WEBMERCATOR&tilePixelRatio=0&url=https://maps.liuxs.pro/wmts/static/beijing.xml
天地图-江苏:
- name: 江苏-1966年影像地图
uri: crs=EPSG:4326&dpiMode=7&format=image/jpgpng&layers=History_yxdt_js_1966&styles=default&tileMatrixSet=default&tilePixelRatio=0&url=http://jiangsu.tianditu.gov.cn/historyraster/rest/services/History/yxdt_js_1966/MapServer/WMTS/1.0.0/WMTSCapabilities.xml
Expand Down Expand Up @@ -48,6 +63,8 @@ maps:
uri: crs=EPSG:4490&dpiMode=7&format=image/jpgpng&layers=History_js_yxdt_2021&styles=default&tileMatrixSet=default&url=http://jiangsu.tianditu.gov.cn/historyraster/rest/services/History/js_yxdt_2021/MapServer/WMTS/1.0.0/WMTSCapabilities.xml
- name: 江苏-2022年影像地图
uri: crs=EPSG:4490&dpiMode=7&format=image/jpgpng&layers=tdtjs_js_img2022_r05&styles=default&tileMatrixSet=default&url=http://jiangsu.tianditu.gov.cn/tdtsite05/rest/services/tdtjs/js_img2022_r05/MapServer/WMTS/1.0.0/WMTSCapabilities.xml
- name: 江苏-2023年影像地图
uri: crs=EPSG:4490&dpiMode=7&format=image/jpgpng&layers=MapJS_js_yxdt_latest&styles=default&tileMatrixSet=default&tilePixelRatio=0&url=https://jiangsu.tianditu.gov.cn/mapjs2/rest/services/MapJS/js_yxdt_latest/MapServer/WMTS/1.0.0/WMTSCapabilities.xml
天地图-湖北:
- name: 湖北-2015年影像地图
uri: crs='EPSG:4490' format='PNG32' layer='0' url='http://27.17.60.13:6080/arcgis/rest/services/IMG_2015/MapServer'
Expand Down Expand Up @@ -142,3 +159,74 @@ maps:
天地图-江西:
- name: 江西 - 2021年7-18级影像
uri: crs=EPSG:4490&dpiMode=7&format=image/tile&layers=JX_IMG_2021_7_18&styles=JX_IMG_2021_7_18&tileMatrixSet=JX_IMG_2021_7_18_Matrix_1&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/JX_2021_tweak.xml
天地图-上海:
- name: 上海-1999年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx1999/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2017年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2017/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2018年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2018/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2019年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2019/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2020年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2020/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2021年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2021/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2022年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2022/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
- name: 上海-2023年影像
type: arcgismapserver
uri: crs='EPSG:4490' format='PNG32' layer='0' url='https://map4.shanghai-map.net/arcgis/rest/services/shyx2023/MapServer'
http-header:referer='https://www.shanghai-map.net/' referer='https://www.shanghai-map.net/'
天地图-广东:
- name: 广东省 2015 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2015年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 2018 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2018年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 2019 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2019年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 2020 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2020年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 2021 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2021年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 2022 年影像电子地图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省2022年影像电子地图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dom.xml
- name: 广东省 50 万水文地质图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省50万水文地质图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dz.xml
- name: 广东省 50 万基础地质图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省50万基础地质图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd_dz.xml
- name: 广东省生态保护红线
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省生态保护红线&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd.xml
- name: 广东省永久基本农田保护图斑
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省永久基本农田保护图斑&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd.xml
- name: 广东省三区三线专题图
uri: crs=EPSG:4326&dpiMode=7&featureCount=10&format=image/png&layers=广东省三区三线专题图&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/GD/gd.xml
天地图-福建:
- name: 福建 - 2016年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2016.xml
- name: 福建 - 2017年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2017.xml
- name: 福建 - 2018年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2018.xml
- name: 福建 - 2019年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2019.xml
- name: 福建 - 2020年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2020.xml
- name: 福建 - 2021年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=IMG_FJ&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2021.xml
- name: 福建 - 2022年影像
uri: crs=EPSG:4490&dpiMode=7&featureCount=10&format=tiles&layers=img_fj&styles=default&tileMatrixSet=default028mm&tilePixelRatio=0&url=https://maps.liuxs.pro/tweak/FJ/2022.xml
4 changes: 3 additions & 1 deletion tianditu_tools/metadata.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name=TianDiTu Tools
qgisMinimumVersion=3.4
description=天地图底图加载
about=QGIS 天地图工具,方便进行天地图瓦片底图的添加以及简单实现了部分天地图 Web 服务 API(地名搜索、地理编码查询、逆地理编码查询)
version=0.4.2
version=0.5.0
tags=basemap, xyz, tianditu, geocoder, 天地图
icon=images/icon.png
experimental=False
Expand All @@ -14,6 +14,8 @@ homepage=https://qgis-plugin-tianditu.liuxs.pro/
tracker=https://github.com/liuxsdev/qgis-plugin-tianditu/issues
repository=https://github.com/liuxsdev/qgis-plugin-tianditu
changelog=
Version 0.5.0 2024/12/18:
* ✨ 新增功能: 支持山东天地图历史影像
Version 0.4.2 2024/08/17:
* 🐛 BUG修复及搜索功能优化
Version 0.4.1 2024/04/15:
Expand Down
129 changes: 129 additions & 0 deletions tianditu_tools/ui/sd.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'sd.ui'
#
# Created by: PyQt5 UI code generator 5.15.10
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.


from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_SdDockWidget(object):
def setupUi(self, SdDockWidget):
SdDockWidget.setObjectName("SdDockWidget")
SdDockWidget.resize(376, 442)
font = QtGui.QFont()
font.setFamily("微软雅黑")
SdDockWidget.setFont(font)
self.dockWidgetContents = QtWidgets.QWidget()
self.dockWidgetContents.setObjectName("dockWidgetContents")
self.verticalLayout = QtWidgets.QVBoxLayout(self.dockWidgetContents)
self.verticalLayout.setObjectName("verticalLayout")
self.groupBox = QtWidgets.QGroupBox(self.dockWidgetContents)
self.groupBox.setObjectName("groupBox")
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.groupBox)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
self.mLineEdit_sdtk = QgsPasswordLineEdit(self.groupBox)
font = QtGui.QFont()
font.setFamily("Consolas")
font.setPointSize(8)
self.mLineEdit_sdtk.setFont(font)
self.mLineEdit_sdtk.setObjectName("mLineEdit_sdtk")
self.horizontalLayout.addWidget(self.mLineEdit_sdtk)
self.pushButton_save = QtWidgets.QPushButton(self.groupBox)
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(8)
self.pushButton_save.setFont(font)
self.pushButton_save.setObjectName("pushButton_save")
self.horizontalLayout.addWidget(self.pushButton_save)
self.verticalLayout_3.addLayout(self.horizontalLayout)
self.label = QtWidgets.QLabel(self.groupBox)
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(8)
self.label.setFont(font)
self.label.setOpenExternalLinks(True)
self.label.setObjectName("label")
self.verticalLayout_3.addWidget(self.label)
self.verticalLayout.addWidget(self.groupBox)
self.groupBox_2 = QtWidgets.QGroupBox(self.dockWidgetContents)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.groupBox_2.sizePolicy().hasHeightForWidth())
self.groupBox_2.setSizePolicy(sizePolicy)
self.groupBox_2.setObjectName("groupBox_2")
self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.groupBox_2)
self.verticalLayout_4.setObjectName("verticalLayout_4")
self.listWidget = QtWidgets.QListWidget(self.groupBox_2)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.listWidget.sizePolicy().hasHeightForWidth())
self.listWidget.setSizePolicy(sizePolicy)
self.listWidget.setMaximumSize(QtCore.QSize(16777215, 58))
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(9)
self.listWidget.setFont(font)
self.listWidget.setAutoScroll(True)
self.listWidget.setAutoScrollMargin(80)
self.listWidget.setResizeMode(QtWidgets.QListView.Adjust)
self.listWidget.setObjectName("listWidget")
self.verticalLayout_4.addWidget(self.listWidget)
self.verticalLayout.addWidget(self.groupBox_2)
self.groupBox_3 = QtWidgets.QGroupBox(self.dockWidgetContents)
self.groupBox_3.setObjectName("groupBox_3")
self.verticalLayout_2 = QtWidgets.QVBoxLayout(self.groupBox_3)
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.checkBox = QtWidgets.QCheckBox(self.groupBox_3)
self.checkBox.setObjectName("checkBox")
self.horizontalLayout_2.addWidget(self.checkBox)
self.pushButton_search = QtWidgets.QPushButton(self.groupBox_3)
self.pushButton_search.setObjectName("pushButton_search")
self.horizontalLayout_2.addWidget(self.pushButton_search)
self.horizontalLayout_2.setStretch(0, 1)
self.horizontalLayout_2.setStretch(1, 4)
self.verticalLayout_2.addLayout(self.horizontalLayout_2)
self.treeWidget = QtWidgets.QTreeWidget(self.groupBox_3)
font = QtGui.QFont()
font.setFamily("微软雅黑")
font.setPointSize(9)
self.treeWidget.setFont(font)
self.treeWidget.setObjectName("treeWidget")
self.treeWidget.headerItem().setTextAlignment(0, QtCore.Qt.AlignCenter)
self.treeWidget.headerItem().setTextAlignment(1, QtCore.Qt.AlignCenter)
self.treeWidget.headerItem().setTextAlignment(2, QtCore.Qt.AlignCenter)
self.treeWidget.headerItem().setTextAlignment(3, QtCore.Qt.AlignCenter)
self.treeWidget.headerItem().setTextAlignment(4, QtCore.Qt.AlignCenter)
self.verticalLayout_2.addWidget(self.treeWidget)
self.verticalLayout.addWidget(self.groupBox_3)
SdDockWidget.setWidget(self.dockWidgetContents)

self.retranslateUi(SdDockWidget)
QtCore.QMetaObject.connectSlotsByName(SdDockWidget)

def retranslateUi(self, SdDockWidget):
_translate = QtCore.QCoreApplication.translate
SdDockWidget.setWindowTitle(_translate("SdDockWidget", "天地图·山东"))
self.groupBox.setTitle(_translate("SdDockWidget", "Token 设置"))
self.pushButton_save.setText(_translate("SdDockWidget", "保存"))
self.label.setText(_translate("SdDockWidget", "<html><head/><body><p><a href=\"https://mp.weixin.qq.com/s/CcdjjjsBk7rNlxalBjUXIg\"><span style=\" text-decoration: underline; color:#0000ff;\">Token 申请方法及使用说明</span></a></p></body></html>"))
self.groupBox_2.setTitle(_translate("SdDockWidget", "服务资源"))
self.groupBox_3.setTitle(_translate("SdDockWidget", "历史影像"))
self.checkBox.setText(_translate("SdDockWidget", "根据当前画布范围"))
self.pushButton_search.setText(_translate("SdDockWidget", "查询历史影像"))
self.treeWidget.headerItem().setText(0, _translate("SdDockWidget", "名称"))
self.treeWidget.headerItem().setText(1, _translate("SdDockWidget", "时间"))
self.treeWidget.headerItem().setText(2, _translate("SdDockWidget", "分辨率(m)"))
self.treeWidget.headerItem().setText(3, _translate("SdDockWidget", "URL"))
self.treeWidget.headerItem().setText(4, _translate("SdDockWidget", "el"))
from qgspasswordlineedit import QgsPasswordLineEdit
Loading

0 comments on commit 045453e

Please sign in to comment.