Well-known text
Well-known text(略称:WKT)は 、ベクタ形式幾何学オブジェクトを投影法 (地図)を基に変換し地図上に表現させるマークアップ言語である。 バイナリ形式で実装されているものはwell-known binary (WKB)であり、PostGISやMicrosoft SQL ServerやDB2等のデータベースでの保存に利用されている。 ジオメトリオブジェクト点 (数学)、線分、多角形、曲線、多面体、TINを含む計18種類が表現できる。 ジオメトリ上の座標は、2次元(x、y)・3次元(x、y、z)・4次元(x、y、z、m:m値は線形参照で用いる)・m値を含む2次元(x、y、m) で示される。 座標が空のジオメトリはEMPTY表示になる。 ジオメトリの仕様はOpen Geospatial Consortium (OGC) により策定されており、PostGIS等のアプリケーションにてOGC仕様に則しジオメトリ変換関数が実装されている。 OGC標準定義においてポリゴン外部の各頂点は反時計周りであり、内部の各頂点は全て時計回りである。[1]
以下にWKTのジオメトリ文字列を示す。 GEOMETRYCOLLECTION(POINT(4 6),LINESTRING(4 6,7 10)) POINT ZM (1 1 5 60) POINT M (1 1 80) POINT EMPTY MULTIPOLYGON EMPTY CIRCULARSTRING(1 5, 6 2, 7 3) COMPOUNDCURVE(CIRCULARSTRING(0 0,1 1,1 0),(1 0,0 1)) CURVEPOLYGON(CIRCULARSTRING(-2 0,-1 -1,0 0,1 -1,2 0,0 2,-2 0),(-1 0,0 0.5,1 0,0 1,-1 0)) MULTICURVE((5 5,3 5,3 3,0 3),CIRCULARSTRING(0 0,2 1,2 2)) TRIANGLE((0 0 0,0 1 0,1 1 0,0 0 0)) TIN (((0 0 0, 0 0 1, 0 1 0, 0 0 0)), ((0 0 0, 0 1 0, 1 1 0, 0 0 0))) POLYHEDRALSURFACE Z ( ((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 0 1 0, 0 1 1, 0 0 1, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)), ((1 1 1, 1 0 1, 0 0 1, 0 1 1, 1 1 1)), ((1 1 1, 1 0 1, 1 0 0, 1 1 0, 1 1 1)), ((1 1 1, 1 1 0, 0 1 0, 0 1 1, 1 1 1)) ) Well-known binaryWKBでは十六進法の文字列で表す。 始めのバイト_(情報)はデータのエンディアンを示す。
続く4バイトはジオメトリ型を表す32ビットの符号なし整数であり, 具体的には以下の通り:
各データ型は、倍精度浮動小数点(double)の座標を持つ、ポイントか線状のリングの数などの固有データ構造を有する。 例えば、POINT(2.0 4.0)というジオメトリは次で表される: ここで,
である。 座標参照系WKTは座標参照系を表すことができる。このWKTの書式は, そもそも1991年にOpen Geospatial Consortiumによって定義され, 2001年に拡張された。この書式は"WKT 1"としても知られる。後にm 座標参照系の概念の進化や, WKT 1への新たな要求や, ソフトウェアの間でのWKT 1の実装の違いなどのために, この書式の見直しがなされた。2015年のOpen Geospatial Consortiumにおいて, 更新されたその標準書式, すなわち, "WKT 2としても知られる"Well-known text representation of coordinate reference systems"が採択された。この標準は, 国際標準化機構によってISO 19162:2015としても公表された。 例えば, 次に示すWKTは2次元の地理座標参照系を示すものであり, 緯度軸が最初に記載され, 次に経度軸が記載され, 座標系はWGS84測地系によって地球と結び付けられている: GEODCRS["WGS 84",
DATUM["World Geodetic System 1984",
ELLIPSOID["WGS 84", 6378137, 298.257223563, LENGTHUNIT["metre", 1]]],
CS[ellipsoidal, 2],
AXIS["Latitude (lat)“, north, ORDER[1]],
AXIS["Longitude (lon)“, east, ORDER[2]],
ANGLEUNIT[”degree", 0.0174532925199433]]
WKT書式は、地理座標参照系だけでなく、地心座標系、投影座標系、鉛直座標系、時間的に変化する座標系, そして工学的座標系(例えば、ボートに取り付けられた座標参照系)を記述することができる。標準では、これらの座標参照系をどのように組み合わせるかについても記述している。 後方互換性WKT2で表された座標参照系を読み込むことができるソフトウェアは, 多くの場合(全てとは限らないが), WKT1で表された同様の地理座標系を読み込むことができる[2]
Some caveats exist, notably the removal of the 変換WKT形式は異なる空間参照システム間の座標変換に使用する変換手法及びパラメータの記述を明示している。 下記に変換記述例を示す。 PARAM_MT["Mercator_2SP",
PARAMETER["semi_major",6370997.0],
PARAMETER["semi_minor",6370997.0],
PARAMETER["central_meridian",180.0],
PARAMETER["false_easting",-500000.0],
PARAMETER["false_northing",-1000000.0],
PARAMETER["standard parallel 1",60.0]]
PARAM_MT["Affine",
PARAMETER["num_row",3],
PARAMETER["num_col",3],
PARAMETER["elt_0_1",1],
PARAMETER["elt_0_2",2],
PARAMETER["elt 1 2",3]]
サポート提供RDBMSエンジン
サポート提供API
関連項目脚注
外部リンク
|