幾何学のよく知られたテキスト表現

ウェルノウンテキストWKT )は、ベクタージオメトリオブジェクトを表すためのテキストマークアップ言語です。ウェルノウンバイナリWKB )と呼ばれるバイナリ形式は、同じ情報を、コンピュータ処理に便利なよりコンパクトな形式で転送・保存するために使用されますが、人間には判読できません。この形式は、もともとOpen Geospatial Consortium (OGC)によって定義され、 Simple Feature Accessで説明されていました[1] 現在の標準定義はISO/IEC 13249-3:2016規格です。[2]

幾何学的オブジェクト

WKT は次の異なる幾何学的オブジェクトを表すことができます。

ジオメトリの座標は、2D ( x , y )、3D ( x , y , z )、4D ( x , y , z , m ) (線形参照システムの一部であるm値を含む) 、または2D x , y , m )のいずれかです。3次元ジオメトリはジオメトリタイプの後に「Z」が付き、線形参照システムを持つジオメトリはジオメトリタイプの後に「M」が付きます。座標を含まない空のジオメトリは、タイプ名の後に記号を使用して指定できます。EMPTY

WKTジオメトリはOGC仕様全体で使用されており、これらの仕様を実装したアプリケーションにも存在します。例えば、PostGISには、ジオメトリをWKT表現に変換したり、WKT表現を人間が読める形式に変換したりする関数が含まれています。

OGC標準の定義では、ポリゴンは位相的に閉じている必要があります。また、ポリゴンの外側の線状リングが反時計回りに定義されている場合、その線状リングは「上」から見たものと見なされます。内側の線状リングは、外側のリングとは逆の方向、つまり時計回りに定義する必要があります。[3]

ジオメトリプリミティブ(2D)
タイプ
ポイントPOINT (30 10)
ラインストリングLINESTRING (30 10, 10 30, 40 40)
ポリゴンPOLYGON ((30 10, 40 40, 20 40, 10 20, 30 10))
POLYGON ((35 10, 45 45, 15 40, 10 20, 35 10),
(20 30, 35 35, 30 20, 20 30))
マルチパートジオメトリ(2D)
タイプ
マルチポイントMULTIPOINT ((10 40), (40 30), (20 20), (30 10))
MULTIPOINT (10 40, 40 30, 20 20, 30 10)
マルチラインストリングMULTILINESTRING ((10 10, 20 20, 10 40),
(40 40, 30 30, 40 20, 30 10))
マルチポリゴンMULTIPOLYGON (((30 20, 45 40, 10 40, 30 20)),
((15 5, 40 10, 10 20, 5 10, 15 5)))
MULTIPOLYGON (((40 40, 20 45, 45 30, 40 40)),
((20 35, 10 30, 10 10, 30 5, 45 20, 20 35),
(30 20, 20 15, 20 25, 30 20)))
ジオメトリコレクションGEOMETRYCOLLECTION (POINT (40 10),
LINESTRING (10 10, 20 20, 10 40),
POLYGON ((40 40, 20 45, 45 30, 40 40)))

以下に、ジオメトリ WKT 文字列のその他の例をいくつか示します (注: 以下の各項目は個別のジオメトリです)。

ジオメトリコレクション(点(4 6),線列(4 6,7 10))ポイントZM(1 1 5 60)ポイントM(1 1 80)ポイント・エンプティマルチポリゴンが空三角形((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)))多面体表面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))

よく知られているバイナリ

既知のバイナリ (WKB) 表現は通常、16 進文字列で表示されます。

最初のバイトはデータのバイト順序を示します。

  • 0x00 : ビッグエンディアン
  • 0x01 : リトルエンディアン

次の 4 バイトは、以下に示すように、ジオメトリ タイプの32 ビットの符号なし整数です。

ジオメトリタイプとWKB整数コード(以下10進数で指定)
タイプ2DZMZM
幾何学0100020003000
ポイント1100120013001
ラインストリング2100220023002
ポリゴン3100320033003
マルチポイント4100420043004
マルチラインストリング5100520053005
マルチポリゴン6100620063006
ジオメトリコレクション7100720073007
円形文字列8100820083008
複合曲線9100920093009
曲線ポリゴン10101020103010
マルチカーブ11101120113011
マルチサーフェス12101220123012
曲線13101320133013
表面14101420143014
多面体表面15101520153015
16101620163016
三角形17101720173017
18101820183018
測地線文字列19101920193019
楕円曲線20102020203020
NurbsCurve21102120213021
クロソイド22102220223022
スパイラルカーブ23102320233023
複合表面24102420243024
ブレップソリッド1025
アフィン配置1021102

各データ型には、ポイントの数や線形リングの数などの固有のデータ構造があり、それに続いて64 ビットの倍精度数値の座標が続きます。

たとえば、ジオメトリPOINT(2.0 4.0)は次のように表されます: 、ここで:000000000140000000000000004010000000000000

  • 1バイト整数00または0: ビッグエンディアン
  • 4バイト整数00000001または1: POINT (2D)
  • 8バイト浮動小数点4000000000000000数または2.0: x座標
  • 8バイト浮動小数点4010000000000000数または4.0: y座標

フォーマットのバリエーション

EWKTEWKB拡張 Well-Known Text/Binary
PostGIS固有のフォーマットで、空間参照系識別子(SRID)と最大4つの座標値(XYZM)が含まれます[ 4 ] [5]例えば、WGS 84参照座標系を用いて経度/緯度座標を特定できます。また、元のWKT内で名前が付けられている(ただし完全には定義されていない)要素であるCircularString、CompoundCurve、CurvePolygon、CompoundSurfaceもサポートしています。[6]SRID=4326;POINT(-44.3 60.1)
AGF テキストオートデスクジオメトリ フォーマット
OGCの標準(当時)を拡張したもので、曲線要素を含めることができます。特にMapGuideでよく使用されています。[7]

参照

参考文献

  1. ^ Herring, John R.編 (2011-05-28)、OpenGIS®実装標準地理情報 – シンプルフィーチャアクセス – パート1:共通アーキテクチャ、Open Geospatial Consortium 2019年1月28日取得
  2. ^ 情報技術 – データベース言語 – SQL マルチメディアおよびアプリケーションパッケージ – パート3: 空間(第5版)、ISO、2016年1月15日、2019年1月28日取得
  3. ^ 地理情報については、OGC実装仕様書「シンプルフィーチャアクセス」のセクション6.1.11.1を参照してください。http://www.opengeospatial.org/standards/sfa
  4. ^ “Postgis/Postgis”. GitHub . 2021年10月6日.
  5. ^ “ST_GeomFromEWKT” . 2022年11月25日閲覧。
  6. ^ 「第4章 PostGISの使用:データ管理とクエリ」. postgis.net . 2021年7月30日閲覧
  7. ^ 「MapGuide APIリファレンス: AGFテキスト」 。 2023年9月14日閲覧
  • シンプルな機能アクセス仕様
  • ISO 空間標準(有料)
  • WKTのBNF表記(2023年1月3日、Wayback Machineにアーカイブ)
  • WKTのEBNF表記
  • ジオメトリオブジェクト表現間のオンライン変換 2019年4月26日アーカイブ、Wayback Machine
「https://en.wikipedia.org/w/index.php?title=Well-known_text_representation_of_geometry&oldid=1306886176」より取得