精华内容
下载资源
问答
  • web开发gis
    2021-05-12 19:54:44

    WEB GIS 开发基础概念汇总

    1.基础概念

    WEB GIS是指依托互联网建立的地理信息服务系统,与传统的地理信息科学一脉相承,是实物地图制图技术与计算机技术、网络技术、软件开发等技术结合后的的产物,其相关的各个领域常称为地理信息科学。

    地理信息科学通过研究地理空间发生直接或间接关系的数据的采集、存储、处理、分析、表达和服务方法,使得数据从原始的二维字符状态转变为我们容易理解的空间可视化语言或知识,从而服务于环境、国土、规划、水利、能源、交通、居民生活等各个方面。

    WEB GIS中的GIS其英文为Geographic Information System,即地理信息系统,WEB GIS通常意义上的理解是依托于网络建立的地理信息系统,按照现有软件开发技术,其一般为B/S架构。

    2.技术框架

    2.1 常见技术概念汇总

    当前存在许多包含了各种层次的自由及开源的GIS软件,例如大型的桌面GIS有QGIS和GRASS GIS等,目前比较流行的服务器端软件有Geoserver、MapServer和QGIS Server等,还有开源的GIS数据库项目如PostGIS/PostgreSQL Spatial Database,另外还有一些数据转换工具(如GDAL/OGR)以及地图投影算法库(如 PROJ 和 GeoTrans )等开源项目。这些软件大多都得到OSGeo的支持。

    开放数据是一类可以被任何人免费使用、再利用、再分发的数据。在其限制上,最多是要求署名和使用类似的协议再分发。Data.gov中包含了许多由美国政府收集的开放数据。此外,开放街道地图(OpenStreetMap,缩写OSM ) 也是一个广泛使用的开放数据源示。OSM项目由英国人Steve Coast创立,概念启发自维基百科网站,是一个构建自由内容之网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图,并且让廉价的移动设备有方便的导航方案。

    2.2 思维导图(借用,感觉比较到位)

    学习路线可参照下图,现阶段WEB GIS开发主要基于B/S架构,分为前端和后端,后端另有单独架构。(后附上表格介绍简单介绍各个组件)

    在这里插入图片描述

    技术类别产品名称简介
    前端(客户端)OpenLayersOpenLayers是一个前端UI库,用于使用javascript创建基于Web的空间应用程序。 它支持各种图层源和后端。 例如,可以从GoogleMaps或自定义磁贴源中提取地图图块。这带来的优势在于它使开发人员能够重用诸如tile源之类的元素,而是将注意力集中在其应用程序的更独特方面,例如“业务逻辑”。平铺源等默认组件可以在以后轻松换出。 它支持位图和矢量图层,包括点,线和多边形。 其最广泛使用的功能之一是能够在基本地图上叠加数据层。
    LeafletLeaflet是一个Javascript库,强调前端UI。 它支持多种基础层和几何类型的组合。 它覆盖了与OpenLayers有些相似的领域,但功能略有减少。 相对于OpenLayers而言,它的优势在于其对移动设备的出色支持,卓越的产品价值,简洁的简约设计以及对性能的强烈关注。
    GeoMooseGeoMoose结合了几个流行的开源库,创建了一个强大而灵活的映射平台,重点放在前端的Javascript / AJAX上。 它使用MapServer作为后端,OpenLayers和Dojo(都是基于Javascript的)用于其用户界面。 它提供了一组强大的工具,用于查看,编辑和查询浏览器中的数据。 它的发展社区似乎非常活跃,并且具有良好的前进轨迹。 它的吸引力来自其功能集和现代,平易近人的用户界面。 其记录良好的Javascript API将使Javascript开发人员和其他Web构建者都能接近,因为大多数Web开发人员至少都接触过Javascript。
    WEB服务与应用服务MapServerMapServer是一个开源平台,用于发布空间数据和创建交互式地图应用程序到Web。 它自20世界90年代中期以来一直存在,并被认为是成熟和稳定的,并且持续积极发展。其主要重点是从多个层生成地图,包括基础图像和空间数据集。 它还提供智能标签,包括高级排版和布局,包括碰撞检测。 它可以读取和提供各种格式的空间数据,包括Shapefiles,WMS,GDAL,PostGIS和GeoTIFF。它通常用于生成地图图块及其MapCache扩展。它有一些库,支持各种语言的应用程序开发,包括Python,Perl,Ruby,Java和PHP。
    GeoServerGeoServer主要基于Java语言。它提供了创建和编辑地理空间数据以及在面向服务的体系结构中提供地图的基本功能。它使用OpenLayers模块并提供和实现Web地图服务(WMS)标准。 它还使用了GeoTools框架,该框架涵盖了MapServer功能的一小部分。 像GeoServer本身一样,是用Java编写的。 它将主要吸引已经使用基于Java的工具和平台的开发人员。
    数据库(数据服务)PostGISPostGIS是PostgreSQL数据库的扩展,它支持空间查询。PostgreSQL既是关系数据库又是对象数据库,被广泛认为是最先进的开源数据库,与Oracle和MS-SQL 类似。 PostGIS支持各种空间查询,包括邻近度,半径,边界框,碰撞/重叠检测等。 它是Web GIS项目中经常使用的非常有用的工具。
    GDAL (Geospatial Data Abstraction Library)GDAL是地理空间数据格式的翻译库。 它可以导入和导出各种各样的文件和编码类型。 它可用于在不同投影系统之间转换空间数据。栅格数据格式由GDAL处理,矢量数据格式由OGR处理,现在包含在GDAL中。 它还可用于从多个图像文件源创建马赛克。 GDAL是一种有价值的工具,用于从不同来源获取数据并将其转换为协同工作。
    工具TileMillTileMill是一个桌面应用程序,用于生成地图图块图像,然后将其作为静态文件托管以用作基础图层。 TileMill可用于创建视觉上令人惊叹的基础层。 它非常注重美学,包括许多经过深思熟虑的预设,使没有设计背景的人能够制作非常有吸引力和专业的地图图层。 TileMill的开发由一家名为MapBox的公司领导。 他们提供几种有吸引力的付费服务,包括瓷砖托管和精选和精心调整的基础层。

    3.内网离线WEB GIS搭建思路

    需求简析,公司内网需要搭建离线地图服务,主要功能有:

    1.高分辨地图显示

    2.制图,用于表示行动路径等

    3.规划(类似于导航,不过只需要标示出从A到B的可行路径就好,额外功能是计算总时间)

    4.文本规划,要能生成规定的文本格式用于呈送领导审阅

    针对以上需求(因为从头到尾就我一个人搞,所以就简单的统计了一下需求),我决定使用PostgreSQL搭建数据服务,GeoServer搭建GIS服务,OpenLayers建立前端库,这样可以实现基本的WEB GIS服务,综合现有情况我的服务器只有一台,并使用了vSphere进行了虚拟化,所有资源并不充分(虽然最后同时在线用户顶多就是那一个最忙的部门的4个人),所以是否需要丰富后端,或者将其他功能都放到前端需要再考虑,不过第一步终于捋清了。

    4.感谢

    本文是个人在探索搭建内网WEB GIS过程中的思路总结,参考了网上的很多资料,在这里提出感谢,主要如下。

    1.http://webgis.cn/

    2.https://baijiahao.baidu.com/s?id=1671250239402865139&wfr=spider&for=pc

    更多相关内容
  • 通过HTML,实现基本的地图显示以及查找地点等部分的功能。实现地图可视化。
  • 开发技术-Web
  • GIS WEB 开发

    2018-11-27 21:12:55
    地理信息开发(GIS) 中比较好的参照资料,如何在WEB开发中嵌入GIS开发。
  • 开发技术-Web
  • SVG(Scalable Vector Graphics)是一种基于XML 的用来描述二维矢量图形和矢量/点阵混合图形的置标语言,是一种全新的矢量图形规范。 SVG规范定义了SVG的特征、语法和显示效果,包括模块化的XML命名空间(namespace...
  • GIS门户网站是项目OpEc的一部分,并且随着eartH2Observe以及其他开发投资或特殊功能的赞助而继续发展。 实例实例 您可以在找到GISportal软件示例实例的完整列表。 概述 门户由三部分组成。 一个使用HTML , CSS和...
  • Web GIS从基础到开发实践(基于ArcGIS API FOR JavaScript)(书籍) ,刘光编著,pdf文档
  • 重要链接: 主页: : 获得自己的云Web GIS: : 签署内部计划: : 用户手册: : 开发人员手册: : 执照该程序已获得GNU GPL v3的许可。商业支持是否需要修复错误或向NextGIS Web添加功能? 我们为此软件提供定制...
  • mxd.codes是我的个人网站,专注于gis和网站开发。 :waving_hand: 欢迎来到mxd.codes的网站仓库。 您可以在此处看到该站点: 该站点的前端是使用react框架。 后端包括: CMS: 是一个的开源内容管理系统。 分析...
  • 基于Oracle 10g SDO网络的GIS网络Web GIS开发.pdf
  • 对比各种Web GIS实现方式的基础上,选择了操作简单、开发便捷的基于MapXtreme地图服务器的Web GIS开发方法,在Windows XP系统下,以ASP等作为主要前端开发工具,以SQL Server2000作为数据服务器存储地图中的路径信息...
  • ArcGis_Server开发Web_GIS新手体验
  • superMap gis web开发

    2015-12-31 13:43:43
    适用superMap做gis web开发引用的包
  • 基于Web Services 和. NET 技术的新一代Web GIS 研究与开发
  • (1)、强大的Web GIS系统的开发; (2)、分布式GIS系统的开发; 3、ArcGIS Server其内核与ArcGIS Desktop和ArcGIS Engine一样,都是ArcObjects库。其所谓的Web GIS,其实无非就是用Web技术来封装ArcObjects而已...
  • WEB gis 开发

    2012-05-01 20:53:11
    gis+web程序设计,该系统主要涉及网络GIS系统的设计和开发。和实际的应用案例相结合
  • 全书内容实用、详细,深入探索了以Google Maps为代表的主流GIS Web应用的原理、设计和实践,阐述开发GIS Web应用的技术和最佳实践,理论结合实际案例,深入浅出,主要内容包括Web免费GIS信息的挖掘和利用、通过开源...
  • 第1章Web GIS基础 1.1GIS及相关技术的发展 1.1.1Web开发技术的发展 1.1.2GIS的发展 1.1.3Web服务的发展 1.1.4Web GIS的发展 1.2OGC的Web服务规范 1.2.1OWS服务体系 1.2.2空间信息Web服务的角色与功能 1.2.3空间信息...
  • GIS Web开发人员Sara Wilcox的产品组合。
  • 图形数据和监控数据分离,效率低下和资源浪费的问题,将Web-GIS引入矿井通风管理信息系统中,基于地理信息平台-SuperMap IS.NET,利用Ajax技术,结合SQL Server2003数据库管理系统,在Visual Studio软件平台上开发设计了B/...
  • 基于WEB-GIS的大同市矿山地质环境动态遥感监测系统.pdf
  • 它将QGIS项目转换为带有查看,导航,搜索和打印数据的工具的Web和Mobile GIS应用程序。 最重要的是,还有一个PostgreSQL管理数据库,用于存储项目,层,用户以及一些不在QGIS项目中的特定设置。 数据库管理和项目...
  • PAGE 47 Web GIS技术原理与应用开发 绪论 1.1 WebGIS是Internet和www技术应用于GIS开发的产物是利用Web技术来扩展和完善地理信息系统的一项新技术是实现GIS互操作的一条最佳解决途径 1.2 WebGIS的基本特点1.WebGIS是...
  • WebGIS开发和Web开发的区别

    千次阅读 2022-01-27 09:10:06
    本文主要介绍webGIS开发和普通的web开发的差异以及投影参考系的概念。

     很多对GIS开发有一定了解的朋友应该知道,WebGIS开发是GIS开发岗位招聘中需求最高的。

    学习GIS开发,第一步都是先学习Web开发基础(HTML5/CSS/JS),那WebGIS开发和Web开发有什么差异?



    测一测,看看我是否适合学习GIS开发

    WebGIS开发简介

    Webgis开发其实本身也是Web开发的一个过程,同样包括了三个端口:前端、后端和服务器。如下图所示:

    WebGIS开发过程

    前端涉及到的一些地图数据库(openlayer/leaflet/mapbox等)做一些可视化效果;

    中间层就是服务器,这一部分包含了一个GIS服务器的概念;

    后端主要就是数据库层;

    WebGIS开发涉及到很多前后端交互的过程,主要有2个方面。

    第一个是地图显示时发生的一些前后端交互过程。比如前端进行一些交互操作,打开一个地图网页,对网页进行双击或者拖动,改变当前地图的显示范围,然后会引起发送请求,后端会响应请求,返回可见范围的图片数据。

    总结如下:

    前端——交互操作——发起请求

    后端——响应请求——返回数据

    另外一个是通过前端去绘制并存储数据的过程。在前端绘制一个地图以后,可以主动发起请求,把绘制完的数据发送到后端,同样的后端也会响应请求,存储数据。

    总结如下:

    前端——绘制数据——发起请求

    后端——响应请求——存储数据

    和传统的web开发不同的是,WebGIS开发对应的是空间数据,需要使用到空间数据库,存储的数据也是矢量数据。

    所以WebGIS开发和Web开发有一个很重要的区别在于,WebGIS开发数据的存储和数据格式和传统前端不太一样;数据量可能会比较庞大,涉及到一些后端查询和展示的问题。

    说到这里,不得不提一个很多朋友会遇到的一个问题。

    在接触WebGIS开发的过程中,大家都会有一个最基础的需求,就是把数据展示出来。然后同样也会遇到一个问题:我按照一个示例的格式去写了代码,数据为什么不显示?或者出现了偏移?

    这里就要引入一个很重要的概念,就是投影参考系。

    刚才提到的问题就是由于我们的数据投影参考系,与我们地图框架涉及的参考系没有保持一致造成。

    投影参考系

    • 地图投影是利用一定数据法则把地球表面的经、纬线转换到平面上的理论和方法。

    • 由于地球是一个赤道略宽的不规则的梨形球体,其表面是一个不可展平的曲面,运用任何数学方法进行这种转换都会产生误差和变形,为按照不同的需求缩小误差,就产生了各种投影方式。

    下面是WebGIS中最常用的两种参考系:

    WGS84参考系是长宽比2:1的一个长方形,以度为单位。

    Web墨卡托参考系是一个正方形,它是前端部分会大量使用的参考系,以米制为单位。

    如果要在前端快速分辨这两种坐标,可以看下地图显示范围,Web墨卡托参考系为了方便显示,切掉了一部分位置;或者看坐标,如果是坐标比较小的,比如在正负180以内,很可能是WGS84坐标系;坐标随便就是几百万几十万的,一般都是Web墨卡托参考系。

      其他文章:

    三维GIS/GIS开发学习路线、软件和数据、视频资源推荐

    WebGIS和桌面GIS、移动GIS、三维GIS的区别

    WebGIS开发和Web开发的区别

    GIS开发常用的开源地图数据库介绍

    点击了解更多学习GIS软件开发内容

    展开全文
  • GIS功能开发思路 地图显示 地图浏览 基础操作,如缩放等 带有属性结果的GIS功能 查询 交通网络分析 空间分析 … 带有属性结果的GIS功能开发思路,例如距离量算 L.supermap.measureService(url).measure...

    GIS功能开发思路

    • 地图显示
      地图浏览
      基础操作,如缩放等

    • 带有属性结果的GIS功能
      查询
      交通网络分析
      空间分析

    带有属性结果的GIS功能开发思路,例如距离量算

    L.supermap.measureService(url).measureDistance({geometry:xxx}, function (result) {// doSomething})
    

    在这里插入图片描述

    实现GIS功能的API

    在这里插入图片描述

    GIS服务使用那些接口

    L.supermap.*Service
    例如

    • L.supermap.queryService
    • L.supermap.spatialAnalystService
    • L.supermap.networkAnalystService

    实例化功能服务类对象(*Service对象)
    L.supermap.queryService(url).queryByBounds(param, function (result) {// doSomething})

    url:服务访问地址

    关于URL的说明

    • url是iServer提供的REST服务的访问地址
    • 不同的功能服务对象实例化所需要的url地址不同
      在这里插入图片描述

    设置参数使用哪些接口

    L.supermap.*Service(url).queryByBounds(param, function (result) { // doSomething})
    

    SuperMap.*Parameters
    例如

    • SuperMap.MeasureParameters
    • SuperMap.QueryBySQLParameters
    • SuperMap.ThemeParameters
    • SuperMap.OverlayAnalystParameters
    • SuperMap.FindPathParameters

    结果获取

    L.supermap.queryService(url).queryByBounds(param, function (result) { // doSomething})
    
    • function (result) {} 定义回调函数
    展开全文
  • 基于Web的MGIS的开发和实施是监视和管理自然资源和环境的合适技术,旨在实现湄公河三角洲地区的可持续发展。 所提出的解决方案表明,Web GIS可以有效地应用于管理机构之间的数据集成和共享,以提供完全集成的信息,...
  • 以VB.net为开发平台,用SQL-Server数据库存储属性数据,调用MapObjects控件,结合 IIS与MO IMS,采用西安市1∶50000基础地理数据,设计并开发了基于Web GIS的城市环境监测管理信息系统.该系统具有数据采集、数据分析...
  • 一、创建一个项目 如果这是你第一次使用Django,那么你必须进行一些初始设置。也就是通过自动生成代码来建立一个Django项目–一个Django项目的设置集,包含了数据库配置、Django详细选项设置和应用 特性配置,具体...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 13,349
精华内容 5,339
关键字:

web开发gis