Геодезия, Картография, Земеустройство GKZ-5-6'2016 | Page 37

При ползването на SQL View потребителят не може да променя информацията в базата данни, а само да я използва.

На теория SQLView e резултат от дадена заявка за данни, която потребителите на дадена база данни заявяват според техните нужди. За разлика от обикновените таблици в базата данни, View не е част от физическата схема. Тя е виртуална таблица, изчислена или създадена динамично от данните в базата данни, когато е заявен достъп до View. Промените, записани в данните в съответната таблица, се отразяват в показаните данни.

Алгоритъмът на Дейкстра е реализиран именно, чрез SQLView (фиг.10).

Фиг. 10. Код за SQL View заявка - Алгоритъм на Дейкстра

Последният етап е избиране и/или създаване на стилове за визуализация на данните.

5. ПРИЛОЖЕНИЕ НА ГИС ЧРЕЗ ИЗПОЛЗВАНЕ НА УЕБ

ПЛАТФОРМА

5.1. Продуктите за реализиране на приложението

са:

● Софтуер с отворен код;

● Програмни езици – HTML, CSS, JavaScript и JavaQuery.

Чрез HTML и CSS е създаден дизайнът на страницата. Описването на уеб сайта е изпълнено чрез div разделители, които описват полета или кутии и съдържанието в тях, обединявайки ги с общ контекст. Всеки div обхваща останалото съдържание и един вид създава самостоятелен обект в рамките на html страницата. За да се форматират и разположат по страницата различните елементи, се използва езикът CSS. Чрез него се описва и задава стил за външния вид на отделните елементи, техните размери, а също и разположението им.

Java script и Java Query се ползват за създаването и описването на функциите в страницата. За да се създаде желаната функционалност, в приложението се ползва библиотеката на OpenLayers. Той позволява визуализацията на карти. За да бъде достъпна библиотеката, тя трябва да бъде извикана в страницата като се зададе източникът на кода.

За визуализирането на картата първо се създава картата, описва се проекцията ѝ чрез EPSG кода ѝ и се добавят контроли към картата – бутони за функции като увеличаване и намаляване на изображението, смяна на слоеве и други.

Следва да се дефинират слоевете чрез WMS заявки. За целта се дефинират името на слоя, с което той ще бъде визуализиран, адреса на сървъра, към който се отправя заявката, прозрачността на слоя и други.

За автоматичен Zoom на картата върху обекта са зададени географски координати на системата, зададена е проекцията на картата, и са зададени координатите на приблизителния център на обекта. Зададено е и нивото на Zoom към обекта.

Следва да бъдат добавени слоевете с параметри. За тази цел са създадени SQL View слоевете в GeoServer, които при извикване от WMS заявка изпращат SQL заявка към базата данни и връщат резултата от тази заявка за визуализация. Предимството на този подход е възможността потребителят да преценява сам какво да визуализира върху картата. Изпращането на параметрите за SQL заявката се осъществява при създаването на слоя. Особеното при създаването му е добавянето на параметрите – viewparams.

5.4. Функционалност на приложението

Функционалността, която е предвидена да изпълнява приложението, е:

● Функция за определяне местоположението на потребителя;

● Функция за намиране на най-близък обект и визуализиране на най-краткия път до него.

Функцията се задейства, след като е определена геолокацията на потребителя, с натискането на бутона „Намери ме!“. Изпълнява се следната последователност от действия:

● Взима се стойността на селектираните радиобутони;

● Взима се стойността на геолокацията на потребителя;

● Стойностите се форматират като параметри с име „lat”, „lon” и „type” при избрано търсене на заведения за хранене/„stars” при избрано търсене на хотели;

● Проверява се дали вече съществува слой с резултат от заявката и, ако съществува такъв, се изтрива;

● Изпраща се WMS заявката и се зарежда резултатният слой.

Процедурата е интегрирана посредством програмния език SQL, зададен в GeoServer като SQL View.

5.5. Резултати от ползване на приложението

След изпълнението на описаните стъпки се пристъпва към валидиране на заявките, подадени чрез Java Script кода. Последователно са онагледени всички слоеве:

● Визуализация на хотели и заведения за хранене (фиг.11);

Фиг.11. Визуализация на хотели и заведения за хранене

● Намиране на най-близък обект от хотелите, отговарящ на определени критерии (фиг. 13);

● Извеждане на информация за избран обект (фиг.14).

35

ГКЗ 5-6 ' 2016