Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: Queryable WMS / Custom WMS

Czy ktoś Was miał może przyjemność napisać własną implementację wms (wykorzystując jakikolwiek silnik gis) - interfejs, który zwracałby dane zależnie od tego jakie parametry zawiera query string (dodatkowe względem minimum)?

Nie do końca chodzi mi o zwyczjny Queryable WMS, który zwraca info o wskazanym obiekcie, ale raczej o rozszerzenie standardu o kafelki wyświetlające dane na podstawie query string. Coś w stylu select what where.

Wszelkie uwagi odnośnie implmentacji czegoś takiego mile widziane :-)
Piotr T.

Piotr T. programista GIS,
analityk GIS,
(www.cgis.pl)

Temat: Queryable WMS / Custom WMS

Dominik Mikiewicz:
Czy ktoś Was miał może przyjemność napisać własną implementację wms (wykorzystując jakikolwiek silnik gis) - interfejs, który zwracałby dane zależnie od tego jakie parametry zawiera query string (dodatkowe względem minimum)?

Nie do końca chodzi mi o zwyczjny Queryable WMS, który zwraca info o wskazanym obiekcie, ale raczej o rozszerzenie standardu o kafelki wyświetlające dane na podstawie query string. Coś w stylu select what where.

Mógłbyś podać na przykładzie (teoretycznym oczywiście) jak to ma działać bo nie do końca rozumiem? I co rozumiesz pod określeniem "kafelek"?Piotr Tracz edytował(a) ten post dnia 02.04.09 o godzinie 17:27
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: Queryable WMS / Custom WMS

tile = kafelek...? Tak bym to przynajmniej przetłumaczył.
A przykład teoretyczny to np.
AdresWms?StandardRequestString&ExtraRequestString

To extra request string to np &CountryCode=PL

Zdaję sobie, że to 'małe' naciąganie specyfikacji wms, ale jakoś tak mi się wymysliło, że fajnie by było mieć coś ala wms, co zwraca dane według zapytania.
Tak na prawdę, to wcale nie musi być wms jako taki, może to być oddzielna aplikacja, która bedzie reagowała na wms request string, bez konieczności zwracania kodów błędów, xmla z capabilities, etc.

Właściwie chyba sam sobie odpowiedziałem na pytanie, bo napisanie serwisu /aplikacji łebowej, który zwróci tiles/kafelki o określonym rozmiarze i bbox, to małe piwko. Tak mi się tylko uwidziało, żeby to coś miało standardowy interfejs wms + nieco ukytych, nie przewidzianych w specyfikacji ogc 'zdolności'.

Myślę, że na dniach powinno mi się udać sklecić działający przykład, to pedeślę linka. W sumie, jeżeli coś takiego zwróci instrukcję ze swoim api, to nie musi spełniać kryteriów OGC.

A całość, uprzedzając pytanie, miałaby umożliwić wyświetlenie w np. OpenLayers, albo GoogleMaps czegoś takiego: SELECT * FROM [Panstwa] WHERE [Panstwa].[PKB] / [Panstwa].[Populacja] > 5000
Piotr T.

Piotr T. programista GIS,
analityk GIS,
(www.cgis.pl)

Temat: Queryable WMS / Custom WMS

Nie piszesz w czym to chcesz realizować ale na super szybko :) :

UM MapServer ma mozliwość zapytań po URL:
http://mapserver.org/cgi/controls.html

Ostatnio nawet przetoczył się wątek:
http://www.mail-archive.com/mapserver-users@lists.osge...
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: Queryable WMS / Custom WMS

No dobra, działający przykład tutaj:

http://forest.miiz.waw.pl/gis/imsapps/testwms/wms.aspx...

Podmiana CustomParam na coś innego, typu US, UK, MX skutkuje wyświetleniem wybranego kraju.

Duża ilość jednoczesnych zapytań z innymi parametrami najpewniej przymuli serwer, więc przypuszczam, że żeby to się sprawdzało, należałoby statyczne warstwy wypuścić przez np. tilecache (i nie wykluczone, że z oddzielnego sewera / adresu), a zapytania o konkretne kafelki (tiles) kierować z odpowiednim url do 'rozszerzonego' wmsa.
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: Queryable WMS / Custom WMS

I prosty przykład wykorzystania takiego czegoś: http://forest.miiz.waw.pl/gis/imsapps/testwms/

Jeszcze kwoli wyjasnienia... GoogleMaps/Earth/OpenLayers bardzo fajnie się spisują w roli (w)łebowych 'silników' do wizualizacji map. Często jednak problemem jest 'nakarmienie' ich danymi, które renderowane są dynamicznie. O ile wysyłając małe porcje danych (http://forest.miiz.waw.pl/gis/imsapps/ge/) w postaci kml, wfs, czy czegokolwiek, co silnik mapowy sobie sparsuje (i wyciagnie z tego dane i przemieli do swojego własnego wektora, czy kml) jest względnie proste, to gdy zapytanie zwraca duuużo obiektów, zdecydowanie sensowniej jest zwrócić je w celu wizualizacji jako raster, a jako wektor kiedy jest ich mniej.
Ponadto zwracanie danych w postaci rastra jest o tyle zasadne, że żaden robaczek nie zassa sobie wektora automatycznie ;-)



Wyślij zaproszenie do