Changes between Version 24 and Version 25 of FDORfc59


Ignore:
Timestamp:
Apr 10, 2011, 7:40:24 PM (13 years ago)
Author:
gregboone
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FDORfc59

    v24 v25  
    998998}}}
    999999
     1000== OGC WKT vs FGF WKT ==
     1001
     1002The following analysis is based on the examination of the OGC WKB format vs. the As-Implemented FGF WKB format in FDO 3.5.0. The most recent OGC WKB Specification can be located at the following link. Refer to Section 7 on Page 53: “Well-known Text Representation for Geometry”.
     1003
     1004OpenGIS Implementation Specification for Geographic information - Simple feature access
     1005
     1006In general FGF WKT is a superset of WKT, and includes geometry types that are not yet fully defined by a WKB specification. While FGF will continue to be a superset of WKT, the following sections outline areas where further alignment can be made.
     1007
     1008=== Dimensionality ===
     1009
     1010In FGF WKT, where the dimensionality of the geometry is not XY, The following string values are written:
     1011
     1012||Dimensionality||Text||
     1013||XYZ||XYZ||
     1014||XYM||XYM||
     1015||XYZM||XYZM||
     1016
     1017In OGC WKT, where the dimensionality of the geometry is not XY, The following string values are expected to be written to the string:
     1018
     1019||Dimensionality||Text||
     1020||XYZ||Z||
     1021||XYM||M||
     1022||XYZM||ZM||
     1023
     1024
     1025== OGC WKB vs FGF WKB ==
     1026
     1027The following analysis is based on the examination of the OGC WKB format vs. the As-Implemented FGF WKB format in FDO 3.5.0. The most recent OGC WKB Specification can be located at the following link. Refer to Section 8 on Page 63: “Well-known Binary Representation for Geometry”.
     1028
     1029OpenGIS Implementation Specification for Geographic information - Simple feature access
     1030
     1031In general FGF WKB is a superset of WKB, and includes geometry types that are not yet fully defined by a WKB specification. While FGF will continue to be a superset of WKB, the following sections outline areas where further alignment can be made.
     1032
     1033=== Byte Order ===
     1034
     1035The OGC WKB specification states that the Byte Oder is written out as a part of a geometric WKB Definition. 
     1036
     1037"The [OGC] Well-known Binary Representation for Geometry is obtained by serializing a geometric object as a sequence of numeric types drawn from the set {Unsigned Integer, Double} and then serializing each numeric type as a sequence of bytes using one of two well defined, standard, binary representations for numeric types (NDR, XDR). The specific binary encoding (NDR or XDR) used for a geometry representation is described by a one-byte tag that precedes the serialized bytes. The only difference between the two encodings of geometry is one of byte order, the XDR encoding is Big Endian, and the NDR encoding is Little Endian."
     1038
     1039FGF WKB does not write out binary encoding for NDR/XDR. FDO expects all WKB it processes to be in a Little-Endian format.
     1040
     1041=== Common List of Codes for Geometric Types ===
     1042
     1043The OGC WKB standard defines a common list of codes for geometric types. These types not only indicate the geometric types, but also the dimensionality of the type. Thus a single integer is defined to represent both pieces of information.
     1044
     1045FGF WKB writes out the geometric type and dimensionality information as two integers, one for the geometric type and another for the dimensionality. The geometric values used are a basic subset of the OGC WKB values, specifically those used to represent XY geometries.
     1046
     1047=== FGF Geometric Types ===
     1048
     1049The following are a list of FGF Geometry Types
     1050
     1051||Type||Code
     1052||Geometry||0||
     1053||Point||1||
     1054||LineString||2||
     1055||Polygon||3||
     1056||MultiPoint||4||
     1057||MultiLineString||5||
     1058||MultiPolygon||6||
     1059||MultiGeometry||7||
     1060||CurveString||10||
     1061||CurvePolygon||11||
     1062||MultiCurveString||12||
     1063||MultiCurvePolygon||13||
     1064
    10001065
    10011066