Qgis学习资料Word格式文档下载.docx
《Qgis学习资料Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Qgis学习资料Word格式文档下载.docx(33页珍藏版)》请在冰豆网上搜索。
插件(P)->
FetchPythonplugins
这时候弹出一个框,等它下载完后,出现三个标签,选第二个,即Repositories,
按“Add……”,添加一个URL为:
的Repositories(字面意思
可理解为放插件的仓库地址),名称随意,然后确定。
确定后会更新插件列表,从列表中选择OpenLayer安装。
如果不好找试试用
Filter搜索。
3、绘制地图
执行:
插件(P)->
OpenLayerplugin->
AddGooglePhysicalMap
谷歌地图就添加到地图窗口了。
(如果无聊的话你可以试试其他的地图,因为服
务商都不是中国的,所以,中国的数据还是谷歌的比较详细)
画哪儿的地图呢就画个什邡的吧,谁让什邡最近这么火呢。
先在地图上找到什邡,地图缩放到中国-四川-成都,然后上面一点就是什邡了。
如果不好找,就用openLayer再添加一个谷歌的街道地图。
地儿是找着了,没有边界啊。
现在到网上去找一张什邡的地图,看这里:
地图下载后执行:
Raster->
Georeferencer->
Georeferencer(或者直接点工具
栏上的配准图标)
在新弹出的窗口中点OpenRaster工具。
将下载的地图添加进来,需要说明的是
QGIS的配准方法与ArcMap稍微有一点点差别,但本质上是一样的。
这时候Add
Point工具是默认选中的,QGIS需要至少添加4个配准点才能配准。
先在图片上
找一个配准点点一下,然后会弹出一个框提示你输入地图坐标,这时候选“From
mapcanvas”,即从地图上拾取。
点击后,配准窗口自动最小化,显示出地图窗
口,然后从地图上选取与刚刚选择的配准点对应的点,点击后会自动回到配准窗
口,点击确定,以添加该配准点。
下面的截图显示了我添加的四个配准点,由于我早就有什邡的边界的shp文件,
所以我投机取巧仅仅是示意一下,大家在配准的时候,可要仔仔细细,多添加几
个配准点,而且要确保清晰准确。
配准后通过转换设定和开始配准工具,即可生
成带有坐标的tif位图。
回到地图主窗口,点添加位图工具,将配准后的tif图片加入。
调整其透明度(双
击其所在的图层),检查配准情况。
配准合格后,我们新建一个shp文件(NewShapefileLayer工具)。
类型选择线,坐标系统默认即可,设置一个名为type的新属性,格式为text,
然后确定,我们将文件名命名为。
在图层窗口中选中,工具栏点“ToggleEditing”工具,开始进行
编辑,左键画,右键完成。
设置snapping,执行:
设置(S)->
Snappingoptions,设置的snapping
最大容许值,设置为,QGIS和ArcMap的这个值的单位好像不大一样,自
己试试看。
然后画边界,县界、乡镇界的type值稍微区分一下。
完成后保存编辑,我们得到这个:
设置的样式,关闭tif图片,再添加个乡镇的点shp。
最后得到:
教程【
GBPS
详解】
-
2
:
绘制一张地图
(中)
6.
七月
2012
|
0
评论
by
codeychai
4、绘制道路和景点
根据之前所讲的,现在再把道路和景点临摹上去。
等所有都完成后,去掉或隐藏
所有网络地图。
然后适当调整每个图层的现实样式,得到:
5、给城市和景点添加标注
双击城镇的图层,打开图层属性,找到“标签”的tab,启用标签,设置显示字
段name,并调整标签样式。
(请原谅我写的没有那么细致,因为一项项写出来实在是太费事了,都不难,自
己看看就能学会,这是我正式用QGIS的第二天,你看,我不也都自己学会了,
QGIS的操作方法跟ArcMap很像,应该很容易上手的)
因为景点太多了,我们用另一种方式给他添加标签。
选中景点所在的图层,点击
工具栏上的“Labeling”工具,按提示设置label的样式。
随着地图的缩放你会
发现label会自动调整自己的位置以不遮挡其他label。
这个跟ArcMap的类似。
6、排版输出jpg图片
文件(F)->
NewPrintComposer
这时候会弹出个排版的窗口。
工具栏上按添加新地图工具,在白纸上拖出一个画幅,放置刚刚绘制的地图。
通
过MoveitemContent工具,并配合滚轮,可以设置地图内容的位置和缩放大小。
我们选一个A3的纸张,设置为300dpi,对整个地图进行排版。
输出后,得到一
份简约的什邡旅游地图:
本次就先写到这,下次讲如何给地图加地形(可用于分析的地形,而非网络地图)。
QGIS
3
(下)
7.
7、添加DEM
美国的卫星数据有很多是免费的,虽然精度有限,但对于县域地图来说,已经足
够了。
网上有很多免费的DEM可供下载,比如SRTM、ASTERGDEM等等,中
科院也有相关的镜像,可以从国内下载。
国外的地址请自行谷歌,我这里贴一个
中科院的镜像地址:
我在这里用中科院的30米分辨率数字高程数据产品,在检索页面找到什邡市的
DEM数据,有两块。
因为什邡市跨越了东经103、104两个经度段。
将它们分别
下载下来。
解压后得到两个20M左右的img格式文件。
这两个img对于什邡市地图来说,太大了。
所以最好裁剪一下,当然了,如果你
的计算机硬件足够ok,也可以忽略这一步。
但在裁剪之前必须先将这两个img合并,或者你分别对两个img进行裁剪,但我
想那不是一个好主意。
合并两个img,执行:
Miscellaneous->
Merge
按提示输入两个img文件,并设置保存文件名。
这里记得勾选一下NoDateValue:
0,否则合并后有接缝。
同时勾选一下Loadintocanvaswhenfinished,这样合并完之后会自动添加
到地图中去。
点击确定,进行合并。
进行裁剪,执行:
Extraction->
Clipper
裁剪范围我用的事先准备好的shp文件,当然也可手动输入坐标范围。
裁剪完成
后得到一张黑不溜秋的dem_clip。
8、生成hillshade
Analysis->
DEM
设置输出文件名称,mode选hillshade。
其他参数默认,然后确定。
将dem_clip和hillshade两层至于所有图层最后,然后hillshade置于最后。
调整dem_clip的透明度为50%,并将其Style调整为显示colormap,将Colormap
标签下添加10个色段。
默认的色段颜色是蓝到红,做地形渐变很难看。
调整其
为浅绿色到浅红色的渐变。
(这一点不如ArcMap好使了,因为ArcMap有预置好
的色带可选,而QGIS则需要手动调,不过调好后可以存下来备用,下次用的时
候就方便了。
调整好个图层的样式后,回到printcomposer,设置地图版式和布局。
然后就
可以输出地图了。
输出jpg后发现,栅格数据输出后带了几条线,是个bug。
导出pdf也同样带这
条线。
矢量数据输出则没有任何问题。
小结:
这几天试着学了一个QGIS,顺便出这个教程,对于制图而言,发现ArcMap
可以做的,QGIS基本都可以实现。
有些情况下,ArcMap效率可能更高,毕竟是
商业软件和免费软件的区别。
但对于GBPS来说,我想QGIS已经足够了!
今天画地图只是开个小头,接下的教程里会跟大家逐一介绍如何用QGIS对规划
中各个环节进行支撑,如何分析基础条件、资源、市场、空间布局,并对基础设
施规划和生态环境保护等做详细介绍。
再次声明,GBPS不是出几张坡度、坡向、高程的分析图,而是一套完整的规划
支持体系,如果以为GIS就是谷歌地图、GIS分析就是做坡度分析,那我也无话
可说,您可以出门右拐了……毕竟很多做规划的人并不懂GIS每个字母代表什
么意思。
Filedin:
规划与
GIS
Tags:
教程
GBPS
4
将地图数据与
规划团队分享
11.
就目前国内规划项目组的成员组成来看,你可能是你所在的规划团队中唯一一个
懂GIS的人,其他人不会对GIS软件进行操作,那你的成果如何让其他人也能享
用
将成果导出为jpg,这是一个不错的主意,但并不是所有的东西都转成jpg来的
好使。
前三次教程主要讲如何制作一副地图,随着数据的不断深入,它完全可以作为最
终规划图件的底图。
而这一步在规划前期(项目实地考察前)即可基本完成。
当项目考察时,你可以将地图导出为高精度的jpg,这样,项目团队在考察过程
中就有了方向感。
当然,有些情况下甲方会现场提供当地的一些地图资料,但在
未到达项目地之前,你做的地图就是给大家最好的空间指引,甚至有时候你会发
现,你做的地图会比他们给出的图件更有价值。
在项目考察的过程中,你用笔或者GPS设备记录下走过的节点,回到公司,你迫
不及待的将这些点输入到GIS中,并对之前的地图做出修正。
随着项目的推进,当团队成员开始对项目地的资源进行消化的时候,你会发现,
他们虽然都不会使用GIS分析软件,但他们都打开了电脑桌面上的GoogleEarth
或者在浏览器中拖拽着谷歌卫星地图。
他们现在困惑的是:
你给出的地图上面虽
然标注的很清楚,但他们不知道这些点究竟在GE里面处于一个什么样的位置,
他们在搜索框中,冒着被GFW封锁的危险,一次次的输入想要查询的内容……
其实GE是一款大众化的地图浏览软件,其对卫星地图的浏览功能很强大,最为
重要的是:
你所在的项目组成员都会使用它!
现在要做的是:
把QGIS地图导入到GE。
在QGIS中的操作很简单,在相应的图层上点击右键,选saveas即可。
保存格式选择KeyholeMarkupLanguage(KML),然后起名,保存。
双击保存后的kml,我们就可以把该图层的信息在GE中加载了。
下面是加载了边界和旅游资源点的GE:
如果你的数据表中还有其他更多的信息,我相信,你的团队成员看到后,会大吃
一惊,并会毫不吝啬的夸奖你的!
ps:
QGIS导出的格式为kml,而ArcMap可导出Kmz。
Kmz可以看做是zippedkml,
这两种格式都是谷歌自家的格式,GE都能打开,但ArcMap导出Kmz的时候,会
把地图样式也打包进去,而QGIS导出的kml则将是GE的默认样式,你可以通过
在GE中重新修改样式来自定义点线面的样式。
不过这并不妨碍QGIS发挥其伟大
的功能为我们这些矮穷挫的屌丝规划师们提供福音。
GE
复制代码
QGIS二次开发教程
(一)
QGIS二次开发教程一
——用QGIS的API编写自定义应用程序
教程一:
使用QGISCanvasAPI编写一个简单的地图显示程序
参考翻译自QuantumGIS官方网站
事实上,我们并不是所有的时候都需要一个庞大、完整的GIS桌面应用程序,有时候我们的应用程序主要
用于其他的目的,而我们所需要的只是在用程序中添加一个具有地图显示功能的小工具。
譬如一个带有地
图显示功能的数据库前端。
接下来我们就创建一个简单的地图小工具,功能仅仅是加载一个shape文件并用随机颜色加以显示。
但是
通过这个简单的例子你应该能体会到将QGIS作为一个嵌入式的地图组件的潜力。
首先,在我们的应用程序里添加必要的includes:
1版本加入了一个独立的应用程式–QGISBrowser。
这个应用程式的功能有点像ESRI
ArcGIS中的ArcCatalog,能在载入图档之前先预览其缩图或metadata。
决定要载入後,可使
用拖曳的方式直接将图档加入QGIS主程式中载入图层。
*资料库管理
.本版本将原本是第三方所开发的资料库管理Plugins(DBManager)加入QGIS官方的核心元件。
此功能可以使用拖曳的方式将图层自QGIS主程式中上载至资料库,或从资料库中载入图层,除
此之外,也提供SQL语法检索及预览缩图及metadata检索。
*新增地型分析模组
.下图以台湾30米dtm为例进行套色
*可将数个档案加入至群组中
*LogMessage
o记录开啓程式後的所有动作
*客制化工作列
*可在档案中自订动作,设定完成後即可用滑鼠控制触发动作
*比例尺列提供下拉式选单供选择
*坐标系统选择器的对话框更新
*全新网页集中管理QGISPlugins
*额外的图层顺序功能
o提供另一个控制介面让使用者在不影响图层表现的情况下重新排列图层(如以图层的重
要性、或年代等等)
转贴至个人Facebook
此次的更新加入了许多全新的功能,在此仅列出部份,如有兴趣可直接前往官网查看所有的更新项目。
Categories:
QGISTags:
QGIS二次开发教程之一加载图层
2011-03-1411:
07:
38|分类:
QGIS|标签:
|字号大中小订阅
QGIS是一个基于GPL协议的免费的桌面GIS软件,如果要用其进行二次开发,需要用源码进行编译,生
成适合所使用开发环境的开发库,本教程使用vc8和对其进行编译,生成基于vc8和的开
发库,核心库主要包括:
、、三个库,开发前需要在vc8中设置
好include文件目录和lib文件目录。
首先建立一个基于QT的GUI应用程序工程,程序的主窗口类名称为:
examp2,设置编译所需要核心库
文件,并且设置预处理指令:
CORE_EXPORT=__declspec(dllimport)、
GUI_EXPORT=__declspec(dllimport)和ANALYSIS_EXPORT=__declspec(dllimport),建立好开发环境。
使用QGIS库加载图层的步骤是:
1)创建图层,包括图层文件所在的路径和文件名称,读取图层文件数据的提供者。
2)将图层存储到图层管理器和绘制图层列表中。
3)绘制图层
下面分别说明这几个步骤。
使用QgsVectorLayer类创建矢量图层,创建图层时需要提供图层文件所在的路径和文件名,图层名称及
提供者名称,在examp2的构造函数中添加如下代码,创建图层:
LayerPath=QString:
:
fromLocal8Bit("
..\\兰州地图\\居民地.tab"
);
\\plugins"
;
QgsProviderRegistry:
instance(myPluginsDir);
通过上面几个步骤完成了图层加载的工作。
显示结果如下:
QGIS应用开发教程之一加载图层-陈恒-陈恒的博客
QGIS二次开发教程之二设置图层显示外观
2011-03-2210:
10:
30|分类:
在教程一中加载图层后,采用QGIS默认的设置显示图层,通常在二次开发中为了使图层显示更加直观,
一般都需要对图层的显示方式定制,如在地图中,常用红色的十字符号表示医院,用不同的符号表示不同
级别政府所在地等,QGIS提供了以下两个类定制图层的显示外观:
QgsRenderer类:
该类有4个子类,用于不同场合下的图层绘制,定制图层显示外观,一般采用
QgsSingleSymbolRenderer类,该类用单一的符号显示图层所有的图元要素。
QgsSymbol类,对QT的绘制进行了封装,提供定制绘制的符号,对于线状类型的图层,可以设置线的颜
色、线的宽度及线的样式,对于面状图层,可以设置充填颜色、充填样式,对于点状图层,可以设置点的
样式、颜色等等。
设置图层外观主要分为两步,第一步设置图层的符号对象,第二步将图层符号添加到
QgsSingleSymbolRenderer类中。
下面给出设置不同类型图层外观的代码:
1)对于点状图层
\\symbol"
(strList);
2)对于面状图层
预处理器定义(增加三个定义):
2.
附加包含目录设置(在此种添加编译好的
qgis
的
include
路径和
Osge4w
的路
径)
文件目录设置(在附加库目录中增加
编译库的
lib
文件夹路径和
osGeo4w
文件夹目录)
在附加依赖项里增加三个核心的
文件
新建
QtApplication
项目
项目命名为
qgis1
,在
文件中增加以下代码
#ifndefQGIS2_H
2.#defineQGIS2_H
3.
4.#include<
QtGui/QMainWindow>
5.#include"
"
6.#include<
>
7.#include<
qgs
8.#include<
9.#include<
10.#include<
11.#include<
12.#include<
QtGui/QVBoxLayout>
13.#include<
14.#include<
QtGui/QToolBar>
15.#include<
16.#include<
17.
18.
19.class
qgis2:
public
QMainWindow,
private
Ui:
qgis2Class
20.{
21.Q_OBJECT
22.
23.public
24.qgis2(QWidget*parent=0,Qt:
WFlagsflags=0);
25.~qgis2();
26.public
slots:
27.void
zoomInMode();
28.void
zoomOutMode();
29.void
panMode();
30.void
add
Layer();
31.
32.private
33.Ui:
qgis2Classui;
34.QgsMapCanvas*mpMapCanvas;
35.QVBoxLayout*mpMapLayout;
36.QToolBar*mpMapToolBar;
37.QgsMapTool*mpPanTool;
38.QgsMapTool*mpZoomInTool;
39.QgsMapTool*mpZoomOutTool;
40.};
41.
42.#endif#include"
2.
3.qgis2:
qgis2(QWidget*parent,Qt:
WFlagsflags)
4.:
QMainWindow(parent,flags)
5.{
6.(
this
7.QStringmyPluginsDir=
c:
/ProgramFiles/"
8.QgsProviderRegistry:
9.mpMapCanvas=
new
QgsMapCanvas(0,0);
11.mpMapCanvas
freeze(
false
12.mpMapCanvas
enableAntiAliasing(
true
13.mpMapCanvas
setCanvasColor(QColor(255,255,255));
14.mpMapCanvas
useImageToRender(
15.mpMapCa