ARCGIS技巧.docx

上传人:b****8 文档编号:30146031 上传时间:2023-08-05 格式:DOCX 页数:37 大小:44.91KB
下载 相关 举报
ARCGIS技巧.docx_第1页
第1页 / 共37页
ARCGIS技巧.docx_第2页
第2页 / 共37页
ARCGIS技巧.docx_第3页
第3页 / 共37页
ARCGIS技巧.docx_第4页
第4页 / 共37页
ARCGIS技巧.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

ARCGIS技巧.docx

《ARCGIS技巧.docx》由会员分享,可在线阅读,更多相关《ARCGIS技巧.docx(37页珍藏版)》请在冰豆网上搜索。

ARCGIS技巧.docx

ARCGIS技巧

ARCGIS拓扑检查步骤与修正拓扑错误技巧

CreateFeaturesfromTextFile

ARCGIS9.2中,如果你安装的是ArcInfo,并且安装了Workstation,可以由两种方式由点形成线和面:

其一,Arctoolbox->Samples->Datamanagement->Features->CreateFeaturesfromTextFile

其二,Arctoolbox->CoverageTools->ToCoverage->Generate

需注意的是:

方法一生成是shapefile文件格式,而方法二生成的是coverage格式,但二者都可以用文本文档(TXT)文件来组织已知点的坐标

ArcGIS坐标系统文件

地理坐标系与投影坐标系的区别

地图坐标

北京54坐标到西安80坐标转换小结

西安80坐标系与北京54坐标系转换

介绍了ARCGIS中的投影的类型以及各种投影的含义,很有参考价值!

例如:

Beijing19543DegreeGKCM75E.prj

Beijing19543DegreeGKZone25.prj

Beijing1954GKZone13.prj

Beijing1954GKZone13N.prj

对它们的说明分别如下:

三度分带法的北京54坐标系,中央经线在东75度的分带坐标,横坐标前不加带号

三度分带法的北京54坐标系,中央经线在东75度的分带坐标,横坐标前加带号

六度分带法的北京54坐标系,分带号为13,横坐标前加带号

六度分带法的北京54坐标系,分带号为13,横坐标前不加带号

ARCGIS中如何把线图层和面图层叠加呢?

可以通过下面的方法实现:

方法一:

如果线图层和面图层是coverage数据格式,那么只要对线图层采用build命令,build时featuretype选择poly-gon之后,采用union命令,就可以与面图层进行叠加了,形成一个新的面图层。

方法二:

如果手头的文件是shapefile格式,尽管对shapefile文件在arcgis中也有相应的union叠加命令,但是却实现不了线图层和面图层的叠加。

针对shapfile的union命令只是针对polygon的,是不是就不能实现线图层和面图层的叠加了呢,答案是否定的。

这时采用的是Arctoolbox下的Datamangement->features->FeaturetoPolygon就可以实现,线图层和面图层的叠加。

ARCGIS中生成网格的方法?

在arcgis9.2中生成网格有两种方法:

方法一:

arctoolbox中coverage->conversion->tocoverage->generate可以生成需要的网格

方法二:

arctoolbox中datamanagement->featureclass->createfishnet可以生成需要的网格

上述方法中,方法一需要安装wokrstation才会有coverage这个功能,否则实现不了;方法二实现了在没有workstation的情况下网格的生成。

地理坐标系与投影坐标系的区别

1、首先理解地理坐标系(Geographiccoordinatesystem),Geographiccoordinatesystem直译为地理坐标系统,是以经纬度为地图的存储单位的。

很明显,Geographiccoordinatesystem是球面坐标系统。

我们要将地球上的数字化信息存放到球面坐标系统上,如何进行操作呢?

地球是一个不规则的椭球,如何将数据信息以科学的方法存放到椭球上?

这必然要求我们找到这样的一个椭球体。

这样的椭球体具有特点:

可以量化计算的。

具有长半轴,短半轴,偏心率。

以下几行便是Krasovsky_1940椭球及其相应参数。

Spheroid:

Krasovsky_1940

SemimajorAxis:

6378245.000000000000000000

SemiminorAxis:

6356863.018773047300000000

InverseFlattening(扁率):

298.300000000000010000

然而有了这个椭球体以后还不够,还需要一个大地基准面将这个椭球定位。

在坐标系统描述中,可以看到有这么一行:

Datum:

D_Beijing_1954表示,大地基准面是D_Beijing_1954。

有了Spheroid和Datum两个基本条件,地理坐标系统便可以使用。

完整参数:

Alias:

Abbreviation:

Remarks:

AngularUnit:

Degree(0.017453292519943299)

PrimeMeridian(起始经度):

Greenwich(0.000000000000000000)

