WKT

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. augusztus 27-én felülvizsgált verziótól ; az ellenőrzések 6 szerkesztést igényelnek .
WKT
Kiterjesztés ..wkt
MIME típusú jelentkezés/hét
Formátum típusa GIS fájlformátum
nyílt formátum ? Igen
WKB
Kiterjesztés ..wkb
Formátum típusa GIS fájlformátum
nyílt formátum ? Igen

A WKT ( jól ismert szöveg ) egy szövegformátum vektorgeometria ábrázolására és koordinátarendszerek leírására. Ugyanennek az információnak az adatbázisokban való tárolására a WKB ( Well-Known Binary ) bináris ekvivalens formátumot használják. A formátumok a „ Simple Feature Access ” technológia részét képezik, amelynek célja, hogy közös felületet biztosítson a különböző programok és szolgáltatások közötti térbeli adatok cseréjéhez.

Történelem

A formátumokat eredetileg az Open Geospatial Consortium (OGC) határozta meg az OGC 99-049-ben [1] . A jelenlegi változat az OGC 06-103r3, az új változat tervezete pedig az OGC 06-104r3.

Jól ismert szöveg

Geometria

A WKT a következő geometriai objektumokat ábrázolhatja:

A geometria koordinátái lehetnek 2D ( x , y ), 3D ( x , y , z ), 4D ( x , y , z , m ) az m értékkel , amely a lineáris hivatkozási rendszer része , vagy 2D a érték m ( x , y , m ). A koordinátákat nem tartalmazó üres geometriák EMPTYa típusnév után egy szimbólummal adhatók meg.

A WKT-t minden OGC specifikációban használják, és az ezeket a specifikációkat megvalósító alkalmazások támogatják. Például a PostGIS olyan függvényeket tartalmaz, amelyek képesek átalakítani a geometriát WKT-reprezentációra, illetve WKT-reprezentációra, így azok ember által olvashatóvá válnak.

Hasznos megjegyezni, hogy az OGC szabvány definíciója megköveteli, hogy a sokszög zárt topológiával rendelkezzen. Azt is mondja, hogy ha a LineRing a sokszög nézetben az óramutató járásával ellentétes irányban van meghatározva, akkor az külső lesz. Minden belső (lyuk) vonalgyűrűt a külső gyűrűvel ellentétes módon kell meghatározni, ebben az esetben az óramutató járásával megegyező irányban. [2]


Primitív típusok (2D)
Típusú Példák
pont POINT (30 10)
VonalString LINESTRING (30 10, 10 30, 40 40)
Poligon 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))
Több típus (2D)
Típusú Példák
MultiPoint MULTIPOINT ((10 40), (40 30), (20 20), (30 10))
MULTIPOINT (10 40, 40 30, 20 20, 30 10)
MultiLineString MULTILINESTRING ((10 10, 20 20, 10 40),
(40 40, 30 30, 40 20, 30 10))
többsokszögű 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)))

Az alábbiakban néhány további példa a WKT karakterláncokra: (Megjegyzés: Minden alábbi elem külön geometriát képvisel.)

GEOMETRIA GYŰJTEMÉNY (PONT (4 6), VONALSZOROZAT (4 6, 7 10)) PONT ZM (1 1 5 60) M PONT (1 1 80) PONT ÜRES MULTIPOLYGON ÜRES KÖRSZÁR(1 5, 6 2, 7 3) ÖSSZETETT GÖRBE(KÖRSZÁR(0 0,1 1,1 0),(1 0,0 1)) GÖRBESZÖG (KÖRHÚZ(-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)) MULTIKURVE((5 5,3 5,3 3,0 3),KÖRSZÁR(0 0,2 1,2 2)) HÁROMSZÖG((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))) POLYÉDERFELÜLET Z ( FOLTOK ((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)) )

Koordinátarendszerek

A WKT le tudja írni a koordinátarendszereket . Ezt a WKT-formátumot eredetileg az OGC határozta meg 1999-ben, majd 2001-ben kibővítette. Ezt a formátumot néha "WKT 1"-nek is nevezik. A koordinátarendszer-modell fejlődésével és a különböző szoftverekben történő megvalósítás inkompatibilitásával a formátum átdolgozásra került. Az OGC 2015-ben elfogadott egy frissített szabványt, a „koordináta-referenciarendszerek jól ismert szöveges ábrázolását”, amelyet néha „WKT 2-nek” is neveznek. Ezt a szabványt a Nemzetközi Szabványügyi Szervezet közösen tette közzé ISO 19162:2015 néven.

Az alábbi példában a WKT egy kétdimenziós földrajzi koordináta-rendszert ír le a szélességi tengelytől indulva, amelyen túl a hosszúsági tengelyt írja le. Ez a WGS84 földi koordinátarendszer:

GEODCRS["WGS 84", DATUM["Geodéziai Világrendszer 1984", ELLIPSOID["WGS 84", 6378137, 298.257223563, LENGTHUNIT["méter", 1]]], CS [ellipszoid, 2], AXIS["Szélesség (lat)", észak, ORDER[1]], AXIS["Longitude (lon)", kelet, ORDER[2]], ANGLEUNIT["fok", 0,0174532925199433]]

