|
Grass中文教程之三:开始使用Grass
Grass已经安装好了,现在要开始使用了,却发现相对于Windows下的各种操作便利的GIS软件而言,Grass实在显得有些麻烦。一开始就要回答一堆看起来似天书一般的问题,大量的陌生的新名词,没有图形的冷冰冰的字符界面,莫名其妙的键盘用法,都会使人望而却步。
我想你要学习使用Grass,首先要坚定信念:Grass是优秀而强大的GIS软件,它的让初学者感到别扭的操作方式在你熟悉之后,你一定会爱不释手的。我们很多人由于长期工作在图形界面而不习惯字符界面的操作,其实,你多用几次字符界面之后,你会发现,在字符界面下控制电脑,或者说用键盘控制电脑,比在图形方式下,或者说用鼠标控制电脑,更加简洁高效,运用更加自如惬意。以我自己而言,我即使使用Windows,也经常切换到命令行方式进行一些操作,如ping,ftp等。
一般来说,Linux用户比Windows用户更喜欢字符界面的操作。
为了开始使用Grass,强烈建议先下载官方提供的一个范例数据库。因为Grass对GIS文件格式、数据组织方式等都有自己的一些要求和定义,初学者最好先直接使用现成的GIS数据。官方的这个GIS数据叫:spearfish60,下载地址是:
http://grass.itc.it/sampledata/spearfish_grass60data.tar.gz
下载回来之后,解压:
#tar zxvf spearfish_grass60data.tar.gz
这将在当前目录下生成一个spearfish60的子目录,注意看一下这个目录的组和用户所有者是否为当前用户,如果不是需要改一下,否则grass读不到里面的数据,这是一般资料里没有提到的,我自己就曾在这里半天进入不了grass。
比如说,你是root用户,解压生成的目录为/root/spearfish60,你用命令ls -l查看的时候,发现这个目录的组和用户所有者都不是root,那么需要使用以下命令进行修正:
#chgrp root /root/spearfish60 -R
#chown root /root/spearfish60 -R
在启动Grass之前,我们还要理解三个基本概念:database,location和mapset。因为一启动Grass,就需要设置好这三个参数。
Database在这里翻译为数据库就有些不合适了,它其实是指包含所有grass数据的目录的名字,以上面的例子而言,应该把它设置为/root。
Location是指GIS要研究的地区。如果是你自己要创建一个新的location,则需要知道很多的参数,如地图的投影方式、该地区的经纬度、分辨率等等,我们初学就不要自己创建而使用现成的location,使用上述的样本数据库的话,这里就应该填写spearfish60。
Mapset就是地图集了,这里每个用户可以使用自己的用户名字创建一个mapset,Grass是可以很方便多人合作,共同工作的。一般mapset里面肯定都有一个叫做PERMANENT的地图集---注意在Linux中大小写是严格区分的,我们这里就把mapset设置为PERMANENT。
下面就键入grass启动了,回答以上三个参数就可以进入Grass了。注意版本6设置上述参数是图形界面,点几下鼠标即可进入到grass的运行界面。但版本5则是字符方式,注意键盘的特殊的用法哦,设置好之后,还要在grass的命令行下键入tcltkgrass以启动图形界面!
与Windows下的ArcInfo及MapInfo等不同的是,Grass的一切操作都是既有命令行方式,也有图形方式。我想我们还是先熟悉命令行方式吧。
下面我们先学几个简单命令。
1 我已经打开了GIS数据库,我想知道当前我有哪些地图可以使用:在命令行里键入g.list,就会弹出一个对话窗口,选择好你需要的GIS数据格式,比如说选raster格式后,按"run"按钮,就会列出所有可用的信息数据。
2 浏览地图。
要浏览地图,首先要启动一个浏览的窗口---grass最多可以启动七个这样的窗口,使用命令d.mon start=x0,它的意思是启动窗口x0。
然后要选择窗口,使用命令d.mon select=x0,意思是选择窗口x0,也就是第一个窗口,以下的图形显示都在此窗口中进行。
打开地图来浏览,使用命令d.rast xxx,其中xxx是你刚才使用g.list命令得到的结果之一。这样,地图就在一个新的窗口中显示出来。
好了,今天就写到这里。
我对GIS不熟悉,如果哪位能给我一个ArcInfo或者是MapInfo的教程,那就可以方便我参照它的写法完成我的Grass教程的编写,我将非常感谢!
|Archiver|小黑屋|星韵百科|星韵地理网 ( 苏ICP备16002021号 )
GMT+8, 2024-5-4 21:27 , Processed in 0.073111 second(s), 20 queries .
Powered by Discuz! X3.5
© 2001-2024 Discuz! Team.