Komentáře k článku
GIS, PHP a SQL Server 2008

Geografické informační systémy (GIS) nabývají na stále větší důležitosti. Základem jsou, kromě dat, specializované databáze, které si poradí s úlohami typu „Najdi obce, které jsou do vzdálenosti 1 km od dálnice D1″. S tím pak samozřejmě souvisí vizualizace dat na mapách. Ukážeme si, jak vytvořit jednoduchou GIS aplikaci.
PostGIS
Ve světě GIS je „de-facto“ standardem PostGIS. Je to OpenSource nadstavba databáze PostgreSQL. Tu si může každý stáhnout a nainstalovat zadarmo a bez omezení, stejně jako PostGIS. Není snad ve světe FOSS4G (Free and Open Source Software for Geoinformatics) produkt, který neuměl s PostGISem pracovat. Existují převodní filtry (součástí distribuce) mezi PostGIS a ESRI Shapefile a OpenStreetMap. Pro vyhledávání nejvýhodnější cesty se doporučuje PgRouting a další a další nadstavby. PostGIS je certifikován na podporu OGC Simple Features Specification for SQL. Tolik velmi z rychlíku.
4326 je kód souřadného systému WGS84, jak jej definuje EPSG. Není to proto jen tak ledasjaký kód, ale EPSG:4326. (Pokud si myslíte, že je to nepodstatný detail, nepište články o GIS).
Otázka za 100 bodů: Jaký EPSG (nebo jiný) kód byste použil ve funkci STGeomFromText pro v ČR používaný souř. systém S-JTSK? A podporuje ho MS SQL 2008? Protože když chcete psát aplikace, mající co do činění např. s katastrem nemovitostí, je převod WGS84<->S-JTSK dosti zásadní.
Komu PostgreSQL nestačí (do PostGIS se ale toho vejde opravdu hodně), tak používá Oracle Spatial
Jinak si myslím, že článek patří spíš do kategorie PR.
Re: PostGIS
O tom, že kód 4326 je určen pro WGS84, včetně odkazu na vysvětlení, se dočtete přímo v článku. Windows Server 2008 podporuje 390 systémů definovaných v EPSG. Jejich přehled najdete v systémovém pohledu sys.spatial_reference_systems. Kód Jednotné trigonometrické sítě katrastrální je 4156. Co dostanu za 100 bodů?
Re: PostGIS
Nic, protože jste neuhád'. Kód 4156 má projekci Lat/Long a Besselův elipsoid. Takže výsledek jsou stupně/minuty/vteřiny, ale S-JTSK je metrický systém, používající tzv. Křovákovo zobrazení. Data v KN (a vůbec všechno, co měří, a není to v „souřadnicích GPS“ – příšerný 'termín') používají přece metry (stopy, atd. podle místních zvyklostí), ale ne stupně. Ostatně, co vrátí funkce ST_Length(geometry), kde geometry je nějaká linie v EPSG:4156? Metry?
-- vybere nejdelsi dalnici v CR z aktualni OSM. -- Geometrie je ulozena ve sloupecku way v EPSG:4326, musi byt pred tim pretranformovana do 4156 -- PostGIS select sum(length(ST_Transform(way,4156))) as len,name,ref FROM cr_osm_line WHERE highway is not NULL and ref is not null group by name,ref order by len desc limit 1; len | name | ref ------------------+------+----- 6.09415397247231 | | D1je ve stupnich
-- prevod do epsg:102067 select sum(length(ST_Transform(way,102067))) as len,name,ref FROM cr_osm_line WHERE highway is not NULL and ref is not null group by name,ref order by len desc limit 1; len | name | ref -----------------+------+----- 488855.79704467 | | D1Je v metrech – tam i zpatky.
Cimz si odpovidam na puvodni otakzu: To byl chytak, S-JTSK nema EPSG kód (resp. žádný použitelný) a obecně se používá ESRI:102067 (v praxi častěji EPSG:102067).
No, ale aby nic nebylo tak jednoduché – definice pro 102067 se musí do všech databází/GISů a pod. doplnit ručně, protože takový kód vlastně neexistuje. Ale ukazovat příklad nad WSG84 mi opravdu nepřijde jako vhodné. GIS nejsou jenom GPSky.
Re: PostGIS
Křovákovo zobrazení má již dávno svůj oficiální EPSG kód: 2065. Problém je v tom, že svislá osa je X a je orientována shora dolů (je tedy levotočivá). Protože větišna GIS software s takouvouto soustavou neumí pracovat (kdysi kromě sw TopoL, dnes nevím, jaký je aktuální stav), používají se souřadnice prohozené a záporně označené (tzv. ve 3. kvadrantu). Protože je to berlička a ne oficiální projekce, není ani v oficiální databázi EPSG. Třeba v budoucnu…?
Použití zeměpisných souřadnic WGS84 pro tento typ aplikací mi připadá naprosto adekvátní, protože různé mapové API umějí právě s těmito souřadnicemi pracovat, jednak použití Křovákova zobrazení končí za hranicemi naší vlasti…
RE: GIS, PHP a SQL Server 2008
Zase ty Micro$osfti nesmysly? Podporu GIS má už i mysql, tak nechápu, co tady prudíte, jdete si na nejaky server pro klikajici blbecky! (navíc je to samý nesmyslný obrázky…)
RE: GIS, PHP a SQL Server 2008
MS SQL vs PostGIS vs MySQL
http://www.bostongis.com/PrinterFriendly.aspx?content_name=sqlserver2008_postgis_mysql_compare
RE: GIS, PHP a SQL Server 2008
Jediný, kdo je tady blbeček, jste vy. Když se vám nelíbí články týkající se technologií jistých firem, tak je prostě nečtěte a nemusíte svůj názor všem vnucovat, nikdo na to není zvědavý. Co takhle místo nadávání napsat vlastní článek o GIS v MySQL, jenomže toho byste asi nebyl schopen soudě podle vašeho projevu.
RE: GIS, PHP a SQL Server 2008
Tohle ale není článek o GIS v MS SQL. To je o ničem ;-)
omg
Několik dobře míněných rad pro vytváření databází
Na co se často zapomíná u popisu jak vytvořit databázi, je, jak ji navrhnout. Nečiním si nárok zde popsat teorii relačních databází, ale spíše se jedná o dobře míněné rady, které jsou často ignorovány
mám taky dobře míněný rady
nejdřív jenom pro autora článku:
pro ostatní:
Mapa je o 90 stupňů otočena
Z přiložených zdrojů jsem si vyrobil SQL tabulky a ty jsem chtěl využít v reportu (reporting services). ČR je však o 90 st. otočena. Netušíte, jak to spravit?
Děkuji