A WKT formátum nemcsak földrajzi koordinátarendszereket írhat le, hanem geocentrikus, tervezési, vertikális, időbeli és mérnöki koordinátarendszereket is (például egy hajóhoz kötött koordinátarendszert). A szabvány leírja, hogyan kell kombinálni ezeket a koordinátarendszereket.

jól ismert bináris

A WKB ( jól ismert bináris ) a WKT formátum bináris megjelenítése hexadecimális karakterláncokban.

Az első bájt az adatok bájtsorrendjét határozza meg:

  • 00 : big endian - (közvetlen) sorrend a legmagasabbtól a legalacsonyabbig
  • 01 : little endian - (fordított) sorrend a legfiatalabbtól a legidősebbig

A következő 4 bájt egy 32 bites előjel nélküli egész szám , amely a geometria típusát jelzi:

Geometria típusok és WKB kódok
típus 2D Z M ZM
geometria 0000 1000 2000 3000
pont 0001 1001 2001 3001
VonalString 0002 1002 2002 3002
Poligon 0003 1003 2003 3003
MultiPoint 0004 1004 2004 3004
MultiLineString 0005 1005 2005 3005
többsokszögű 0006 1006 2006 3006
GeometryCollection 0007 1007 2007 3007
CircularString 0008 1008 2008 3008
Összetett görbe 0009 1009 2009 3009
GörbePolygon 0010 1010 2010 3010
MultiCurve 0011 1011 2011 3011
Multisurface 0012 1012 2012 3012
ív 0013 1013 2013 3013
felület 0014 1014 2014 3014
Poliéderfelület 0015 1015 2015 3015
ÓN 0016 1016 2016 3016
háromszög 0017 1017 2017 3017
Kör 0018 1018 2018 3018
GeodesicString 0019 1019 2019 3019
Elliptikus görbe 0020 1020 2020 3020
NurbsCurve 0021 1021 2021 3021
Clothoid 0022 1022 2022 3022
Spirálgörbe 0023 1023 2023 3023
Összetett felület 0024 1024 2024 3024
BrepSolid 1025
Affin elhelyezés 102 1102

Minden adattípusnak egyedi adatszerkezete van, például több pont vagy szintvonal, amelyet koordináták követnek 64 bites double formátumban .

Például a geometriát POINT(2.0 4.0)a következőképpen ábrázoljuk: , ahol: 000000000140000000000000004010000000000000

  • 1 bájtos egész szám 00vagy 0: big endian
  • 4 bájtos egész szám 00000001vagy 1: PONT (2D)
  • 8 bájtos float 4000000000000000vagy 2.0: x - koordináta
  • 8 bájtos float 4010000000000000vagy 4.0: y - koordináta

Formátumbeállítások

EWKT és EWKB – kiterjesztett jól ismert szöveg/bináris

PostGIS- specifikus formátum , kiterjesztve egy térbeli koordinátarendszer-azonosítóval (SRID) és legfeljebb 4 ordinátaértékkel (XYZM) [3] [4] . Például: SRID=4326;POINT(-44.3 60.1)a hosszúsági/szélességi fokot írja le a WGS 84 koordinátarendszerben .

AGF szöveg – Autodesk Geometry Format

Az (akkor releváns) OGC szabvány kiterjesztése a görbékre. Leginkább a MapGuide -ban használják . [5]

Adatbázis támogatás

  • PostgreSQL PostGIS 2.0 modullal
  • Oracle Spatial 9i, 10g, 11g
  • OmniSci a 4.0-s verzió óta
  • MySQL a 4.1-es verzió óta [6]
  • MariaDB , minden verzió
  • Neo4j [7]
  • IBM DB2 LUW 9, 10 Spatial Extenderrel
  • IBM DB2 for z/OS 9, 10 Spatial Extenderrel
  • IBM Netezza Netezza kiterjesztéssel
  • IBM Informix 9,10,11 térbeli adatbázis modullal
  • Microsoft SQL Server 2008 R2, 2012, 2014, 2016
  • SpatiaLite
  • Teradata 6.1, 6.2, 12, 13 (a 13-as verzióba beépítve, a korábbi verziókban beépülő modulon keresztül)
  • Ingres GeoSpatial
  • Altibase 5.x
  • SQL bárhol 12

Támogató API-k

Jegyzetek

  1. Egyszerű funkciók elérése – 2. rész . Letöltve: 2019. január 24. Az eredetiből archiválva : 2019. január 24.
  2. Lásd az OGC megvalósítási specifikációit a földrajzi információkhoz – Egyszerű szolgáltatások elérése, 6.1.11.1. http://www.opengeospatial.org/standards/sfa Archivált 2017. január 29-én a Wayback Machine -nél
  3. postgis/ZMSgeoms.txt, 2.1.0 postgis/postgis GitHub . Letöltve: 2019. február 4. Az eredetiből archiválva : 2021. február 24.
  4. ST_GeomFromEWKT . Letöltve: 2019. február 4. Az eredetiből archiválva : 2021. február 24.
  5. Archivált másolat (a hivatkozás nem elérhető) . Letöltve: 2019. február 4. Az eredetiből archiválva : 2017. november 12. 
  6. Jól ismert szöveg (WKT) formátum archiválva 2019. január 25-én a Wayback Machine -nél , MySQL-dokumentáció
  7. Neo4j Spatial . Letöltve: 2019. január 24. Az eredetiből archiválva : 2019. január 30.