do nawigacji

Po Seminarium Geomatyki… 30-05-2009

Autor: Grzegorz Olejarz. Kategorie: Geomatyka , 0 komentarzy

Problematyka infrastruktury informacji przestrzennej na II Seminarium Koła Naukowego Grafiki Komputerowej i Geomatyki pt. „Graficzne spotkania z geomatyką”.

Artykuł na Geoforum.pl
Artykuł na KNGK

W czwartek 26 marca 2009r. na Wydziale Geodezji Górniczej i Inżynierii Środowiska AGH w Krakowie odbyło się II Seminarium Naukowe pod tytułem „Graficzne spotkania z geomatyką cz.1” zorganizowane przez studentów Koła Naukowego Grafiki Komputerowej i Geomatyki. Seminarium prowadził Wiceprezes KNGK Grzegorz Olejarz.

Pomysł zorganizowania Seminarium o takiej tematyce zrodził się wśród studentów, którzy wzięli udział w przeprowadzonych także na Wydziale Warsztatach eSDI-Net+ – etap kwalifikacji serwisów SDI do ogólnoeuropejskiego konkursu The SDI Best Practices Award 2009.
Warto nadmienić, że w bieżącym roku akademickim Koło zmodyfikowało nazwę. Powodem tego jest coraz większa synergia rozwiązań SDI z technikami Grafiki Komputerowej.

Na Seminarium studenci zaprezentowali 5 referatów poruszających tematykę z dziedziny geomatyki.
Jako pierwszy wystąpił Michał Szmiga. Skupił się on na wyjaśnieniu podstawowych pojęć z zakresu infrastruktury danych przestrzennych. Starał się przybliżyć przybyłym na Seminarium znaczenia terminów takich jak geomatyka czy SDI. Jego referat wprowadził uczestników w świat języka geomatyki. Na praktycznych przykładach próbował pokazać zastosowanie geomatyki tak, aby stała się ona bardziej przystępna i zrozumiała.
Po tym referacie zgromadzeni na seminarium mogli zapoznać się ze Standardami OGC (Open Geospatial Consortium). Temat ten przedstawił Grzegorz Olejarz. Podczas swojego wystąpienia zdefiniował pojęcie Standardów OGC, wymienił jakie standardy się do nich zaliczają i wyjaśnił pokrótce każdy z nich. Przybliżył między innymi istotę języka znacznikowego GML, techniczne aspekty Web Map Service wraz z zastosowaniem stylizacji Styled Layer Descriptor. Ponadto opisał powiązania standardów OGC z normami ISO oraz dyrektywą INSPIRE.
Po jego referacie przyszedł czas na podjęcie tematu związanego z dyrektywą INSPIRE, a zwłaszcza kwestii aktualnej obecnie transpozycji INSPIRE do prawa polskiego. Referowaniem projektu ustawy o Infrastrukturze Informacji Przestrzennej zajęła się Ewelina Hnat. Poruszyła problem pojęcia Infrastruktury Informacji Przestrzennej w kontekście dyrektywy INSPIRE. Zwróciła uwagę na istotne nowości, które wniesie ustawa, jakie są jej cele i co zmieni w dotychczasowych aktach prawnych (szczególnie w Prawie Geodezyjnym i Kartograficznym).
Po dawce terminologii prawniczej w następnym referacie „Web Map Service przykłady zastosowań w geodezji” Małgorzaty Marszalik, powrócono do standardów OGC. W swoim referacie starała się ona odpowiedzieć na pytania: Co to jest WMS? Jaka jest istota i funkcje serwisu WMS? Przedstawiła korzyści jego stosowania, zwróciła też uwagę na ograniczenia tej usługi. W prezentacji pokazała przykłady portali korzystających z WMS, programy obsługujące standard oraz jego zastosowanie.
Na koniec Agnieszka Igielska zmierzyła się z tematem matadanych. Próbowała znaleźć odpowiedzi na pytania: Czym są metadane? Jakie mają funkcje? Do czego są potrzebne? Co powinny zawierać prawidłowo stworzone metadane? Zagłębiła się w podstawę prawną metadanych, bowiem przybliżyła normę ISO oraz specyfikację techniczną, które zapewniają zgodność metadanych z ogólnie przyjętym światowym standardem. Na koniec poruszyła kwestię edycji i aktualizacji zbiorów metadanych w ODGIK- ach.