Datum(大地基准面):

D_Beijing_1954

Spheroid(参考椭球体):

Krasovsky_1940

SemimajorAxis:

6378245.000000000000000000

SemiminorAxis:

6356863.018773047300000000

InverseFlattening:

298.300000000000010000

2、接下来便是Projectioncoordinatesystem(投影坐标系统),首先看看投影坐标系统中的一些参数。

Projection:

Gauss_Kruger

Parameters:

False_Easting:

500000.000000

False_Northing:

0.000000

Central_Meridian:

117.000000

Scale_Factor:

1.000000

Latitude_Of_Origin:

0.000000

LinearUnit:

Meter(1.000000)

GeographicCoordinateSystem:

Name:

GCS_Beijing_1954

Alias:

Abbreviation:

Remarks:

AngularUnit:

Degree(0.017453292519943299)

PrimeMeridian:

Greenwich(0.000000000000000000)

Datum:

D_Beijing_1954

Spheroid:

Krasovsky_1940

SemimajorAxis:

6378245.000000000000000000

SemiminorAxis:

6356863.018773047300000000

InverseFlattening:

298.300000000000010000

从参数中可以看出,每一个投影坐标系统都必定会有GeographicCoordinateSystem。

投影坐标系统,实质上便是平面坐标系统,其地图单位通常为米。

那么为什么投影坐标系统中要存在坐标系统的参数呢?

这时候,又要说明一下投影的意义:

将球面坐标转化为平面坐标的过程便称为投影。

好了,投影的条件就出来了:

a、球面坐标

b、转化过程(也就是算法)

也就是说,要得到投影坐标就必须得有一个“拿来”投影的球面坐标,然后才能使用算法.即每一个投影坐标系统都必须要求有GeographicCoordinateSystem参数。

3、我们现在看到的很多教材上的对坐标系统的称呼很多,都可以归结为上述两种投影。

其中包括我们常见的“非地球投影坐标系统”。

大地坐标(GeodeticCoordinate):

大地测量中以参考椭球面为基准面的坐标。

地面点P的位置用大地经度L、大地纬度B和大地高H表示。

当点在参考椭球面上时,仅用大地经度和大地纬度表示。

大地经度是通过该点的大地子午面与起始大地子午面之间的夹角,大地纬度是通过该点的法线与赤道面的夹角,大地高是地面点沿法线到参考椭球面的距离。

方里网:

是由平行于投影坐标轴的两组平行线所构成的方格网。

因为是每隔整公里绘出坐标纵线和坐标横线,所以称之为方里网,由于方里线同时又是平行于直角坐标轴的坐标网线,故又称直角坐标网。

在1:

1万——1:

20万比例尺的地形图上,经纬线只以图廓线的形式直接表现出来,并在图角处注出相应度数。

为了在用图时加密成网,在内外图廓间还绘有加密经纬网的加密分划短线(图式中称“分度带”),必要时对应短线相连就可以构成加密的经纬线网。

1:

25万地形图上,除内图廓上绘有经纬网的加密分划外,图内还有加密用的十字线。

我国的1:

50万——1:

100万地形图,在图面上直接绘出经纬线网,内图廓上也有供加密经纬线网的加密分划短线。

直角坐标网的坐标系以中央经线投影后的直线为X轴,以赤道投影后的直线为Y轴,它们的交点为坐标原点。

这样,坐标系中就出现了四个象限。

纵坐标从赤道算起向北为正、向南为负;横坐标从中央经线算起,向东为正、向西为负。

虽然我们可以认为方里网是直角坐标,大地坐标就是球面坐标。

但是我们在一副地形图上经常见到方里网和经纬度网,我们很习惯的称经纬度网为大地坐标,这个时候的大地坐标不是球面坐标,她与方里网的投影是一样的(一般为高斯),也是平面坐标.

ARCGIS中矢量裁剪栅格数据

(1)是否需要裁剪栅格图象区域通过一个面状的shapefile表达出来?

如果可以,那么就很简单了。

在ArcMap中,调用空间分析扩展模块,将你感兴趣区的shapefile多边形图层设置为掩膜,然后在栅格计算器中重新计算一下你的图象,它就会沿掩膜裁出。

设置掩膜:

空间分析工具条的下拉菜单>option里面设置

(2)用任意多边形剪切栅格数据(矢量数据转换为栅格数据)

2.1在ArcCatlog下新建一个要素类(要素类型为:

多边形),命名为:

ClipPoly.shp

2.2在ArcMap中,加载栅格数据:

例如kunming.img、和ClipPoly.shp

2.3打开编辑器工具栏,开始编辑ClipPoly,根据要剪切的区域,绘制一个任意形状的多边形。

