arcgis server 9.3.1 rest开发学习(三)

Posted: July 21st, 2010 | Author: laomi | Filed under: 开发日志 | Tags: , , | No Comments »

arcgis server geoprocessing中简单的介绍了一下geoprocessing service中的一些相关的概念,接下来主要是按照自己以前的经验编写两个例子,一个是buffer的例子,另外一个是计算点密度分析的。在这里主要是借助ModelBuilder和geoprocesssing来完成,最后自己的例子主要是采用javascript rest开发。

首先使用的是arcgis的modelbuilder创建一个model,关于model的创建方法以及相关的资料,可以访问以下资源:

首先我们来介绍一下buffer的例子,该例子的效果是当你用鼠标在地图上点击时,然后再地图上就会创建一个缓冲区,该缓冲区的大小是可以限制的。关于缓冲区的模型的建立实际上只要将arcgis arctoolbox 中analysis tools—>proximity–>buffer拖拽到model builder中,然后设置输入、输出参数(如下图所示,其中p就是已经设置了参数,可以很据箭头的方式来判断输入输出参数,其实这个是在创建一个toolbox中已经设计好的)。下图是一个已经完全建立好的model,剩下来只要将这个model发布成一个geoprocessing service就行了。

Read the rest of this entry »


gdal中的ogr配置

Posted: June 27th, 2010 | Author: laomi | Filed under: 开发日志 | Tags: , , | No Comments »

最近在写一个spatial association rule的代码,选择的语言是用c/c++来编写,由于这个算法中需要用到空间关系计算这一块,所以需要选用一个能够计算空间关系的库来完成这一部分工作(既然已经有了现成的工具,没有必要自己再去开发一个了),在这里我们选择的是gdal中的ogr

The OGR Simple Features Library is a C++ open source library (and commandline tools) providing read (and sometimes write) access to a variety of vector file formats including ESRI Shapefiles, S-57, SDTS, PostGIS, Oracle Spatial, and Mapinfo mid/mif and TAB formats.
OGR is a part of the GDAL library.

通过官方网站上的介绍我们可以知道ogr的主要作用是一个对矢量数据的解析和操作的库,然后我再根据我们的需求(解析shapefile以及求出shapefile中的geometry中的空间关系,例如:距离关系、拓扑关系等),我们知道了它能够很好的满足我们的需求,说到这我当时觉得这已经不是什么很困难的问题了,所以自己就准备开始做了。

自己以前也没有用过c/c++写过什么程序,基本上也就是一些简单的数据结构和算法,发现自己对于如何将这个库引用到工程文件中来也是没有什么办法,自己甚至土鳖的将这些源码直接拷到工程文件中去编译,当时也是报了很多的错误。幸好在这个信息时代有Google(百度对于技术类的文章搜索还是没有google那么的强大,起码从我的经验来看是这样的),自己从网上也搜集了一些资料,这里总结具体的编译步骤如下:

由于我们需要空间关系的运算,所以我们需要将geos下载下来,因为在编译gdal的时候它会需要geos的库:

首先需要设定编辑环境,这里我们用的是vs2008,所以设置如下:

D:\Program Files\Microsoft Visual Studio 9.0\VC\bin\vcvars32.bat 拖至控制台用进行运行,这样的话,将系统的c++编辑环境设置为vc的编辑环境

编译geos:

1、GEOS 网站下载最新版本geos-3.1.1.tar.bz2 ,同时svn登录http://svn.osgeo.org/geos/trunk,下载geos-svn 版本,
2、解压缩geos-3.1.1.tar.bz2 ,从svn版本中复制nmake.opt,autogen.bat
3、If you use Microsoft Visual C++ (7.1 or later) compiler, you can build GEOS using NMAKE program and provided makefile.vc files:

autogen.bat
nmake /f makefile.vc MSVC_VER=1400

编译gdal Read the rest of this entry »


arcgis 空间分析

Posted: March 6th, 2010 | Author: laomi | Filed under: 开发日志 | Tags: , , | No Comments »

最近在这边实习的主要工作是做数据挖掘的工作,自己以前在实验室也做了一些类似的工作,但是以前的工作相对来说比较简单。目前自己主要做的事情首先就是利用spatial analyze部分分析数据,看看目前自己所用所的数据特征,然后再决定做什么。

关于arcgis spatial analyze的部分主要包括以下几个:在这里面有不少你常常用来做数据分析的工具,例如点密度分析,均值和方差分析,栅格图的差值以及表面分析等。最近我收到有一些数据要做一些空间的处理,如果有过的东西自己来写程序也不是很难,但是已经有了现成的工具干嘛不用,况且只是用这些工具来分析一下这些数据适合做些什么处理。在做这些数据处理的工作中,自己主要是用到了空间分析中的点密度分析,对于计算出来的栅格数据对他们进行均值和方差的计算,后来主要是用了spatial statistic中的一些工具来判断自己的数据是不适合做聚类分析等,其实在spatial statistics中有很多关于计算聚类的工具比如:analyzing pattern中的一些工具,不知道熟悉arcgis arcmap工具的朋友们知道不,在arcgis arctool box中有很多的工具是可以看到他们的python代码,其实这些也是学习用arcgis 来做开发的一些很好的资料。这次自己也用vba开发了一些arcgis的程序的运用,主要用来将最后的计算结果以更好、更形象的方式展现出来。

自己以前对于arcgis还是挺排斥的,我想主要原因有:第一在刚刚接触gi产品的时候,自己第一个接触的产品时mapinfo,而且mapinfo在界面设计方面确实是做的非常的人性化,自己从一用上它就喜欢它了;第二的主要原因是arcgis功能很强大,很多的功能需要经过专业的培训才能很好的掌握,但是自己在平常的项目中,用到得GIS得功能相当的简单,用maoinfo基本上就能解决了,所以自己也不是很想去接触arcgis,毕竟平常没有那么多的时间去接触他。但是来这边实习之后,自己慢慢的发现arcgis的强大之处,它的强大确实是超出了我的想象范围,现在自己确实认为他是一个很不错的GIS工具,但是想很好的掌握这个工具还得花些时间去弄清arcobject,现在自己只是接触了arcobject中很少,比较简单的部分。 Read the rest of this entry »