GIS栅格和矢量数据组织及服务的基本概念可以参考聊聊GIS数据的四个分层与GIS服务。
参考链接
- 聊聊GIS数据的四个分层与GIS服务,by 为名.
监控数据库表记录的变化,并从中获取变化后的数据,这是二次开发所面临的难题。目前有多种解决方案,各有优缺点。
实例请参考SQL 监控表字段变化。
例如mysql可以通过配置my.ini将数据库操作日志写到文本文件中,然后通过分析文本去获取变化。
每隔一段时间获取数据库表记录,查找数据是否发生变化。
最近执行一条如下类似的SQL语句,结果却出现重复数据,分析了半天,最后才发现是:连接条件不唯一,导致结果集数据发生了重复。
1 | # 如果name字典重复n次,则将产生n*n条记录。 |
具体详情请参考Vue3的响应式原理?一篇文章,八张图,三心为你解密~,Vue3响应式原理解析。
精简版Win7,XP,尤其从网上下载的ghost版本的系统,TTS语音引擎多数被阉割,导致很多语音程序无法进行语音朗读。例如chrome的文本转语音功能就需要调用底层Windows操纵系统的tts语音引擎,可使用如下方法测试Windows的TTS语音引擎是否工作正常:
1 | var msg=new SpeechSynthesisUtterance('你好,世界!') |
请参考Win7系统TTS修复-采用原生Win7提取绿色修复,下载对应的修复工具。
日积月累,水滴石穿。每天读几页书,也是一种乐趣。下面记录一下算法之美这本书的一些知识。
explore即探索,收集信息,exploit即利用,利用已收集信息。
老虎机(slot machine) 是一种用零钱赌博的机器,因为上面有老虎图案的筹码而得名。老虎机有三个玻璃框,里面有不同的图案,投币之后拉下拉杆,就会开始转,如果出现特定的图形(比如三个相同)就会吐钱出来,出现相同图型越多奖金则越高。
最近在研究学习QGIS,简单记一下笔记。
地理信息系统(Geographic Informaiton System,GIS)是一个可以建立、浏览、查询、分析地理空间数据的软件系统, 其功能小至地图的展示,大至空间决策分析与支持。
自由软件或免费软件:
商业软件:
提供全世界范围的卫星影像(含历史卫星影像)、地图、地形图、道路、3D建筑物,使用者可以任意探索世界各地的 地理信息,储存浏览过的地方,做有系统的规划与管理。历史卫星影像可供用户询区域性的时序变迁; 另外,也整合海底与水面研究数据,提供地球环境全方位的资料。
Quantum GIS(QGIS)是开源地理信息系统桌面软件,使用GNU(General Public License)授权, 属于 Open Source eospatial Foundation(OSGeo)的官方计划。
QGIS 的目标是成为一个 GIS系统,提供常见的功能与特征。借着核心特征提供基本功能与附加组件(Python 或 C++) 持续地扩充,让使用者可以浏览、管理、编辑、分析数据以及制图。
QGIS安装请参考QGIS安装.
安装QGIS时,将获得两个应用程序:QGIS Desktop 和 QGIS Browser。如果您熟悉ArcGIS, 则可以将QGIS Browser视为类似于ArcCatalog。这是一个用于预览空间数据和相关元数据的小型应用程序。
栅格数据就是将空间分割成有规律的网格,每一个网格称为一个单元,并在各单元上赋予相应的属性值来表示实体的一种数据形式。 空间数据库是对地理栅格数据进行有效管理的一个极为重要的手段。
GIS系统的栅格数据格式有很多种,有卫星影像、数字高程模型、数字正射影像、扫描文件、数据栅格图形、 图形文件(”.jpg”,”.png”,”.tif”)等。其中常用的有”.jpg”,”.png”,”.tif”等。我们在一些任务中会利用一些电子地图下载器 来获取研究范围内的卫星地图,下载得到的格式就是”.jpg”或者”.png”。”.tif”格式的数据不同之处在于它具有空间地理坐标。
目前 QGIS 可以支持读取的主要栅格格式如下:
矢量数据(Vector Data)是用X、Y、Z坐标表示地图图形或地理实体位置的数据。矢量数据一般通过记录坐标的方式来 尽可能将地理实体的空间位置表现的精确。常见的矢量数据有:点、线、面等格式。
QGIS可以支持多种的矢量数据,如常见的 Shapefile 和 MapInfo MIF、TAB; 另外 QGIS 亦支持在 PostgreSQL 数据库中的 PostGIS 图层;以及提供 CSV(delimited text)纯文本导入。
目前 QGIS 可以读取的矢量数据有:
Shapefile是目前最常见的一种矢量数据格式。作为行业标准,几乎所有的商业和开源GIS软件都支持Shapefile。
一个Shapefile数据最少包括文件:
主文件( “*.shp” ):存储地理要素的几何图形的文件。
索引文件( “*.shx” ):空间数据索引文件,存储地理数据几何特征的索引。
DBASE表文件( “*.dbf” ):它是存储属性数据的文件,用于存储地理数据的属性信息。有时候我们也称为表文件或者dbf文件。 这里值得注意一下的是,这个文件Excel也是能够打开的。
空间投影文件( “*.prj” ):用于存储空间参考,也就是投影方式文件。当然了,如果你的数据没有空间参考信息,这个文件自然也就没有了。
地理数据索引文件( “.sbn” , “.sbx” ):这两个文件只有在进行主题间空间关系查询、主题的空间联接和对shape字段进行索引的时候才存在。 它们用于存储地物特征的索引。
如果使用纬度和经度,它可以在世界的任何地方表达, 与本地语言的地址符号不同,世界上每个人都可以理解。 基准系统(大地测量参考系统)是获得这种纬度和经度的标准, 大地测量系统和世界大地测量系统。
大地测量是为建立和维持测绘基准与测绘系统而进行的确定位置、 地球形状、重力场及其随时间和空间变化的测绘活动。世界大地测量系统(World geodetic system,简称WGS)是指1960年以来, 由美国国防制图局(DMA)建立的四个世界大地测量系统(WGS60、WGS66、WGS72和WGS84)的统称。
地理坐标系:为球面坐标。 参考平面地是椭球面,坐标单位:经纬度;
地理坐标转换到投影坐标的过程可理解为投影。(投影:将不规则的地球曲面转换为平面);
地理坐标,就是用经线(子午线)、纬线、经度、纬度表示地面点位的球面坐标。
大地水准面是地球表面的第一级逼近。假设当海水处于完全静止的平衡状态时,从海平面延伸到所有大陆下部, 而与地球重力方向处处正交的一个连续、闭合的曲面,这就是大地水准面。
大地水准面可以近似成一个规则成椭球体,但并不是完全规则, 其形状接近一个扁率极小的椭圆绕短轴旋转所形成的规则椭球体,这个椭球体称为地球椭球体。 它是地球的第二级逼近。
确定了一个规则的椭球表面以后,我们会发现还有一个问题, 参考椭球体是对地球的抽象,因此其并不能去地球表面完全重合, 在设置参考椭球体的时候必然会出现有的地方贴近的好(参考椭球体与地球表面位置接近), 有的地方贴近的不好的问题,因此这里还需要一个大地基准面来控制参考椭球和地球的相对位置。 这是地球表面的第三级逼近。
地心基准面:由卫星数据得到,使用地球的质心作为原点,使用最广泛的是 WGS 1984。
区域基准面:特定区域内与地球表面吻合,大地原点是参考椭球与大地水准面相切的点,例如Beijing54、Xian80。 我们通常称谓的Beijing54、Xian80坐标系实际上指的是我国的两个大地基准面。
我们通常说的参心大地坐标系和地心大地坐标系的区别就在于此。
参心大地坐标系:指经过定位与定向后,地球椭球的中心不与地球质心 重合而是接近地球质心。区域性大地坐标系。是我国基本测图和常规大地测量的基础。如Beijing54、Xian80。
地心大地坐标系:指经过定位与定向后,地球椭球的中心与地球质心重合。如CGCS2000、WGS84。
投影坐标系:为平面坐标。参考平面地是水平面,坐标单位:米、千米等;
在地球椭球面和平面之间建立点与点之间函数关系的数学方法,称为地图投影。
地球椭球表面是一种不可能展开的曲面,要把这样一个曲面表现到平面上,就会发生裂隙或褶皱。 在投影面上,可运用经纬线的“拉伸”或“压缩”(通过数学手段)来加以避免, 以便形成一幅完整的地图。但不可避免会产生变形。 地图投影的变形通常有:长度变形、面积变形和角度变形。 在实际应用中,根据使用地图的目的,限定某种变形。
做国内,为了数据保密的原因,国家测绘地理信息局规定,凡是公开对外提供服务的在线地图都必须使用保密插件做一次非线性坐标转换,将原始WGS84坐标系的数据转换为GCJ02坐标系(俗称火星坐标系),而百度在火星坐标系的基础上又做了一次偏移,形成了其自身的百度09坐标系,于是从互联网上下载、爬取的数据常用的坐标系有这么三大类:WGS84、GCJ02、BD09(从国外渠道下载的大多是WGS84,从高德、腾讯系下载的数据是火星坐标系GC02,从百度系下载的数据为百度坐标系BD09)
请参考中国国家基础地理信息数据、全球1:100万基础地理数据。
请参考GEE学习笔记 五十四:QGIS展示3D的高程数据,QGIS下载各种DEM的插件(SRTM 90m/30m -ALOS 30m -Cop 30m/90m-NASADEM Global DEM)。
请参考QGIS 2. 将网页中的地图或卫星图导入qgis (加载WMS/WMTS图层)。
使用 工具箱->栅格杂项->gdal2tiles 工具将GeoTiff文件切片。
XYZ编码含义请参考OGC标准WMTS服务概念与地图商的瓦片编号流派-web地图切片加载。
瓦片信息请参考maptiler tool。
请参考:
数据字典(Data dictionary)是描述数据的信息集合,是对系统中使用的所有数据元素的定义的集合。
什么是数据字典? 字典的英文是 Dict, 翻译过来是字典、词典。
和字典同类的东西呢,就是 Map。 Map 就是地图、映射的意思。
所以字典的本质就是 映射,对应。
字典一般分为两部分: 名称 和 描述信息。 用计算机术语说,就是 键-值对(Key-Value pair), 名值对、还有 Code-Name 等。
在系统中,因为有很多标准、规范、约定, 为了执行这些规范,对数据分类、数据状态进行精确定位,又或者因为多个系统之间需要进行数据交换,但叫法和显示上有差别,在存储数据时需要存储码值,而不能只存储显示时使用的名称。
例如状态值和状态名称。标准做法是只存储 VALUE, 不存储名称。 如果考虑优化,减少数据表的关联查询(join),那么可以在存储 VALUE 的同时冗余存储 NAME。 当然,需要根据具体情况来设计, 如果 NAME 或者描述信息太长,占用空间较大,那么可能就不会进行冗余。 顺便提一句, 减少空间占用 也是使用数据字典的一个原因。
在平时开发的过程中,特别是在遇到表单时候,我们经常需要为前端提供一些下拉选项的信息,这时候我们需要为前端提供下拉菜单的信息,让前端进行渲染。同时我们在数据库中存储的只可能是对应的编码。
如果前端直接将value值写死在前端代码中,那么就破坏了低耦合原则,如果未来清查状态有增加或者管理员想要修改,那么需要修改前端代码,会带来非常大的麻烦。
为解决该问题,就需要设计数据字典,其实就是数据库中的一张表。
名称-值。
如果状态、类型都有对应的字典表,那么随着系统规模的扩大,字典表会越来越多,可能200张表里面有30-50个是字典表。 这就很烦人了,这些表的字段都是差不多的。这时候比较好的办法就是合表。合表就会涉及到数据类型和如何区分的问题。
将相似的表结构合并时,添加一个字段来进行区分是常见的做法。数据字典的区分,我们一般使用 分类这个字段。分类的英文单词,大致有: type、class、classify、category 等。因为分类是给系统后台或者程序员看的,所以一般是使用字符串类型(String, VARCHAR(32))。
同时,为了避免再引入一个分类类型说明的表,我们做一点冗余: 使用2个字段: 分类编码(category_code) 和 分类说明(category_desc)。
ID、排序
创建时间、更新时间、创建人、修改人
1 | CREATE TABLE IF NOT EXISTS `dict_common` ( |
最近需要将一个autocad的dwg文件转成pdf,简单记录流程。
使用vscode打开dwg二进制文件,查看其文件头。参考AutoCAD的图形格式版本代号确定生成该dwg文件的autocad版本,并下载autocad2017。
先跟随教程AutoCAD快速上手,只需要10分钟!简单熟悉一下autocad的界面,了解基本概念,如模型、布局等。
打印cad图纸的步骤参考AutoCAD如何设置打印想要的区域输出jpg等格式,具体为:
OpenFlight(或 .flt)是一种 3d 几何模型文件格式,最初由 Software Systems Inc. 在 1988 年为其MultiGen实时 3d 建模包开发。最初称为 Flight,该格式被设计为非专有 3d供实时 3D视觉模拟图像生成器使用的模型格式。
OpenFlight 相对于许多 3d 几何模型文件格式(.obj、.dxf、.3ds)的早期优势是其特定的实时 3d 图形行业设计。 这意味着格式是基于多边形的(而不是NURB曲面),并提供实时 IG 系统所必需的实时树结构。
OpenFlight格式是实时三维视景仿真领域中最为流行的图像生成格式。OpenFlight格式由Presagis(以前称为MultiGen-Paradigm)开发和维护,现在已被3D视觉仿真社区广泛采用为标准格式。3DSMax和Blender等3D建模软件都提供了对FLT文件类型的支持。
Tag Image File Format,缩写为TIFF或TIF,是一种用于存储光栅图形图像的图像文件格式,在图形艺术家、出版业、和摄影师中很流行。TIFF 被扫描、传真、文字处理、光学字符识别、图像处理、桌面出版和页面布局应用程序广泛支持。该格式由Aldus Corporation创建,用于桌面出版。它于 1992 年发布了最新版本 6.0,随后更新了Adobe Systems版权在后者于 1994 年收购了 Aldus 之后。一些 Aldus 或 Adobe 技术说明已发布,对格式进行了较小的扩展,并且一些规范已基于 TIFF 6.0,包括TIFF/EP (ISO 12234-2)、TIFF/ IT (ISO 12639)、 TIFF-F (RFC 2306) 和 TIFF-FX (RFC 3949)。
TIFF 是一种灵活、适应性强的文件格式,用于在单个文件中处理图像和数据,包括定义图像几何形状的标题标签(大小、定义、图像数据排列、应用的图像压缩)。例如,TIFF 文件可以是包含JPEG(有损)和PackBits(无损)压缩图像的容器。TIFF 文件还可以包含基于矢量的剪切路径(轮廓、剪裁、图像帧)。无损存储图像数据的能力格式使 TIFF 文件成为有用的图像存档,因为与标准 JPEG 文件不同,使用无损压缩(或无压缩)的 TIFF 文件可以在不损失图像质量的情况下进行编辑和重新保存。
可用Adobe PhotoShop软件打开。
高动态范围成像(英语:High Dynamic Range Imaging,简称HDRI或HDR),在计算机图形学与电影摄影术中,是用来实现比普通数位图像技术更大曝光动态范围(即更大的明暗差别)的一组技术。高动态范围成像的目的就是要正确地表示真实世界中从太阳光直射到最暗的阴影这样大的范围亮度。
高动态范围成像最初只用于纯粹由计算机生成的图像。之后又开发出一些从不同曝光范围照片中生成高动态范围图像的方法。随着数字相机的日渐流行以及桌面软件变得易于使用,许多业余摄影师使用高动态范围成像的方法生成高动态范围场景的照片,但是,实际上高动态范围还有许多其它的应用。
可用Adobe PhotoShop软件打开。
.mip文件最初为Paint Shop Pro创建的图像文件,这是一个图像编辑程序,现在称为PaintShop Photo Pro。 包含相同的多个分辨率 BMP。 图片; 通常用于纹理映射。MIP文件允许用户存储针对特定大小优化的图形。 这样,就不必拉伸或压缩图像以适合图像。 例如,512x512像素MIP图像还可以包含用于缩略图徽标的32x32像素版本。
可用Adobe PhotoShop软件打开。
ESRI 文件地理数据库 (FileGDB) 是磁盘上文件夹中的文件集合,其中包含相关地理空间数据,例如要素数据集、要素类和关联表。它需要某些其他文件与 .gdb 文件一起保存在同一目录中才能工作。可以在 .gdb 文件上执行查询以管理空间和非空间数据。
查看.gdb文件需要安装arcgis系列软件,使用其中的catalog软件打开。或者参考Open Source Tool capable of reading Esri File Geodatabase (.gdb)?。