打开属性表,修改多边形的字段“ID”的值为1,保存修改,停止编辑。

2.4打开空间分析工具栏

执行命令:

<空间分析>-<转换>--<要素到栅格>

指定栅格大小:

查询要剪切的栅格图层kunming的栅格大小,这里假设指定为1指定输出栅格的名称为路径

2.5执行命令:

<空间分析>-<栅格计算器>

2.6构造表达式:

[kunming]*[polyClip4-polyclip4],执行栅格图层:

kunming和用以剪切的栅格polyClip4之间的相乘运算。

对影像的校准和配准

1.打开ArcMap,增加Georeferncing工具条。

2.把需要进行纠正的影像增加到ArcMap中,会发现Georeferncing工具条中的工具被激活。

3.在校正中我们需要知道一些特殊点的坐标。

通过读图,我们知道坐标的点就是公里网格的交点,我们可以从图中均匀的取几个点。

一般在实际中,这些点应该能够均匀分布。

4.首先将Georeferncing工具条的Georeferncing菜单下AutoAdjust不选择。

5.在Georeferncing工具条上,点击AddControlPoint按钮。

6.使用该工具在扫描图上精确到找一个控制点点击,然后鼠标右击输入该点实际的坐标位置.

7.用相同的方法,在影像上增加多个控制点,输入它们的实际坐标。

8.增加所有控制点后,在Georeferencing菜单下,点击UpdateDisplay。

9.更新后,就变成真实的坐标。

10.在Georeferencing菜单下,点击Rectify,将校准后的影像另存。

所有图件扫描后都必须经过扫描纠正,对扫描后的栅格图进行检查,以确保矢量化工作顺利进行。

二、栅格图象矢量化

11.在tools的extensions中选中arcscan,然后在view的toolbar中选中arcscan。

(在安装arcgis时要选中arcscan模块)

12.把图像重新symbolize,使用classify分成两种类型,如:

0-126,126-255。

