全国高分辨率土地利用数据服务 土地利用数据服务 土地覆盖数据服务 坡度数据服务 土壤侵蚀数据服务 全国各省市DEM数据服务 耕地资源空间分布数据服务 草地资源空间分布数据服务 林地资源空间分布数据服务 水域资源空间分布数据服务 建设用地空间分布数据服务 地形、地貌、土壤数据服务 分坡度耕地数据服务 全国大宗农作物种植范围空间分布数据服务
多种卫星遥感数据反演植被覆盖度数据服务 地表反照率数据服务 比辐射率数据服务 地表温度数据服务 地表蒸腾与蒸散数据服务 归一化植被指数数据服务 叶面积指数数据服务 净初级生产力数据服务 净生态系统生产力数据服务 生态系统总初级生产力数据服务 生态系统类型分布数据服务 土壤类型质地养分数据服务 生态系统空间分布数据服务 增强型植被指数数据服务
多年平均气温空间分布数据服务 多年平均降水量空间分布数据服务 湿润指数数据服务 大于0℃积温空间分布数据服务 光合有效辐射分量数据服务 显热/潜热信息数据服务 波文比信息数据服务 地表净辐射通量数据服务 光合有效辐射数据服务 温度带分区数据服务 山区小气候因子精细数据服务
全国夜间灯光指数数据服务 全国GDP公里格网数据服务 全国建筑物总面积公里格网数据服务 全国人口密度数据服务 全国县级医院分布数据服务 人口调查空间分布数据服务 收入统计空间分布数据服务 矿山面积统计及分布数据服务 载畜量及空间分布数据服务 农作物种植面积统计数据服务 农田分类面积统计数据服务 农作物长势遥感监测数据服务 医疗资源统计数据服务 教育资源统计数据服务 行政辖区信息数据服务
Landsat 8 高分二号 高分一号 SPOT-6卫星影像 法国Pleiades高分卫星 资源三号卫星 风云3号 中巴资源卫星 NOAA/AVHRR MODIS Landsat TM 环境小卫星 Landsat MSS 天绘一号卫星影像
从程序员角度来说,要进行AO开发首先遇到的问题就是选择何种语言开发,ESRI支持VB、C++、.Net等等,各位兄弟姐妹拿手的语言也不同,有的C高手,有的VB强人,有的.Net 炉火纯青,哈。。对于任何语言都不是很好的也有。
1、选择开发语言
从程序员角度来说,要进行AO开发首先遇到的问题就是选择何种语言开发,ESRI支持VB、C++、.Net等等,各位兄弟姐妹拿手的语言也不同,有的C高手,有的VB强人,有的.Net 炉火纯青,哈。。对于任何语言都不是很好的也有。
从个人角度觉得:主选语言VB,其它 C#.net、VB.net,C++ 看个人爱好及个人情况。VBA做些小的开发,功能测试。Delphi 虽然我也比较喜欢,但是开发AO我不想考虑。虽然可以用来进行AO开发的编程语言有多种,无疑使用VB语言开发AO是最简单快捷,也是最容易上手的语言。无论从AO提供的开发接口,还是提供的在线帮助、例子多数都是VB或VBA,而且在网上的资源也以VB语言为主。
因此,不管你选择.Net,还是C++ 还是其它语言进行AO开发,对于VB语言至少也达到了解的程度,要能读懂VB(or VBA)示例代码,借助提供的VB相关资料来了解ESRI提供的AO接口,进而使其能在自已熟悉的语言环境中来实现。
2、选择学习资料
AO开发比较难上手的一个主要原因就是相关中文资料太少,而且在为数不多的出版书籍中介绍操作、GIS理论方面的居多。很多人都在网上寻找开发AO的中文书籍资料,当然目前是很难找到。听说中科永生有些相关的资料,没见过,但网友们的评价都不是很高,而且很贵。只有那些不花自已钱培训或者太依赖中文资料的兄弟们会买吧。
学习AO开发,最好的帮助就是AO在线帮助(也就是 ArcGIS Developer Help)及一些PDF电子文档,这些已经足够了。目前国内的程序员还是大专本科生居多,而且近两年来加入这个队伍的研究生也成上升的趋势。一个软件的英文帮助还是难不倒的,虽然理解起来不如中文快速,但对于真正全面的理解AO系统是有好处的。ArcGIS在国内兴起也没多久时间,相信别人的翻译本不如用金山词霸一个词一个词的翻译来得好。
3、GIS理论知识的学习
GIS理论的学习,对于开发AO来说也是很重要的。一些基本的GIS概念都没有,开发AO当然是上手很难了,在进行AO开发的同时,多了解一些GIS理论知识对于快速提高开发水平,理解AO是很有帮助的。就如同要开发一个银行的业务处理系统,对于很行业务操作流程,业务习惯必须了解一样。
4、Q&A 积累
每个人在开发过程中都会遇到各种各样的问题,无论是通过咨询ESRI公司,在BBS上寻求帮助,或通过自已的努力最终将问题解决了。最好能有个问题及问题解决记录。随着开发的深入,遇到的问题也越来越多,越有挑战性,同时解决的问题也会越来越多。从公司角度出发也好,从开发人员自身角度出发也好,这样做都是有益的。自已遇到问题也许是和以前的问题有一定的相关性,或干脆就是解决过了的,到时候再去东拼西凑找资料,找帮助就太浪费时间了。
5、ArcGIS操作
很多人一上手就进行开发,结果开发了一年半载之后,让其来操作ArcGIS都很困难。这样的情况也很多见,要做好AO开发,对于ArcGIS环境的熟悉,arcmap,arccatlog,arctoolbox,arcscene ... 的操作也很关键,可以这么说,在ArcMap(ArcCatlog...)中能找到的功能基本上都能找到相关的接口。
6、如何找到与自已所需功能相关的AO接口
对于一个刚进行AO开发的程序员,经常是想处理一个功能,却不知道如何去找AO中提供的相关接口,这是很让人头疼的。为什么有的人,没有做过相关方面的接口开发,但让他去找,会很快找到的。除了和平时的积累有关外,另外的问题就是看哪些资料才能对这有所帮助,我想这也是一个新手比较关心的问题。ESRI 分门别类的提供了许多PDF格式的 ObjectModel Diagrams ,对于各个类,接口的定义等一目了然,熟悉这些diagrams 非常重要。另外一些library locator,object browser 等也可以用来做下补充。
7、一些相关的工具
ESRI提供了一些比较有用的工具或addin,比如说:
独立工具:GUID tool,Register In Menu,Library Locator,Object Browser ...
Addin:VB6 Interface Implementor,VB6 Compile and Register Addin,.NET Component Category Registrar...
一些第三方工具:MIDL Compiler,OLE View,Dependency Walker,GUIDGEN,RegClean...
这些工具也许会被许多人忽略,但有的时候对你也许会帮助很大。对于初学者来说,借助addin提供的功能向导,会便捷得多。
8、其它
1)除了上述中提到的一些工具,ArcGIS Desktop 提供的其它工具你是否用过?
AdvancedArcMapSettings ?知道有些设置在哪里设置吗?运行这个工具看一下,能不能找到?
MXDDoctor?你的mxd文件是不是会经常出问题,这个工具你用了吗?
MetaIDChecker?
好象是与什么arcmis metadata 之类的东西相关,arcims 我不懂,哈。。。
2)developkit 中有那些现成的例子,你看了多少?
3)这些文件你见过没有?
win32Util.bas?
Util3D.bas?
tinUtil.bas?
stringsUtil.bas?
miscUtil.bas?
geomUtil.bas?
dbUtil.bas?
如果你见过,你会发现,原来有很多东西是可以拿来用的,而且都按大类组得好了。