节点文献

C/C++组件式地理分析模型的自动化封装方法研究

Research on the Automatic Wrapping Method of C/C++Component Geographic Analysis Models

【作者】 陈红燕

【导师】 闾国年; 周良辰;

【作者基本信息】 南京师范大学 , 地图学与地理信息系统, 2015, 硕士

【摘要】 在过去的半个世纪里,国内外在地学各领域的科学研究过程中积累了大量的地理空间计算模型。由于模型在设计和实现上的差异,造成模型共享和重用困难,形成了明显的“地理模型孤岛”。而在解决地学问题的空间分析、决策支持和模拟预测等方面越来越要求不同领域的模型在理论和实践上能够密切结合。地理分析模型的服务化是屏蔽模型的异构问题,实现模型分布式共享的关键。组件式地理分析模型是以函数库形式存在的地理分析模型,由于一般都有清晰的接口,模型开发者不必费力去研究源代码,因而是实现模型共享和重用的很好选择。然而,从模型的代码实现角度看,一方面,相对其他编程语言,C/C++语言的语法、程序结构相对比较复杂,模型的解析相对困难;另一方面C++最重要的特点是支持面向对象的程序设计,使用C++编程效率高,使得越来越多的模型采用C++进行编写。本文以C/C++组件式地理分析模型共享与集成的需求为导向,针对现有模型封装方法存在的问题,进行了C/C++组件式地理分析模型的自动化的服务化封装方法研究。首先抓住C/C++组件式地理分析模型接口的本质特征,设计了该类模型接口的数据模型,基于所构建的数据模型提出并设计了采用词法分析、结构分析的模型接口解析法;其次根据C/C++组件式地理分析模型数据特点,探讨了该类型模型数据和基于统一数据交换模型(Universal Data eXchange, UDX)表达的数据之间的相互转换与映射,并在此基础上实现模型的本地调用封装;最后,基于OGC网络处理服务(Web Processing Service, WPS)规范,研究设计了C/C++组件式地理分析模型的自动化的服务化封装方法。论文最后设计实现了C/C++组件式地理分析模型自动化的服务化封装工具,并利用数值计算类模型、三维空间实体集成表示模型的自动化的服务化封装实验进行验证,结果证明本文所设计的C/C++组件式地理分析模型封装工具的可行性和有效性,实现模型算法与其他功能相分离,使模型开发者在模型开发过程中能够专注于算法的设计和实现,从而简化了共享地理分析模型的过程,促进C/C++组件式地理分析模型的共享与集成,对提升GIS的地理分析能力、拓展GIS服务能力具有重要意义。

【Abstract】 In last half century, great improvements have been achieved from geographic sciences research at home and abroad, and numerous geospatial computing models have been created which represent those scientific achievements. However, the differences of models’ design and implementation make it difficult to share and reuse these models, which lead to "Solitary Island of Geographical Model" obviously. While in solving the problems of geospatial analysis, decision support, simulation and prediction in the area of geography, different models are increasingly demanded to be combined together in theory and practice. The service of geographic analysis model is the key technology to shield the problem of heterogeneous of models and to achieve the goal of sharing distributed geographic analysis models. Since the component geographical models exist in the form of libraries, and they have a clear interface generally, so model-developers do not have to have a research on the source code. Based on the above considerations, the component geographical analysis models should be a good choice for models sharing and reuse. But from the perspective of the realization of the geo-models, on one hand, compared with other programming, the grammar and program structure of C/C++ is relatively complex, the analysis of geo-models is relatively difficult. On the other hand, the most important feature of C++ is object-oriented support programming, and programming using C++ is efficiency, whick makes more and more models written in C++.Aiming to the sharing and reuse of C/C++ component geo-models, this dissertation takes a research on the auto-encapsulation method of C/C++ component geo-models according to the problems of existing encapsulation methods. Firstly, we analyzes the essential characteristics of C/C++ components geographic analysis models and their interfaces, presenting a data model of the interface of component geographic analysis models, and based on the data model we present a method of analyzing the interface and abstracting their information of geographic analysis models, which is a combination of the method of lexical analysis with the method of structural analysis. Secondly, based on the characteristics of the data of C/C++ component geographic analysis model, we have a research on the transformation and mapping between the data that component geographic analysis model supports and the UDX (Universal Data eXchange), and based on this, we achieve the auto-packaging of the interface of geo-models. Finally, based on the OGC WPS (Web Processing Service) specification, we study and achieve the automated and service-oriented encapsulation of C/C++ component geographic analysis model.At the last part of this paper, we have designed and realized an auto-encapsulation tool for C/C++ component geographic analysis model, and have used the literal arithmetic models and the three-dimensional entity integrated represent models to test this tool. The result shows that the auto-packaged tool for geographic analysis model is feasible and effective. Such tool makes it possible to separate the algorithm from other functions, so that model-developers can focus on the design and implementation of geographic analysis model, which simplifies the process sharing of geographic analysis model and promotes the sharing and integration of component-based geographic analysis model. It is important.to enhance the capability of geographic analysis of GIS and to expand the service capacity of GIS.

  • 【分类号】TP311.1;P208
  • 【被引频次】5
  • 【下载频次】182
节点文献中: 

本文链接的文献网络图示:

本文的引文网络