(把图象二值化:

在图象上鼠标右击,选取properties,在选symbolgy标签,在show中选classified,classes等于2。

在图象上鼠标右击,选取properties,在选symbolgy标签,在show中选classified,classes等于2。

13.在arcCatalog中新建shp文件(分几层建几个,有点、线、多边形、多点四种类型),将图象和SHP文件一起加入到ARCMAP中,对SHP文件进行编辑,此时可以激活arcscan,进行矢量化

ARCGIS中分数的标准

分数形式标注要素:

首先将分母和分子的内容分别放在两个字段中,然后在标注的时候,标注内容选择用表达式标注,在表达式的输入框中输入""&[分子的字段]&""&vbNewLine&[分母的字段],即可实现分数形式的标注。

上下角标形式标注要素:

将标注的主体内容、上角标内容和下角标内容分别用三个字段保存。

假设这三个字段分别是:

text、super_text和sub_text。

步骤如下:

1.在被标注的图层的属性里,点击“experssion(表达式)”。

2.在弹出的“表达式”窗口中书写表达式如下

[text]&""&[super_text]&""&""&[sub_text]&""

其中:

""&[super_text]&""表示将super_text字段里的内容作为上角标

""&[sub_text]&""表示将sub_text字段里的内容作为下角标

补充:

比如在:

对BlockName和Company进行标注时候,使用下面语句实现BlockName红色显示,而Company黑色显示

""&[BlockName]&""&VbNewLine&[Company]

今天发现了一个小问题,如果BlockName或者Company中有特殊字符如&或者>等,会出现将这些特殊字符作为Script语句一部分处理情况,导致无法正常显示标注内容(无法解析VBScript语法).

这个和网页编程时候非常类似,于是参考网页编程方法对代码做了一下修改,用"&"替代"&"

FunctionFindLabel([BlockName],[Company])

strBlockName=Replace([BlockName],"&","&")

strCompany=Replace([Company],"&","&")

FindLabel=""&strBlockName&""&VbNewLine&strCompany

EndFunction

补充2:

以前用ArcGISLabel一般也就在图层的Properties里面定义一下Label字体大小和粗细。

这两天遇到一个问题,需要在Label中显示多个字段的内容,比如BlockName和CompanyName。

其实这个本来不是很难的问题,因为Label中支持VBScript,使用[BlockName]&VbNewLine&[CompanyName]。

就可以实现标注中第一行显示BlockName,第二行显示CompanyName.

现在问题出来了,出图时候希望突出BlockName效果,希望加粗显示,而CompanyName使用一般字体。

考虑了很长时间终于从ArcGIS帮助中找到了相关的内容,原来Label的VBScript里面支持类似于Html的VBScript标签,比如加粗就是用,上面问题就可以使用下面语句解决:

""&[BlockName]&""&VbNewLine&[CompanyName]

除了加粗,ArcGIS中还支持下面的文本格式标签:

Font:

""&[LABELFIELD]&""

Color:

""&[LABELFIELD]&""

""&[LABELFIELD]&""

Bold:

""&[LABELFIELD]&""

Italic:

""&[LABELFIELD]&""

Underline:

""&[LABELFIELD]&""

Allcaps:

""&[LABELFIELD]&""

Smallcaps:

""&[LABELFIELD]&""

Superscript

""&[LABELFIELD]&""

Subscript:

""&[LABELFIELD]&""

Characterspacing(%):

""&[LABELFIELD]&""

Wordspacing(%):

""&[LABELFIELD]&""

Leading(pts):

""&[LABELFIELD]&"

需要注意的是,使用这些标签后,生成的Label语句在Verify按钮中是不生效的,只对最终的显示结果生效。

如何把多个SHP文件合并为(另存为)一个SHP文件  

1、将SHP文件转成COVERAGE后,在ARCEDIT下把所有COVERAGER, PUT到同一个COVERAGE中后,再用ARCVIEW打开保存即可

2、首先在ArcView的Extensions中选择Geoprocessing,

然后打开View菜单下GeoprocessingWizard,根据其示意图一步步进行。

很简单。

3、首先在ArcView的Extensions中选择Geoprocessing,

然后打开View菜单下GeoprocessingWizard,根据其示意图一步步进行。

很简单。

  

4、还有一种方法:

用CRTL+X拷贝图层,到另一个图层中CRTL+V粘贴就可以了。

5、用MO2.1可完成.

6、用图层拷贝会丢失属性值,可在arcgis8arccatalog中将其中一个shp文件转成Personalgeodatabase文件,然后点中该文件,按右键load其它shp文件,最后再将该文件转成shp文件就可,文件属性不会丢失。

 

ArcMap注记多行显示问题的解决方法

一、问题描述:

利用ArcMap进行地图配图的时候,有时候会遇到注记文本不能很好显示的问题,例如ArcMap默认处理注记文本时是单行显示,如果遇到注记过长这种显示方式便令人有些不舒服的感觉。

那有什么办法能够更好地展示注记吗?

比如我想令它多行显示,或者只显示其中的一部分注记。

二、解决方法:

我们可以在图层属性框的Label选项页面中,选择Expression(表达式设置),利用JavaScript脚本语言对其进行处理。

例1:

多行显示注记脚本

functionFindLabel([Name])

{

if([Name].length<=10){

return[Name];

}else{

return[Name].substr(0,[Name].length/2)+""n"+[Name].substr([Name].length/2);

}

}

例2:

显示注记文本的一部分:

functionFindLabel([MC])

{

if([MC].length<=6){

return[MC];

}else{

return[MC].substr(6,[MC].length);

}

Arcmap技巧总结

1.  要素的剪切与延伸

实用工具TASK任务栏Extend/Trimfeature剪切所得内容与你画线的方向有关。

2.  自动捕捉跟踪工具

点击Editor工具栏中Snapping来打开SnappingEnvironment对话框

捕捉设置中有3个选项,vertexedgeend分别是节点、终点、和边,选择end应该会捕捉端点

3.  图斑面积计算及长度计算

应用工具CALCULATEAREA或者使用VBA代码实现新建字段并开启Advanced写入代码,面积计算:

DimOutputasdouble

   DimpAreaasIarea

   Set  pArea=[shape]

在最后的一个空格里面写入代码(即:

字段名)pArea.area

长度计算:

DimOutputasdouble

DimpCurveasICurve

SetpCurve=[shape]

Output=pCurve.Length

4.  剪切图斑

Task任务栏cutpolygonfeature工具,需要sketch工具画线辅助完成

5.  配准工具

Spatial  Adjustment工具需要注意先要setadjustmentdata然后配准

6.  影像校正

Georeferncing工具

7.  要素变形

Task工具条中的reshapefeature配合sketch工具

8.  添加节点

Modifyfeature  在需要加点的地方右键单击insertvertex

也可单击右键选择properties打开editsketchproperties对话框,在坐标点位置右键插入节点

9.  共享多边形生成

Auto-completepolygon工具生成共享边的多边形,配合snappingenvironment更好。

10.画岛图

1).使用任务栏中的sketch工具,当画完外面的一圈时,右键选择finishpart然后画中间的部分再右键finishsketch

2).分别画连个图斑然后应用Editor工具栏中的工具先intersect(图斑重叠的地方创建一个新的图斑)然后Clip(剪切)即可。

(补充其他工具:

Union,把多个图斑联合起

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 药学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1