Po wystąpieniach prelegentów głos zabrał goszczący na Seminarium dr hab. inż. Krystian Pyka, prof. AGH. W kilku słowach uzupełnił on tematykę poruszaną w referatach, poruszył kwestie dostosowania polskiego prawa do dyrektywy INSPIRE, omówił nadchodzące sympozjum „Krakowskie Spotkania z INSPIRE” na które zaprosił studentów koła oraz pogratulował autorom prezentacji referatów.
Na zakończenie spotkania opiekun koła naukowego dr inż. Artur Krawczyk odniósł się do prezentowanych referatów, uzupełnił nieujęte w nich kwestie oraz krótko skomentował problem wyszukiwania metadanych. Następnie podziękował za wystąpienia, a prowadzący Grzegorz Olejarz zachęcił do udziału w następnej części Seminarium.


Ewelina Hnat
Grzegorz Olejarz

II seminarium naukowe KNGK „Graficzne spotkania z geomatyką cz. 1” 24-03-2009

Autor: Grzegorz Olejarz. Kategorie: Geomatyka , 0 komentarzy

Więcej informacji:
www.olejarz.net/geomatyka
Koło Naukowe Grafiki Komputerowej i Geomatyki
plakat-v2_s

Prezentacja pt. „Nowoczesne strony i aplikacje internetowe” 14-01-2009

Autor: Grzegorz Olejarz. Kategorie: Tworzenie stron www , 0 komentarzy

Na spotkaniu Koła Naukowego Grafiki Komputerowej i Geomatyki przedstawiłem krótki referat o tworzeniu stron internetowych w oparciu o wzorzec MVC i frameworki PHP.

nowoczesne-strony-i-aplikacje-internetowe

49. Sesja kół naukowych AGH – Symbolizacja treści kartograficznych 14-12-2008

Autor: Grzegorz Olejarz. Kategorie: Geomatyka , 0 komentarzy

Na 49. Sesji Studenckich Kół Naukowych AGH, która odbyła się 11 grudnia 2008 roku zaprezentowałem referat pt. „Symbolizacja treści kartograficznych w środowisku języków znacznikowych”.

Streszczenie:

Celem niniejszego referatu jest zbadanie możliwości zastosowana standardu Styled Layer Descriptor (SLD) opracowanego przez OGC (Open Geospatial Consortium) do resymboliazacji treści danych kartograficznych zgodnych z polskimi normami. Resymbolizacja SLD jest fragmentem serii norm OGC, które stają się coraz bardziej rozpowszechnionym standardem wykorzystującym język znacznikowy do przetwarzania danych geograficznych. W ramach realizacji tematu przebadano istniejące w Internecie oprogramowanie open suorce, które wykorzystuje technologię SLD. Następnie oprogramowanie to zostało sprawdzone pod kątem możliwości SLD do symbolizacji treści kartograficznych polskich map.

Prezentacja (pdf):

Multicheckboxy zamiast multiselectorów w CakePHP 1.2RC2 13-09-2008

Autor: Grzegorz Olejarz. Kategorie: CakePHP , 0 komentarzy

Mając zaprojektowaną bazę danych i zdefiniowaną relację wiele-do-wielu, skrypt „bake” generuje kod strony. Relacja wiele-do-wielu przedstawiona jest jako lista „multiselect” – lista wielokrotnego wyboru. Lista ta jest o tyle niewygodna, że chcąc wybrać kilka opcji, trzeba robić to z wciśniętym przyciskiem ctrl. Jeden nieuważny ruch, przypadkowe kliknięcie i cały proces wyboru trzeba powtarzać od nowa.

Można usunąć tą niedogodność zamieniając listę wielokrotnego wyboru na listę checkboxów:

W widoku dodajemy tablicę atrybutów:

echo $form->input('Post.Tag', array('type'=>'select', 
                                    'multiple'=>'checkbox', 
                                    'options'=>$tags, 
                                    'label'=>'Tagi:'
                                                    ));

Można zmienić jeszcze kontroler, aby generował listę tagów, gdzie wartością jest nazwa tagu, kluczem natomiast jest Tag.id – identyfikator w bazie danych. Lista taka służy do tego, aby w widoku były nazwy przy checkboxach, a nie identyfikatory:

