FME使用的一些注意事项与技巧(二)
原文发布时间:2010-07-02
作者:毛毛虫
下面是在Viewer中的几个相关注意问题:
1、Viewer中的颜色样式问题
在做矢量数据转栅格数据时,讲到过需要先对要素设置一个fme_color属性才能使用ImageRasterizer转换器来进行栅格化。但是有时候不用进行设置这个属性就可以进行栅格化,这是因为在数据集中本身就设置了这个属性。我们在Viewer中打开一个图层时,如图:
(图片已丢失)
第一个数据集中前面有个软盘的符号,这表示该数据集中本身已经设置好了显示的颜色样式属性。而第二个数据集为Viewer提供给我们的随机颜色显示,这表示数据集本身没有设置颜色样式属性。
2、要素过滤(Filter Features)
进行要素查询时,选择过滤要素按钮,在弹出的对话框中,点击Enable前面的复选框,使该功能可用。在Left Side中输入属性名称(前面必须加&符号),在Right Side中输入对应这个属性的相应值。注意,不管是属性还是属性的值,都是大小写敏感的,要区分大小写。
3、在显示控制窗口中,我们通常是拖动图层来改变要素间的显示顺序,但是当图层过多时,我们也可以通过弹出菜单来操作。如果,在需要调整的数据集(只有数据集级别上才有这个选项)上,单击Reorder Feature Types…子菜单,如下图:
(图片已丢失)
弹出Edit Feature Type Order对话框,这这个对话框中可以调正显示顺序,然后点击OK,显示控制窗口就发生相应的改变。
4、信息窗户的保存功能
在信息窗口的Feature参数后面,有个Save按钮,点击这个按钮可以把当前显示的要素保存到你选择的文件中,注意保存方式是追加不是替代。
还要注意保存的仅仅是当前显示的要素信息,比如上图显示了选中了六个要素,但是显示的是第一个要素,则保存的仅仅是第一个要素的信息。
5、Viewer的坐标系统设置
在打开或添加数据集时,在弹出的对话框中,对坐标系统默认是Read from source,我们也可以选择后面…按钮打开坐标系统列表对话框来选择坐标系统。
坐标系统只能在这里进行设置,打开数据集之后,无法修改坐标系统。
也就是在Viewer窗口中的信息窗口中,Coord Sys选项只能显示不能修改。
6、数据集类型
基于文件的数据集(File-Based Datasets )
一个基于文件的数据集是一个完全存储在一个文件中的数据集。一个AutoCAD DXF 文件时一个很好的例子,每个.dxf文件是一个独立的数据集。
基于文件的数据集中的要素类型
基于文件的数据集通常有一些分配数据给不同的类的方法。在FME中这些类别作为不同的要素类型。例如,在一个AutoCAD DXF文件中,数据被组织为”layer”.DGN文件,另一方面,使用"levels"。每种情况,FME都读入这些类别作为不同的要素类型。
AutoCAD DXF file the data is organized into "layers". DGN files, on the other hand, use "levels". In each case, FME reads these categories as distinct feature types.
基于文件夹的数据集(Folder-Based Datasets )
在这种形式下,数据集是文件夹或含有数据的目录。
例如,在"C:\FMEData\Data\Schools\ShapeSchoolRegions" 中数据集的名称为:"ShapeSchoolRegions".
ESRI Shape, MapInfo TAB 和 CSV 格式都是这种文件。
基于文件夹数据集的要素类型
在基于文件夹数据集中,数据包含了一系列的文件。典型的,每个文件夹中的独特的文件是数据集中的要素类型。例如,在下面的ESRI Shape数据结构中,数据集是"engineering",同时,要素类型是"roads", "pipelines", 和 "roadsigns".
C:\citydata\engineeering\roads.shp
C:\citydata\engineeering\pipelines.shp
C:\citydata\engineeering\roadsigns.shp
数据库数据集(Database Datasets )
一个数据库数据集是一个存储在数据库中的数据的集合。通常每个不同的数据库是一个不同的数据(虽然严格的讲,数据库中的每个用户/模式可能是不同的数据集)。
比如Oracle数据库,不管它是不是空间数据库,在FME中处理方法是相同的。
在数据库数据集中的要素类型
In a database dataset, each different table within the database is considered a feature type.
在数据库数据集中,数据库中每个不同的数据表被当做一个要素类型。例如,一个Oracle数据库被称作"resources" ,含有称为"users", "vehicles"和"equipment"的表。在这种情况下,这个数据集是"resources",而要素类型是"users", "vehicles", 和 "equipment"。
网络数据集(Web Datasets )
一个网络数据集是存储在网站上的数据的集合。一个网络要素服务(Web Feature Service,WFS)服务器是网络数据集的一个例子。在这种情况下,数据集的名称跟URL(Universal Resource Locator,统一资源定位器)的名字相同。
网络数据集中的要素类型
网络数据集通常有一定数目的图层。每个图层表示不同的要素类型。
7、动态属性工具
如果我们想给要素类添加一个原来没有的属性,可以选择动态图层工具,在打开的动态图层对话框中,输入属性名称和表达式的值,在表达式中可以设置任何FME的函数(如添加的area属性,也可以设施为一个常数(如添加的length属性)。
(图片已丢失)
此时再查看该图层要素,在属性中就出现了这两个属性:
(图片已丢失)
FME的函数可以参考FME Functions and Factories手册。