构建地理数据库geodatabase教程.docx
- 文档编号:28527313
- 上传时间:2023-07-18
- 格式:DOCX
- 页数:25
- 大小:35.46KB
构建地理数据库geodatabase教程.docx
《构建地理数据库geodatabase教程.docx》由会员分享,可在线阅读,更多相关《构建地理数据库geodatabase教程.docx(25页珍藏版)》请在冰豆网上搜索。
构建地理数据库geodatabase教程
构建地理数据库(geodatabase)教程
构建地理数据库教程快速浏览
用户可以容易地创建地理数据库并向其添加行为,且使用ArcGISDesktop中的数据管理工具时不需要进行编程工作。
在ArcMap(用于编辑、分析地图和以及根据数据创建地图的应用程序)中查询和编辑地理数据库时,可以很轻松地利用地理数据库中的数据和行为,而无需进行任何自定义。
本教程帮助用户使用ArcGISDesktop的ArcEditor或ArcInfo许可权限浏览地理数据库的功能。
您可以按照自己的进度学习本教程,无需任何其他帮助。
本教程包括八个练习,每个练习需要10到20分钟来完成。
练习是循序渐进的,必须按顺序分别完成。
在本教程中,您将使用ArcCatalog和ArcMap创建对公共事业水网进行建模的地理数据库。
您将通过创建子类型、验证规则、关系和几何网络将行为添加到地理数据库。
可以使用ArcMap通过编辑地理数据库中的一些现有要素并添加一些新要素来利用该行为。
这些练习的研究区域是假想城市的一部分。
软件随附一个地理数据库,其中包含大部分数据、一个表示给水支管的Coverage和一个表示宗地所有者数据的INFO表。
本教程中您会将Coverage和INFO表导入到地理数据库中,然后修改属性以指定其行为。
练习1:
在Catalog中组织数据
开始此教程之前,必须查找和组织所需的数据。
这可通过使用ArcMap或ArcCatalog应用程序中的Catalog窗口来完成。
连接到数据
在Catalog中,数据是通过文件夹或数据库连接进行访问的。
数据库连接用于访问ArcSDE地理数据库。
此教程使用文件地理数据库。
文件地理数据库通过文件夹连接进行访问。
可通过文件夹连接访问的其他数据包括个人地理数据库、shapefile和Coverage。
在文件夹连接中进行查找时,可以快速查看其所包含的文件夹和数据源。
现在,通过在ArcCatalog中创建与数据的文件夹连接开始组织数据。
步骤:
1.单击开始>所有程序>ArcGIS>ArcCatalog10启动ArcCatalog。
2.单击ArcCatalog“标准”工具栏上的连接到文件夹按钮
。
这会打开“连接到文件夹”对话框。
3.导航至安装教程数据的本地驱动器上的BuildingaGeodatabase文件夹。
4.在“连接到文件夹”对话框上单击确定以建立文件夹连接。
新文件夹连接现在已在Catalog目录树中列出。
现在,可通过该连接访问此教程所需的所有数据。
浏览数据
开始修改地理数据库之前,浏览为此教程所提供的数据集。
步骤:
1.单击BuildingaGeodatabase文件夹旁的加号以查看其包含的数据集。
2.单击文件夹中的lateralscoverage将其选中。
3.单击预览选项卡以查看laterals几何。
4.单击Montgomery地理数据库旁的加号,然后双击每个要素数据集。
这会展开要素数据集,以便您查看每个要素数据集中所包含的所有要素类。
5.单击BuildingGeodatabase文件夹中的owners.datINFO表。
请注意“预览”类型是如何自动更改为“表”并显示表的记录。
此表包含Montgomery地理数据库中Parcels要素类的所有者信息。
在此练习的下一个部分中,将此表导入到地理数据库,并在宗地与其所有者之间创建关联。
练习2:
将数据导入到地理数据库
必须先将数据移动到地理数据库,然后才能开始对数据进行操作。
将两个数据集导入到Montgomery地理数据库-laterals与owner.dat。
lateralscoverage包含Montgomery的Water数据集的给水支管,而owner.datINFO表则包含地理数据库中现有宗地要素的所有者信息。
导入Coverage
步骤:
1.在ArcCatalog中,右键单击Montgomery地理数据库中的Water要素数据集,指向导入,然后单击要素类(多个)。
该工具用于指定输入Coverage、输出地理数据库以及输出要素类。
因为是通过右键单击要素数据集来打开此工具,所以输出地理数据库Montgomery和要素数据集Water均已填充完毕。
有多种方法可以设置输入与输出数据集。
可从ArcCatalog目录树或“内容”选项卡中拖动一个或多个数据集,然后将其放在文本框中。
也可单击“浏览”按钮打开ArcCatalog小型浏览器并导航到数据集,或者在文本框中输入数据集的完整路径名称。
2.单击浏览按钮,导航到lateralsCoverage中的Arc要素类,然后单击添加。
3.单击确定运行要素类至地理数据库(多个)工具。
该工具在运行时,进度条将显示在ArcCatalog的右下角。
该工具运行结束时,将弹出一条消息。
可单击该消息打开结果窗格,以查看工具运行期间生成的任何消息。
现在,laterals_arc要素类已出现在Water要素数据集中。
4.在ArcCatalog目录树中,导航到laterals_arc要素类并单击它。
5.按F2键,然后输入Laterals重命名该要素类。
6.单击预览选项卡查看要素。
为要素类及其字段创建别名
地理数据库允许用户为字段、表和要素类创建别名。
别名是用来指代这些项的备选名称。
与真实名称不同,别名可以包含特殊字符(如空格),因为它们不需要遵守数据库的对象名称限制。
在ArcMap中将别名与数据结合使用时,系统会自动为要素类、表和字段使用别名。
但在ArcCatalog中,这些项始终用其真实名称表示。
现在,为新的要素类及其字段创建别名。
步骤:
1.右键单击Water要素数据集中的Laterals要素类,然后单击属性。
2.单击常规选项卡。
3.在别名文本框中输入Waterlaterals。
4.单击字段选项卡。
5.单击对象ID字段并输入Featureidentifier作为其别名。
6.重复执行此过程,为以下各字段分配别名:
字段
别名
形状
几何字段
DEPTH_BURI
Depthburied
RECORDED_L
Recordedlength
FACILITY_I
Facilityidentifier
DATE_INSTA
Installationdate
TYPECODE
Subtypecode
7.添加完所有别名后,单击确定关闭要素类属性对话框。
既然已将Laterals要素类导入到地理数据库并添加了一些别名,下面便可以导入owner.datINFO表。
导入INFO表
owner.datINFO表包含Montgomery地理数据库中Parcels要素类的宗地所有者信息。
为了能够在宗地与其所有者之间创建关联,必须将所有者信息导入到Montgomery地理数据库。
将使用“表(单个)”导入工具将owner.datINFO表导入到Montgomery地理数据库。
然后为该表创建别名。
步骤:
1.右键单击Montgomery地理数据库,指向导入,然后单击表(单个)。
2.将owners.datINFO表从Catalog目录树拖放到表至表对话框的输入行文本框中。
3.在输出表文本框中输入Owners。
4.单击确定。
5.工具运行完后,在Catalog目录树中单击Montgomery地理数据库中的Owners表。
6.单击预览选项卡。
7.右键单击Owners表,然后单击属性查看该表的属性。
8.输入Parcelowners作为该表的别名。
9.单击字段选项卡并输入以下字段别名:
字段
别名
OBJECTID
Objectidentifier
OWNER_NAME
Ownername
OWNER_PERCENT
Percentageownership
DEED_DATE
Dateofdeed
10.单击确定。
练习3:
创建子类型和属性域
将数据存储在地理数据库中的一个优势是用户可以定义数据编辑方式的规则。
将通过以下方式定义这些规则:
为支管直径创建新的属性域,为Laterals要素类创建子类型,并将新域、现有域和默认值与各子类型的字段相关联。
属性域是描述字段类型合法值的规则。
多个要素类和表可以共享数据库中存储的属性域。
但并不是要素类或表中的所有对象都需要共享相同的属性域。
例如,在供水管网中,假定仅消火栓给水支管的压力值可以在40和100psi之间,而生活用水支管的压力值只能在50和75psi之间。
这种情况下应使用属性域来强制实施此限制。
要实现此类验证规则,您不必为消火栓和生活用水支管创建单独的要素类,而是希望区分这些类型的给水支管与其他支管以建立一组独立的域和默认值。
可以使用子类型来实现这一点。
要了解有关子类型和属性域的详细信息,请参阅子类型快速浏览和属性域快速浏览。
创建属性域
将使用ArcCatalog创建新的编码值属性域。
这一新域描述新Laterals要素类的有效管路直径的集合。
步骤:
1.右键单击Montgomery地理数据库,然后单击属性。
将打开数据库属性对话框。
2.单击域选项卡。
3.单击域名下的第一个空字段并输入LatDiameter作为新域的名称。
4.在描述字段中,输入给水支管的有效直径。
接下来应指定域的属性。
属性包括此域可与之相关联的字段类型、域的类型(范围或编码值)、分割与合并策略和域的有效值。
范围域描述数值的有效范围,而编码值域描述有效值的集合。
在本练习中,将创建新的编码值域。
所有域还具有分割与合并策略。
对要素进行分割或合并时,ArcGIS依据这些策略来决定所生成的一个或多个要素的特定属性值。
5.在域属性下,单击字段类型下拉列表,然后单击浮点型。
这定义了域可以应用到的列的数据类型。
为编码域输入有效值或编码,并为各个编码提供简明易懂的描述。
在教程的后面部分将看到,ArcMap使用简明易懂的描述而不是编码来说明与域相关联的字段的值。
6.单击编码值:
下编码列中的第一个空字段并输入13。
7.单击旁边的描述字段并输入13"作为编码描述。
8.向列表中添加以下编码值:
编码
描述
10
10"
8
8"
6
6"
4
4"
3
3"
2.25
21/4"
2
2"
1.5
11/2"
1.25
11/4"
1
1
0.75
3/4"
-9
未知
9.单击确定关闭数据库属性对话框。
该域即已添加到地理数据库。
创建子类型并关联默认值和域
现在将创建Laterals要素类的子类型,并将默认值和域同各个子类型的字段相关联。
通过创建子类型,可以使各个给水支管要素使用各不相同的域、默认值或连通性规则(如本教程的以下部分中所示)。
步骤:
1.双击Montgomery地理数据库中的Water要素数据集将其打开。
2.右键单击Laterals要素类,然后单击属性。
将打开要素类属性对话框。
3.单击子类型选项卡。
现在将为该要素类指定子类型字段。
子类型字段包含用于标识特定要素属于哪个子类型的值。
4.单击子类型字段下拉箭头,然后单击TYPECODE。
现在将添加子类型编码及其描述。
添加新子类型时,将给其中的某些字段分配默认值和域。
5.单击子类型下子类型编码0旁的描述字段并输入未知作为其描述。
6.在默认值和域下,单击H_CONFID字段旁的默认值字段并输入0作为其默认值。
7.输入0作为DEPTH_BURI和RECORDED_L字段的默认值。
8.对于WNM_TYPE和PWTYPE字段,输入WUNKNOWN作为默认值。
9.单击DIAMETER字段旁的默认值字段并输入8作为默认值。
10.单击DIAMETER字段的域下拉列表,然后单击LatDiameter将其设置为“未知”子类型的默认属性域。
11.单击MATERIAL字段并输入DI作为默认值。
12.在MATERIAL字段的域下拉列表中,单击材料。
13.添加以下子类型:
子类型编码
描述
1
消火栓支管
2
消防支管
3
生活用水支管
14.与“未知”子类型一样,分别为这些新子类型的DEPTH_BURI、RECORDED_L、DIAMETER和MATERIAL字段设置默认值和域。
15.对于消火栓支管子类型,将WNM_TYPE和PWTYPE字段设置为WHYDLIN。
16.对于消防支管子类型,将WNM_TYPE和PWTYPE字段的默认值设置为WFIRELIN。
17.对于生活用水支管子类型,将WNM_TYPE和PWTYPE字段的默认值设置为WSERVICE。
在ArcMap编辑环境中向具有子类型的要素类添加新要素时,如果没有指定特定子类型,那么该要素将被分配值默认子类型。
添加了要素类的全部子类型之后,可从所添加的子类型中设置默认子类型。
18.单击默认子类型下拉箭头,然后单击生活用水支管将其设置为默认子类型。
19.单击确定。
练习4:
创建对象之间的关系
在练习2:
将数据导入到地理数据库中,您已经将一个包含所有者对象的INFO表导入到Montgomery地理数据库中。
此地理数据库中已经有了一个包含宗地对象的要素类,即Parcels。
现在,将创建宗地与所有者之间的关系类,以便在使用ArcMap中的数据时,可以轻松找出哪些所有者拥有哪些宗地。
步骤:
1.右键单击Montgomery地理数据库中的Landbase要素数据集,指向新建,然后单击关系类。
将打开新建关系类向导。
向导的第一个面板用于指定新关系类的名称、源要素类或源表以及目标要素类或目标表。
2.在关系类的名称文本框中输入ParcelOwners。
3.单击源表/要素类列表中的Owners。
4.双击目标表/要素类列表中的Landbase要素数据集。
5.单击Parcels。
这会将Parcels要素类指定为目标要素类。
6.单击下一步。
下一个面板用于指定正在创建的关系类的类型。
正在创建的是一个简单关系类,因为所有者和宗地可以彼此独立地存在于数据库中。
因此,可以接受默认类型-简单(对等)关系。
7.单击下一步。
现在,您必须指定路径标注和消息通知方向。
从源类向目标类的方向(在本例中,从Owners向Parcels)导航关系时,要用前向路径标注来描述关系。
在以相反方向(从Parcels向Owners)导航关系时,要用后向路径标注来描述关系。
消息通知方向用于描述消息是如何在相关对象之间传递的。
由于此关系类不需要消息通知,因此可以接受无这一默认设置。
8.为前向路径标注输入owns。
9.为后向路径标注输入isownedby。
10.单击下一步。
现在将指定关系的基数。
基数用于描述目标要素类或目标表中可与源要素类或源表中的某个对象相关联的对象的可能数量。
11.单击1-M(一对多)以指定一个所有者可以拥有许多块宗地。
12.单击下一步。
现在,您必须指定新的关系类是否有属性。
在此示例中,ParcelOwners关系类不需要属性(这是默认设置)。
13.单击下一步。
下一步是在源表(Owners)中指定主键并在目标要素类(Parcels)中指定嵌入式外键字段。
在这些字段中具有相同值的所有者和宗地将相互关联。
14.单击在源表/要素类中选择主键字段下的第一个下拉箭头,然后单击PROPERTY_ID。
15.单击对话框上的第二个下拉箭头,然后单击PROPERTY_I以将其作为目标要素类中的嵌入式外键。
16.单击下一步。
将显示一个摘要页面。
17.查看摘要页面并确保信息是正确的。
18.单击完成。
练习5:
构建几何网络
存储在同一要素数据集中的要素类可以参与几何网络。
几何网络用于为定向的流动网络系统(如供水管网)建模。
您将基于Montgomery地理数据库的Water要素数据集中的要素类构建一个几何网络。
然后要创建连通性规则,以定义哪些要素可在网络中相互连接。
创建供水管网
步骤:
1.单击开始>所有程序>ArcGIS>ArcCatalog10启动ArcCatalog。
2.导航到文件夹连接中的Montgomery地理数据库。
3.展开Montgomery地理数据库。
4.右键单击Montgomery地理数据库中的Water要素数据集,指向新建,然后单击几何网络。
将打开新建几何网络向导。
5.单击下一步。
6.输入几何网络的名称WaterNet。
7.单击是以捕捉要素。
8.在美国测量英尺旁的文本框中输入0.5。
此对话框应与下图类似。
9.单击下一步。
现在,您必须选择要素数据集中的哪些要素类将参与几何网络。
10.单击全选。
列表中的所有要素类都将参与网络。
11.单击下一步。
如果在使用网络一段时间后需要将网络删除并重新构建网络,可以选择排除具有某些特定属性的要素,这会更便于您管理网络各部分的状态。
在下一个面板上,将选择不排除要素。
12.单击否,以使所有要素都参与几何网络。
13.单击下一步。
在下一个对话框中,必须指定哪些线类将在几何网络中变为复杂边要素类。
复杂边要素不会被沿其长度方向的另一个要素的连接点分割成两个要素。
这样,在为可能会有多个支管与之相连的给水干管建模时,复杂边要素很有用。
默认情况下,所有线要素类都是简单边要素类。
在同一对话框中,必须指定哪些交汇点要素类(如果有)可以充当网络中的源头和汇点。
源头和汇点用于确定供水管网中的流向。
14.在Distribmains行中,单击角色列下的简单边。
15.从列表中选择复杂边。
这会将Distribmains要素类的角色从简单边更改为复杂边。
16.在Tanks要素类的行中,单击源头和汇点下的下拉菜单,然后单击是。
17.在Transmains行中,单击角色列下的简单边,然后从列表中选择复杂边。
这会将Transmains要素类的角色从简单边更改为复杂边。
18.单击下一步。
现在可以分配网络权重。
网络权重用于描述穿过逻辑网络中的元素所产生的影响,例如水流经管道时的压强降低。
19.此几何网络不需要权重(这是默认设置),因此可以单击下一步。
单击下一步以打开摘要页面。
20.查看过摘要页面后,单击完成。
此时将出现一个进度指示器,用于显示网络构建过程中每个阶段的进度。
您将收到一条错误消息,指明网络已构建完成但出现错误。
21.单击确定关闭消息框。
22.可通过预览WaterNet_BUILDERR表来查看构建几何网络时出现了什么错误。
23.单击Catalog目录树中的WaterNet_BUILDERR表,然后单击预览选项卡查看此表中的条目。
将显示两条记录。
练习6:
创建注记
在练习1:
在Catalog中组织数据中,您从头至尾浏览了Montgomery地理数据库中的现有要素类。
这些要素类中的某一要素类含有与Distribmains要素类中的要素相关联的注记。
然后您又将WaterLaterals从coverage导入到Water要素数据集。
现在,您将在ArcMap中为WaterLaterals创建标注并将其转换为关联到Laterals的注记要素类。
为Lateral子类型创建标注
启动ArcMap并添加Laterals要素类。
步骤:
1.单击开始>所有程序>ArcGIS>ArcMap10启动ArcMap。
2.将Montgomery地理数据库设置为默认值,因为它是本教程中将使用的地理数据库。
为此,请单击ArcMap-入门对话框上的浏览按钮。
3.导航到BuildingaGeodatabase教程文件夹的位置,选择Montgomery地理数据库,然后单击添加。
4.单击确定打开一个新的空地图。
5.单击标准工具条上的目录窗口按钮
可打开目录窗口。
6.在Catalog窗口中导航到Montgomery地理数据库。
7.展开Water要素数据集。
8.单击Laterals要素类,按住鼠标左键,同时将该要素类从Catalog窗口拖到ArcMap窗口中。
因为已创建了Laterals要素类的子类型,所以会用唯一符号自动绘制每个子类型。
将要为这些子类型创建不同的标注类。
9.在ArcMap内容列表中右键单击Laterals要素类,然后单击属性。
将打开图层属性对话框。
10.单击标注选项卡。
11.选中此图层中的标注要素框。
12.单击方法下拉箭头,然后单击定义要素类并且为每个类加不同的标注。
13.单击获取符号类。
现已为该图层定义了若干个标注类-一种用于每个子类型,一种用于其他值。
保持图层属性对话框的打开状态,在下一部分会用到它。
定义消火栓支管的标注
不同的支管子类型在给水系统中发挥不同的作用。
例如,生活用水支管将水从配水干管引入住宅区或企业,而消火栓支管则将水从干管引入消火栓。
您需要将消火栓支管的标注设置为红色,以便于浏览地图的人区分消火栓支管与其他支管。
步骤:
1.单击图层属性对话框的标注选项卡上的类下拉列表,然后单击Hydrantlaterals。
2.单击文本颜色下拉箭头,从调色板中选择红色样本。
3.单击粗体B和斜体I按钮。
4.单击表达式。
将打开标注表达式对话框。
有时您会想要用单个字段的内容标注要素。
通过“标注字段”下拉列表可以选择用于标注要素的单个字段。
在其他时候,您可能希望创建更复杂的标注。
使用“标注表达式”对话框可以通过将一个或多个字段与其他文本相连来构造标注。
还可以使用脚本将逻辑添加到标注表达式。
要为消火栓支管创建标注,需要加载已保存到文件的标注表达式。
5.单击加载。
这将打开一个对话框,可通过此对话框导航到想要加载的文件。
6.导航到BuildingaGeodatabase教程文件夹中的Layers文件夹。
7.选择lateral_exp.lxp文件,然后单击打开。
该脚本表达式会计算每个支管的长度;如果它的值大于200,便以DIAMETER字段的内容、一个空格以及MATERIAL字段的内容标注该支管。
如果长度
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 构建 地理数据库 geodatabase 教程
![提示](https://static.bdocx.com/images/bang_tan.gif)