$tags = $this->Post->Tag->find('list', array('fields'=>'Tag.name'));
$this->set(compact('tags'));

CakePHP 1.2 RC2, brak mod_rewrite i serwery AGH 05-09-2008

Autor: Grzegorz Olejarz. Kategorie: CakePHP , 0 komentarzy

Brak modułu przepisującego adresy mod_rewrite w przypadku CakePHP objawia się między innymi brakiem „ładnych” adresów. Tyle przynajmniej wyczytałem w manualu Cake’a (link). Niestety brak wspomnianego modułu apache skutkuje jeszcze błędnym działaniem HtmlHelpera, a konkretniej metody HtmlHelper->link. Po długich poszukiwaniach udało mi się znaleźć rozwiązanie, które wydaje się być skuteczne na serwerze AGH.

Krótki tutorial:

  1. Usuwamy pliki .htaccess z 3 katalogów:
    • /.htaccess (katalog główny aplikacji)
    • /app/.htaccess
    • /app/webroot/.htaccess
  2. Edytujemy plik /app/config/core.php i wyłączamy komentarz linijki:
    Configure::write(’App.baseUrl’, env(’SCRIPT_NAME’));
  3. Przed w/w linią dopisujemy:
    $tmp_base = env('SCRIPT_NAME');
    $len = stripos($tmp_base,"index.php") + 9;
    $tmp_base = substr($tmp_base,0,$len);
  4. Linię
    Configure::write(’App.baseUrl’, env(’SCRIPT_NAME’));

    zamieniamy na:

    Configure::write('App.baseUrl', $tmp_base);

Odnośniki, które wyglądały następująco:
http://student.agh.edu.pl/~twoja-nazwa/posts/index
mają postać:
http://student.agh.edu.pl/~twoja-nazwa/index.php/posts/index
Również metoda HtmlHelper->link poprawnie generuje odnośniki użyte w aplikacji.

Po kilku testach okazało się, że opisana metoda nie działa w 100%. Zainstalowanie aplikacji w ścieżce:
http://student.agh.edu.pl/~twoja-nazwa/aplikacja/
nie przekierowuje się automatycznie na index.php:
http://student.agh.edu.pl/~twoja-nazwa/aplikacja/index.php
Wpisanie w przeglądarkę powyższej ścieżki daje dobry rezultat.
Rozwiązaniem tego problemu jest ręczne wpisanie do pliku /app/config/core.php ścieżki do aplikacji:

Configure::write('App.baseUrl', '/~twoja-nazwa/aplikacja/index.php');

Teraz przekierowanie działa poprawnie.

Dlaczego właśnie „WordPress”? 01-09-2008

Autor: Grzegorz Olejarz. Kategorie: o stronie , 0 komentarzy

Własną stronę chciałem założyć od dawna. Ale taką stronę, na której byłaby prezentacją moich prac, projektów itp. Początkowo myślałem tylko o statycznej stronie, ale decydowałem się również na prowadzenie tzw. webloga, bardziej znanego pod nazwą „blog”. Niestety nie posiadam talentu pisarsko-dziennikarskiego, ale oprócz zwykłego chwalenia się moją twórczością będę chciał przedstawić problemy i rozwiązania z informatyki (głównie php) oraz geodezji (GIS). Czy się to uda – zobaczymy.

Stronę założyłem na silniku WordPressa. Wahałem się pomiędzy autorskim systemem zarządzania treścią, a jakimś gotowym rozwiązaniem. Na pierwszy rzut oka takie rozwiązanie wydaje się pójściem na łatwiznę. Ale po przeanalizowaniu problemu doszedłem do wniosku, że napisanie od podstaw dobrego CMS-a będzie trudne biorąc pod uwagę aspekty bezpieczeństwa skryptu. Tym bardziej, że to nie ja pierwszy zakładam stronę-bloga (cóż za odkrycie) i problem takiego skryptu już dawno ktoś mądrzejszy ode mnie rozwiązał. Inną rzeczą jest to, że większość tech- i dev- blogów, które czytam i z których czerpię wiedzę wykorzystują właśnie WordPress.

Decydując sie na WordPressa mam nadzieje zgłębić jego kod, a także rozwiązania i wzorce projektowe wykorzystywane w tym systemie.