PostGIS特性表征
从PostGIS中读取的特征由一系列属性值和几何图形组成。每个特性的特性类型都定义在DEF行上。PostGIS中的几何对象模型遵循OGI简单特性规范1.1。有关更多信息,请参见http://www.opengis.org。
写入数据库的功能部件的功能部件类型为目标表,属性定义为定义线。
除了FME Workbench添加到所有特性的通用FME特性属性之外(请参阅关于要素类型属性),此格式还添加特定于格式的属性(格式属性).
属性名 |
目录 |
postgis_类型 |
存储在特征中的几何实体的类型。对象模型的有效值如下所示: postgis_点 postgis_多点 postgis_线串 postgis多行 postgis_循环字符串 postgis_复合曲线 postgis_多曲线 postgis_多边形 多多边形邮政 波茨波列贡 postgis_多曲面 postgis_三角形 postgis_多面体曲面 邮政 地理集合 邮政编码 |
后遗症 | PostgreSQL数据库中的表可以使用OID列创建,尽管这通常仅由系统表使用。此属性存在,如果正在读取的表中存在,则将其设置为OID列的值。 |
从PostGIS读取或写入PostGIS的特性还为数据库表中的每一列提供一个属性。特性属性名将与源或目标列名相同。属性名和列名是区分大小写的。
没有坐标
postgis_type: postgis_none
从PostGIS中读取时,没有坐标的特性将被标记为这个值。注意,当只读取或写入属性数据表时,应该使用PostgreSQL reader/writer。还要注意,这不是有效的OGC类型。
点
postgis_type: postgis_point
标记此值的特性由单个点组成。
多点
postgis_type: postgis_multipoint
标记此值的特性由一组点组成。
LineString
postgis_type: postgis_linestring
标记此值的特性由一行组成。
MultiLineString
postgis_type: postgis_multilinestring
标记此值的特性由一组行组成。
CircularString
postgis_type: postgis_circularstring
标记此值的特性包括一条圆弧路径。
CompoundCurve
postgis_type: postgis_compoundcurve
标记此值的特性包括线条和/或圆弧的路径。
多曲线
postgis_type: postgis_multicurve
标记此值的特性由一组圆弧的线条和路径组成。
注意,包含线条和圆弧的路径不能存储在多urve中。
多边形
postgis_type: postgis_polygon
标记此值的特性包括一个线性多边形或甜甜圈。
多个多边形
postgis_type: postgis_multipolygon
标记此值的特性包括线性多边形和/或甜甜圈的集合。
CurvePolygon
postgis_type: postgis_curvepolygon
标记此值的特征包括线性或曲线多边形或甜甜圈。
多面
postgis_type: postgis_multisurface
标记此值的特性包括线性和/或曲线多边形和/或甜甜圈的集合。
三角形
postgis_type: postgis_triangle
标记此值的特性由一个线性三角形多边形组成,每个顶点上都有X、Y和Z分量。
PolyhedralSurface
postgis_type: postgis_polyhedralsurface
标记此值的特性由一组线性多边形(而不是甜甜圈)组成,形成单个连续的可定向非自交曲面。这些多边形的顶点有X、Y和Z分量。
锡
postgis_type: postgis_tin
标记此值的特性是多面体表面,其中特性中的每个多边形都是三角形。
GeometryCollection
postgis_type: postgis_geometrycollection
标记此值的特性可能包含异构聚合。
在写入PostGIS时,可以手动将postgis_type设置为postgis_geometrycollection,并根据postgis_collection_id属性将特性组合到集合中。
几何
postgis_type: postgis_geometry
尽管在单个特性上不是有效的几何类型,但可以为目标几何列类型设置此类型,以指示该列中允许任何几何类型。如果在生成时指定了写入器指令GENERIC_GEOMETRY,则所有目标特性类型都将具有该类型的几何列。另外,尽管默认情况下不会发生这种情况,但是可以在任何一个或多个目标特性类型上手动指定这种类型,以便在那些特定的表上创建通用的几何列。
注意,虽然用户在编写时显式地确定几何列,但读者将尝试使用PostGIS元数据表确定几何列的名称和类型。
如果PostGIS阅读器应用于缺少适当元数据表或条目的数据库,则将允许几何存储的第一列作为几何列。如果列确实不包含几何图形,则此决定可能导致转换失败。为了解决这个问题,请使用PostgreSQL reader,它忽略了几何列。或者,如果有多个几何列,或者是blob列和几何列的混合,并且仍然需要几何结构,那么尝试格式化一个选择几何列第一列的自定义SQL查询。
还要注意,几何列可以存储在几何列或blob列中,但这些列也可能包含其他数据。与功能的几何体不对应的几何体列将被读取为十六进制编码的字符串,而blob将被读取为原始字节。