GIS运用体系开发-亚洲ca88官方网站

发布时间:2022-10-14 00:49:46 来源:亚洲ca88官方网站

  而arcgisenginearcgisserver中有的都仅仅ao的不完好版别它们所具有的仅仅ao的部分ao外一部分是专用于构建arcgisdesktop人们能够运用ao构建独立的运用程序但这有一个很大的缺陷那便是ao不是一个独立的运用产品也便是说它不能脱离arcgis渠道只要在购买了arcgisdesktop才干具有ao组件集才干运用它供给的组件方针来进行运用开发

  GIS:办理剖析地舆空间数据的计算机体系。 但凡用到地图的当地,都能够用 GIS。 理论上有很大的用途,实践上尚待深化开掘。 跟着 GIS 逐渐走向群众化,广义的 GIS 应该:侧重空间数据办理,不侧重空 间剖析。

  GIS 的四个部分:硬件,软件,数据,人员。 从软件和数据的视点,GIS 能够分为两品种型: 东西型 GIS(GIS 根底渠道软件、GIS 东西软件) :供给了根本的空间信息处 理方案,能够运用于各个范畴。一般由专门的软件开发商完结。常见的 GIS 东西 软件:ArcGIS、MapInfo 等。 运用型 GIS(GIS 运用软件、GIS 运用体系) :针对某个特定用户单位的需求 和运用意图而规划的一种处理实践运用问题的地舆信息体系。一般绑定特定的空 间数据库。能够在东西型地舆信息体系的根底上进行二次开发完结。

  GIS 运用体系的分类: 从功用上,科学研讨东西和作业服务体系。作业服务体系做得较多。 科学研讨东西:将 GIS 作为科学研讨的辅佐手法。首要运用于有关地学范畴 的研讨中,不只需求用到地舆信息体系通用软件所供给的功用,并且还要用到各 种专业剖析模型,但对界面等的要求,能够放宽。 作业服务体系:运用于触及空间数据的政府部门以及企业,以进步办理功率、 拟定好的决议方案和完结安排方针。 从服务方针上,专题型、区域型(概括型) 、群众型。最常见的是区域专题型。 专题型地舆信息体系:为特定方针服务,如土地资源办理信息体系、水资源 办理信息体系、矿产资源办理信息体系等。

  区域型地舆信息体系:以区域概括研讨和全面信息服务为方针,能够有不同 规划,如国家级、省级等行政区域;流域,如黄河流域地舆信息体系等。 群众型地舆信息体系:面向群众、不触及详细专业。地图网站、灵图的我国 电子地图(单机的电子地图光盘) 。

  GIS 运用体系结构分层 运用体系一般都能够分化为三层:展示层(外观层、显现层、表明层) 、运用 层(逻辑层、业务层) 、数据层。GIS 运用体系也能够这样分化。 按运用时的网络环境,GIS 能够分为:桌面 GIS、局域网 GIS、互联网 GIS。 关于桌面 GIS,三层都会集于一台机器上;关于局域网(作业组)GIS,一般是数 据会集,运用散布,即数据层在服务器上,展示层和运用层会集在客户端;关于 互联网 GIS,一般是展示层在客户端,运用层体现为 GIS 服务器和 Web 服务器, 数据层体现为数据库服务器。现在最常见的 GIS 运用体系,归于局域网 GIS。

  GIS 运用体系按客户端服务器的负载状况,能够分为 C/S 办法、B/S 办法。 传统 C/S 办法中(即所谓的两层结构的 C/S 办法) ,展示层和运用层会集在客 户端,导致 Client 端十分臃肿且负载太重;Server 端作为数据库、文件服务器,进 行的业务相对简略。为了使客户端“瘦身” ,而呈现了三层结构的 C/S 办法,即: 客户——运用服务器——数据库服务器。但现在仍是两层结构的 C/S 办法运用较 多。所以也首要针对 C/S 办法。 B/S 办法一般体现为 WebGIS,即 Web 页面上的 GIS。

  GIS 运用体系开发,也能够称为 GIS 工程规划与开发,是指在 GIS 软件渠道 上,把专业运用办法或模型与数据库集成起来,构成能够处理地舆空间问题的专 业运用软件的进程。

  GIS 运用体系一般是依据现有 GIS 软件渠道进行开发的,称为 GIS 二次开发。 为什么要进行二次开发?针对详细运用,定制或许开发一些新的功用。 关于 ArcGIS 渠道,二次开发有三种办法:

  VBA:运用 VBA 环境开发。言语便是 VBA。 DLL:运用动态链接库(DLL)组件进行开发。 依据控件构建独立的运用程序(包含运用 ArcObjects 进行开发和依据 ArcGIS Engine 开发嵌入式运用) 。 最常见的办法:依据 GIS 控件——ArcGIS Engine 进行开发。不一定最合理, 习气凌驾于理由之上。 GIS 运用体系开发首要包含数据建库和(软件)体系开发两部分。体系开发主 要便是在集成开发环境下依据 GIS 控件搭体系。搭体系不是做算法,需求考究开 发功率。

  介绍 GIS 运用体系开发所需的根底常识,首要包含三个方面:ArcGIS 软件、 编程言语、数据库。

  ArcGIS 系列软件是 ERSI(Environmental Systems Research Institute)公司的主 导软件产品,是现在世界上功用最强壮,运用最广泛的 GIS 软件。它是一个全面 的可弹性的 GIS 渠道,为用户构建一个完善的 GIS 体系供给完好的处理方案。图 1-1 显现了 ArcGIS 系列软件的体系结构。

  人们一般所说的 ArcGIS,指的仅仅 ArcGIS Desktop(ArcGIS 桌面) ,包含: ArcMap、ArcCatalog、ArcToolBox 等。 介绍部分常用的软件: ArcMap:一幅智能的地图。 ArcCatalog:办理空间数据库(或空间数据文件) 。类似 Windows Explorer,能 快速地进行地舆数据与元数据的阅览。供给易于运用的界面与导游,能够创立和 办理图层以及空间数据库。 ArcToolbox:一套空间处理东西(大致性的) 。 ArcSDE:是在数据库办理体系中存储和办理多用户空间数据库的通路。无专 门的界面,经过 ArcCatalog 来运用。 ArcGIS Engine:ArcGIS 供给的用来进行二次开发的 GIS 控件。

  学习 ArcGIS 软件,以耍弄数据(或地图)为中心,首要在于地舆数据办理。 比如:ArcGIS 桌面软件的环境了解、视图阅览、数据转化、地图符号化、查询、 数据修正等。 从简略、从根底做起,不要受教材影响,走上学习空间剖析而疏于数据办理 的歧途。

  常见的编程言语,从语法办法上来看,首要是两个门户:C 门户(C、C、 C#、Java 等) ;Basic 门户(VB6、等) 。 做 GIS 运用体系,应挑选开发功率(首要体现为速度)较高的言语,所以推 荐的便是:C#、VB.NET。做 GIS 根底渠道,其内核一般仍是选用 VC。 不需求过火考虑挑选哪种言语,挑选高效的集成开发环境更要紧。

  做 GIS 运用体系对数学的要求: 对数学常识没有太多的要求。初等数学中的几许,高等数学中的微积分、概 率论、离散数学、线性代数等,关于 GIS 运用体系开发来说,根本都用不上。 对数学才能有要求。可是,这个很欠好描绘。记忆力好一点,留意力会集一 点,更重要。

  编程言语学习,简略来说,便是两块:数据库和控件运用。 数据库:衔接字符串,查询计算刺进删去修正,业务操控等。 控件运用:菜单,右键菜单,状态栏,东西条,表格,列表框,复选框,进 度条,图片框,定时器,滚动条等。 其它方面:数据结构运用、文件处理(文本文件读写,字符串处理) 、图形图 像处理等。 集成开发环境的娴熟运用很重要。程序调试、反常处理等。

  数据办理办法:文件办法,数据库办法。 文件处理体系是数据办理最遍及的办法,有许多缺陷:首要每个运用程序都 有必要直接拜访所运用的数据文件,运用程序彻底依靠于数据文件的存储结构,数 据文件修正时运用程序也随之修正;别的的问题是数据文件的同享。 数据库办理体系(Database Management System,DBMS)是在文件处理体系 的根底上进一步开展的体系。DBMS 在用户运用程序和数据文件之间起到了桥梁

  效果。DBMS 的最大长处是供给了两者之间的数据独立性,即运用程序拜访数据 文件时,不用知道数据文件的物理存储结构;当数据文件的存储结构改动时,不 必改动运用程序。 首要的数据库办理体系:Access、SQLServer2000、Oracle10g。

  SQL 言语(结构化查询言语) 程序规划言语不同于数据库操作言语。 SQL 言语能够用来完结绝大部分数据库操作。常用的 SQL 句子包含:刺进记 录、修正记载、删去记载、查询记载、创立数据表、分组计算等。 能够直接在数据库供给的环境中运用 SQL 句子,也能够在程序规划言语中嵌 入 SQL 句子。在程序规划言语中组合 SQL 句子,有时分还很有杂乱度。

  Access 比较简略。 Oracle 数据库装置装备,一般是比较简略的。偶然不幸遇到反常,就略微有些 杂乱。 做 GIS 运用体系时,根本不需求考虑数据库的功率、优化、安全之类的问题。 首要重视于数据表办理(含数据表备份等)就能够了。 学习 Oracle 数据库:根底概念了解数据表办理。 根底概念:表空间、数据文件、用户(方案) 、人物、体系权限、数据表、视 图、序列、触发器等。 数据库里的方针:用户名方针名。表、视图、序列等。 Oracle 办理的第三方东西:PL SQL Developer、Oracle SQL Developer

  空间数据库(ArcSDE)除了在装备环节或许会遇到难度乃至阻止外,其它的, 包含数据表办理,都恰当简略,直接在 ArcCatalog 下操作就能够了。

  体系供给数据和图件。 GIS 运用体系开发中的数据收拾=数据建库图件符号化。 数据收拾的技能要求:娴熟运用 ArcGIS 软件。其它:CAD,Access 数据库与 SQL,Excel,最好还能会些编程。 接下来先扼要阐明数据收拾的常识要求。

  数据收拾的常识要求:了解地舆数据类型、掌握地图的数学根底,掌握常见 的 GIS 数据模型(数据格局)与空间数据办理,了解地图言语与符号化等。 这些常识要求,也是体系开发时所需求的。

  GIS 数据源:树立 GIS 的地舆数据库所需的各种数据的来历,首要包含地图、 遥感图画、文本材料、计算材料、实测数据、多媒体数据、已有体系数据等。可 概括为原始搜集数据、再生数据和交流数据三种来历。 GIS 运用体系中触及到的数据: 从办法上来说,包含:矢量数据、栅格数据、纯特点数据。纯特点数据终究 将收拾成特点表。 从内容上来说,有根底地舆数据和专题数据。 测绘范畴的数据(狭隘一点) ,从产品类型来说,测绘 4D 产品:数字线划数 据 DLG、数字栅格数据 DRG(没怎么用) 、数字高程模型 DEM、数字正射印象 DOM。

  地舆参照(空间参阅) 。 地图的数学根底:坐标体系、投影、分幅等。 三品种型的坐标体系:地舆坐标,投影坐标,独立的平面直角坐标。前两者 能够全球定位。 坐标体系转化。 坐标配准的原理。怎样完结坐标配准。

  分幅问题:空间数据按空间分幅、专题分层进行安排。 数据出产阶段分幅,效果办理阶段不分幅。 印象数据一般还在分幅;而矢量数据,除了少量软件外,一般倾向于不分幅。

  地舆数据模型发展: 1)CAD 数据模型 CAD 数据模型以二进制文件格局存储地舆数据,并以点、线划和面域的办法 表达。根本不保存特点信息(有所谓的扩展特点) ;地图图层和注记是首要的特点 表达办法。 2)Shapefile、MapInfo 数据模型 不存储拓扑联络 3)Coverage 数据模型 空间数据(索引化二进制文件)与特点数据(表状)相结合。直接存储拓扑 联络。 4)GeoDataBase 数据模型 一致数据模型

  数据模型需求采纳一种存储办法或办理办法来完结。 空间数据办理:文件办法(包含图形文件特点数据库办法) ,数据库办法。 留意:不是用通用的联络数据库办理的,不归为数据库办理。 CAD 数据模型、Shapefile 数据模型等,是典型的文件办法;GeoDataBase 数 据模型一般采纳数据库办法。

  GeoDataBase 不是一种空间数据的文件格局, 而仅仅一种空间数据的安排办法 和办理模型。GeoDataBase 是 ArcGIS 8 引进的一个全新的空间数据模型,是树立 在联络数据库办理体系(RDBMS)之上的一致的、智能化的空间数据库。它完结 了 GeoDataBase 之前一切的空间数据模型都无法完结的数据一致办理,即在一个 公共模型框架下对 GIS 一般所处理和表达的地舆空间特征(如矢量、栅格、三维 外表、网络、地址等)进行一致的描绘与表达。

  一般的数据库不便利对图形进行存储。 GeoDataBase 存储图形用的是二进制字 段,完结了图形数据和特点数据的一致存储与办理。

  地图言语的效果:符号化,空间数据体现与地图制图。 地图言语的范畴:地图符号,地图注记,及色彩等 地图符号:形状、标准和色彩。 地图注记:注记的字体、字级和色彩,注记的摆放和装备。GIS 软件中一般采 取主动标示。

  专题数据与根底地舆据符号化时有差异。 纸质地图与电子地图符号化时不相同。 符号化有很大的艺术成分,但也依靠地舆地图专业感觉,需求遵从一些既有 标准。

  有必要区分隔要素类(地舆数据集)和图层。 存储时(存储在空间数据库或数据文件中,可视化为地图之前) ,称为要素类; 可视化为地图后,才开端称为图层。

  地图言语(符号化)是运用在图层上面的,而不是要素类上面。 有些数据格局,如 MapInfo,其数据文件中能够存储符号款式。

  在许多 GIS 运用体系开发中,数据建库现已有了一些前期效果,能够接下来 做。可是,传统的数据效果要求一般侧重于制图体现,而对数据入库要求满意的 很少,所以:悬挂、伪节点、重线、要点、相交、打折等图形过错一般都比较严 重;数据标准化程度低,数据分层分类根本较少,与标准的数据库建造要求比较, 间隔较大,需求对要素进行从头提取和组合;传统的专题数据效果特点信息偏少; 等。

  数据收拾的进程,是一个将多源异构的数据,逐渐整合到同构性比较高的过 程。 数据的多源性:多个不同的来历,好了解。比如不同的数据获取办法,不同 的分辨率(比例尺) 。 数据的异构性则很广泛。 矢量栅格的异构:矢量栅格转化。扫描、纠正、数字化。坐标配准。

  数据格局的异构:原始材料数据数据格局品种繁复,CAD、Coverage 等格局, 为了满意数据库建造要求,需求一致转化为入库数据格局。用 GeoDataBase 对多 源异构的数据进行一致的描绘。 坐标体系的异构:坐标体系转化。七参数转化 数据分层的异构:数据分层办法不同。 数据表结构的异构:数据表结构不同。需求进行数据重构。 数据分层和表结构异构的处理,统称为数据标准化收拾。依据新的数据标准, 对数据进行标准化收拾。首要包含图层区分、要素代码转化、特点收拾等作业内 容。 图层区分详细包含图层的添加、删去以及要素的抽取与重组。 要素代码转化首要指将地物要素编码从旧的分类转化到新的分类。 特点收拾首要指依据新的标准标准,对特点字段项进行添加或许删去,对数 性字段称号进行从头界说或许修正,对特点字段类型进行重界说等作业。 等。 此外,数据收拾作业或许还包含: 数据接边:前史数据或许是分图幅或许分区域存在的,现在需求建造全区与 或许全国性的数据库,需求对数据进行接边处理。数据接边后,需求进行从头的 拓扑构建作业。 图形过错处理:需求处理数据因为前史原因导致的悬挂、伪节点、重线、重 点、相交、打折等图形过错较多的问题。运用拓扑联络进行检查,然后进行图形 修正。 数据建库的效果,要能够一库多用。空间数据库与 GIS 运用体系耦合度低, 可别离,一库能够生成多种图件,一库能够供多个运用体系运用。

  数据收拾作业,理清楚要害的技能办法,除此之外便是苦干了。 数据收拾的时分,严重事项,比如重要操作进程,做日志记载。 日志记载的准则:能够便利有效地回溯。中心文件视需求保存。

  数据收拾要考究功率。当令采纳编程手法进行数据收拾,能够处理功率与准 确性的问题。剖析问题是否能够选用编程处理;问题是不是一类共性的问题;采 用编程处理的难度等。数据收拾所依靠的编程,有时还很具有难度。

  体系架构,迥然不同。 主界面:菜单栏,东西条,地图显现区,图层操控器,鹰眼图,导航东西条, 状态栏等。

  参加体系开发进程的成员应包含:用户、办理人员(一般由 GIS 专家和范畴 专家、项目技能顾问、体系技能监理人员等组成) 、体系开发人员等。

  体系剖析首要处理 GIS 工程规划中的需求剖析、可行性剖析等问题,是 GIS 工程规划和开发的根底作业。 体系剖析首要包含需求剖析和可行性研讨。在用户供给所需的信息、提出所 要处理的问题的根底上,调查和搜集相关材料,汲取用户需求,剖析相关材料和 技能。并在对本钱、效益、技能等可行性剖析点评的根底上,提出最佳处理方案, 答复用户问题。

  体系规划包含整体规划和详细规划。 体系整体规划方案是体系建造中的总控文件,整体规划首要是掌握方向,在 严重问题上给予定性考虑,侧重承认准则,防止过早堕入细节问题而疏忽总揽全 局。 整体规划包含体系的方针和使命规划、模块子体系规划、计算机硬件体系设 计、软件体系规划等。经过整体规划,处理子体系之间联络与集成问题,处理软 件、硬件的选型问题,承认体系的整体框架结构、进行相关技能挑选、拟定或选 择技能标准、安排体系施行方案和战略、安排开发部队、预算体系开发费用等。 详细规划包含数据库规划和体系功用的规划。 经过详细规划,清晰数据搜集、处理、存储、办理的详细内容和技能,特别 是体系的坐标体系挑选、数据的类型和内容、数据的安排办法、数据的存储和管 理办法等。 体系功用规划包含软件模块的功用、模块的集成办法、模块的软件开发办法、 体系的用户界面规划等。

  软件工程:对软件开发进行办理。 软件测验:是为了发现过错而履行程序的进程。测验是为了寻觅过错, 并且尽 量找出最多的过错。测验的意图是发现和承认体系有问题,而不是验证体系没问 题 体系测验是将软件体系与硬件环境、网络环境等集成在一起进行测验。

  GIS 编程,根底是一般性编程,要害则是 AO 编程。首要介绍 ArcGIS Engine、 AO 库、AO 学习、编码习气与标准。

  ArcGIS Engine 便是 ArcGIS 用来开发独立运用的地图控件。用 ArcGIS Engine 来开发 C/S 办法或 B/S 办法的运用,但从技能上来说,都是可行的。 ArcGIS Engine 开发包包含:控件、东西条和东西、方针库。 1) 控件 控件是 ArcGIS 用户界面的组成部分,你能够嵌入并在你的运用程序中运用。 2)东西条和东西 东西条是 GIS 东西的调集,在运用程序中用它来和地图和地舆信息交互。如, 东西包含:平移、缩放、点击查询和与地图交互的各种挑选东西。东西在运用界 面上用东西条的办法展示。经过调用一套丰厚的惯例的东西和东西条,树立定制 运用的进程被简化了。开发者能够很简略的将挑选的东西拖放到定制运用中或创 建自己定制的东西来完结与地图的交互。 3)方针库(即 AO 组件库) 方针库是可编程 ArcObjects 组件的调集, 包含几许图形到制图、 GIS 数据源等 一系列库。运用这些库,程序员能够开宣布从初级到高档的各种定制的运用。相 同的 GIS 库也是构成 ArcGIS 桌面软件和 ArcGIS Server 软件的根底。对开发者来 说这些 ArcObjects 库支撑一切的 ArcGIS 功用, 并且能够经过大多数通用的开发环 境来拜访。 控件和东西的运用,是比较简略的,要害是方针库的运用。

  咱们在绝大部分时分要做的---便是运用 ESRI 供给的这些 AO 组件来进行积木 式的拼装使命。AO 现已供给了许多底层的根本功用,而咱们的使命是依照运用需 求将这些底层功用拼装调集成一个更强壮的 COM 方针。 至于为什么 AO 会依据 COM 技能,就我个人而言,现在和今后 GIS 的开展会 和干流 IT 技能交融的越来越严密,究竟任何一个软件产品终究是要拿来用的,所 以除了供给专业的 GIS 功用外,从易用性和扩展性来说也是极其重要的,而 COM 技能供给了一个处理之道。

  AO 组件库的中心是类和接口。组件库的每一个组件(即一个库或命名空间) 中界说有不同的类,类下面界说了不同接口,接口中包含不同的特点和办法。类 之间有类型承继联络,接口之间有彼此调用及彼此承继联络。 类是面向方针编程的中心,接口则是组件方针模型(COM)的中心。类与接 口很类似,广泛一点说,接口是没有完结的类,类是有完结的接口。接口以让对 象的界说与完结别离的办法,将类内部进行了分类。与类相同,接口的运用大大 进步了编程的粒度粒度(一个程序中运用的代码单元的组合标准) 。 为什么要运用接口?类承继和接口承继;笼统类和接口。 ArcGIS Engine 编程是所谓的接口编程,其要害是:找接口。从巨大的 AO 组 件中找到完结功用所需求的接口和类。

  AO 开发比较难上手的一个首要原因便是相关中文材料太少, 并且在为数不多 的出书书本中介绍操作、GIS 理论方面的居多。 学习 AO 开发, 最好的协助便是 AO 协助手册 (也便是 ArcGIS Developer Help) 及一些 PDF 电子文档。详细功用可参阅所给示例代码。 ArcGIS 环境的了解,ArcMap、ArcCatalog 等的操作,一些根本的 GIS 概念, 关于开发 AO 来说十分重要的。 这些东西都很陌生的话, 开发 AO 当然是上手很难 了,在进行 AO 开发的一起,多了解一些 GIS 理论常识关于快速进步开发水平, 了解 AO 是很有协助的。

  程序是写给机器看,让机器来履行的;一起也是写给人看的,让人来阅览学 习和调试保护。杰出的编码习气,有利于程序的阅览学习和调试保护。

  将好的编码习气固定下来,构成编码标准。 编码标准的一些根本准则: 编码约好不能过于冗杂。规矩太多了,就不是好规矩。编码约好的意图是使 程序易于阅览和了解,而不是用过份的捆绑和肯定的约束来捆绑程序员。 编码标准首要体现为命名标准(其它的是:注释标准、代码风格) 。 编码标准应具有稳定性。 运用变量,规模越低越好。

  编码标准的几个方面:代码安排、控件、进程、变量、数据库等。 1 代码安排 代码安排的层次包含:处理方案、项目、命名空间,文件夹,代码文件。 一般设置如下的文件夹:frm uc code,来放代码文件。窗体、模块、类、

  图片资源等,都放入专门的文件夹。 代码文件:其间放着接口、窗体、用户自界说控件、类、模块等。 2 控件 东西条 东西 指令 菜单 主菜单 menuSystemManage menuSel 假如对应了指令,就用 cmd;假如对应了东西,就用 tool toolZoomIn cmdFullExtent

  代码中不触及到的控件,其称号不论 数量较少的控件,如:DataGrid ImageBox 尽量不这样做) 3 进程 其命名能够用 1,2,3 累加(但

  运用动词或动词短语命名,称号都不该太长。首字母均大写。 4 变量 此乃中心部分。 变量规模 变量的规模即它界说的上下文布景(说白了,也便是它的收效规模) 。 变量分为全局变量和局部变量(进程变量) 。在函数界说之外声明的变量,称 为全局变量;在函数中声明的变量,称为局部变量。函数参数视为局部变量。 局部变量要加上小写前缀。 字符串 sLayerName sSql sPointNO 字符 cTemp

  程序模块化:通用功用组件化模块化。 对数据和操作,进行恰当的笼统和封装。VB6 开发中近乎全进程式而缺少封 装的编码习气,作业量太大。

上一篇:中地数码:自主立异国产GIS 奋楫数字我国蓝海 下一篇:GIS 运用及开发
分享到: