GIS组件式开发期终考试试题
2011—2012学年第二学期闽江学院考试试卷答案及评分标准考试课程:组件式GIS开发
试卷类别A卷 B卷□考试形式:闭卷□开卷
适用专业年级:09地理信息系统、测绘工程施工安全管理制度
班级姓名学号
题号
一
二
三
四
五
韩国xxxx六
七
八
九
十
总分
得分
一、名词解释(每个3分,共15分)
得分
ArcEngine框架控件
ArcEngine组件对象模型中,ToolbarControl 和TOCControl 和MapControl称为框架控件(2),其中ToolbarControl 和TOCControl被设计成和其它控件(MapControl等)协同工作,它起到构建GIS应用程序框架的作用(1)。
ArcSDE
SDE是Spatial Data Engine的缩写,ArcSDE是Esri公司开发的使用RDBMS管理空间数据的一种中间件技术。(3)
封装
封装就是把对象的属性和方法组装成一个独立的单元,并尽可能隐蔽对象的内部细节(2)。封装是面向对象编程中的一个重要原则。它有两个含义(1):
一是把对象的全部属性和方法结合在一起,形成一个不可分割的独立单元。
二是尽可能隐蔽对象的内部细节,对外形成一个边界。
4、GeoDataba
Geodataba是一种采用RDBMS技术来表现地理信息的数据模型(3)。或者说Geodataba是将空间信息映射到RDMS的一种数据模型。
5、命名空间
/doc/17357988.html,中的各种语言使用的一种代码组织的形式(2),通过名称空间来组织、区别不同的代码功能,通常一个功能模块使用一个命名空间、这样使不同功能模块出现同名定义时不至于混淆。(1)
二、简答题(每个7分,共35分)
得分
简述基于ArcServer进行WebGIS开发的基本步骤?
1)ArcGIS Server 后安装(Post Install),包括:(3)
西游记23回概括1)清除原有服务;
2)ArcServer后安装;
鱼罐头的做法3)配置用户组;
4)以SOM身份重新登陆。
2)使用ArcCataloge 9.2(sp3),创建ArcGIS Server服务,包括:(2)
1)建立ArcGIS Server连接组:
2)添加服务:
3)建立WebGIS应用程序:(2)
1)利用vs2005创建一个模板rver应用--Web Mapping Application,
2)更改MapResourceManager属性:ResourceItems
简述组件式GIS开发的基本原理?
组件式软件技术是当今软件技术的潮流之一,即由过去厂家提供了全部系统或者具有二次开发功能的软件,过渡到提供组件由用户自己再开发的方向上来。应用系统开发:如同将
一堆各式各样的积木,根据需要把实现各种功能的“积木”搭建起来。(3)
组件式GIS开发,是GIS产业顺应组件式软件开发技术的产物,它的基本思想是把GIS的各大功能模块划分为若干组件(或控件),每个组件完成不同的功能。用户利用这些GIS组件可以构建GIS7应用系统。(4)
3、简述使用IBaCommand接口进行功能扩展的基本原理和步骤?
IBaCommand接口是ArcEngine组件对象模型中标准接口,因此通过该接口派生类实现IBaCommand的接口即可达到功能扩展的目的(2),步骤如下(5):
新建项目,项目类型为:类库(即组件);
利用ArcEngine的BaCommand模板,添加BaCommand派生类;修改BaCommand派生类的名称,及基类属性,主要包括:ba.m_category;ba.m_caption;ba.m_name等;根据需要添加功能类;
在派生类的public override void OnClick()中调用功能类;
在主应用程序的框架控件ToolBarControl中添加启动按钮;
举例说明使用Geoprocesr托管类调用ArcToolbox工具进行空间分析的方法
ArcEngine9.2支持通过代码完成既有工具箱中工具的调用,步骤如下:(4)
1)构建一个Geoprocessor的类对象,由他来执行Geoprocessing的工具。
2)构建一个Geoprocessing工具的类对象,
3)填写一些参数,参数分in和out,Required和Optional。
4)调用GP的Execute方法执行即可。
例如:用ArcToolBox的工具的Data Mangement Tools -> Fields -> Add Field,给一个shp文件加个字段。AE中GP程序的写法:(3)
Geoprocessor GP = new Geoprocessor();
AddField addfield = new AddField();
addfield.in_table = @”D:\111.shp”;
addfield.field_name = “aaabbbbb”;
addfield.field_type = “LONG”;
GP.Execute(addfield, null);
5、什么是结构化生命周期法?有哪些优缺点?
将软件工程按其生命周期分成若干阶段,每个阶段有相对独立的任务,每个阶段与结束都规定了严格的质量标准。从而达到软件工程全过程的目的。(3)
优点:(2)
1)从系统整体出发,强调在整体优化的条件下“自上而下”地分析和设计,保证了系统的整体性和目标的一致性;关于清明节的诗句
短线游2)严格区分系统开发的阶段性;每一阶段的工作成果是下一阶段的依据,便于系统开发的管理和控制,以及技术文档的规范化。
缺点:(2)
1)要求在开发初期锁定功能要求。对用户素质或系统分析员和管理者之间的沟通能力有较高的要求;
2)往往开发周期长,难于适应环境变化。
三、应用题(每个15分,共75分)
得分
(答案以压缩文件提交,文件名为:“考生姓名”+“学号”.rar)
1、“Data\操作题1”目录中存放一个VS 2005环境下搭建的GIS原型系统,但存在如下问题,请分析源代码指出错误原因,并纠正错误。可见一斑造句
家用英语怎么写1)编译时出现如下错误:“找不到类型或命名空间名称“DialogRezult”(是否缺少using 指令或程序集引用?)”
2)加载数据后,图层列表控件没有显示数据层信息;
3)符号选择器(SymbolSelectorFrm.cs)当鼠标落下选择某符号时,预览功能;
答:出现错误原因:
1)文件中没有使用Using指令引用Ststem.Windows.Forms; (2)
2)在TOCControl中没有设置Buddy参数;(2)
3)符号选择器MouDown事件与响应函数之间的没有建立关联;(2)
纠错答案:<考生提交的程序集>(每纠一个错得3分)
2、在VS 2005环境下建立一个可与基于ArcEngine开发的主应用程序(“Data\操作题2)协同工作的扩展功能组件,并用一个MessageBox测试该组件的正确性。
评分标准:
1)新建类库;(3)
2)添加BaCommand派生类;(3)
3)添加功能类;(3)
4)修改在派生类OnClick();(3)
5)添加启动按钮;(3)
3、“Data\操作题3”存放一个VS 2005环境下搭建的GIS原型系统,其中“加载SDE数据”功能类已实现(见LoadSDE.cs)、请添加“连接ArcSDE数据库”的功能。并用Data\gisdata 目录下数据测试其正确性。
(提示:虚拟机中ArcSDE数据库已建立,SDE实例名=esri_sde;数据库名= sde;用户名=sde;用户密码= Li-jinqiang)
评分标准:
1)功能类(10)
2)调用串联(5)
4、在“Data\操作题4”原型系统中,已实现了栅格数据叠加分析对话框类(CustmizeAnalistDlg.cs)的用户界面,请CustmizeAnalistDlg.cs中添加栅格Time(相乘)分析函数,并用Data\gisdata目录下数据测试其正确性。
评分标准:
1)功能实现(10);
2)调用串联(5);