Changes between Version 5 and Version 6 of AdvancedTopics


Ignore:
Timestamp:
05/20/26 13:00:42 (6 days ago)
Author:
231044
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AdvancedTopics

    v5 v6  
    44
    55Пред имплементаицја на оваа тема, во табелата !ScheduledFlight која претставува закажан лет (урнек), колоната Distance беше генерирана на рандомизиран начин односно според времето на полетување и слетување, што не претставува реален податок. Проблем се јавува при употреба на оваа вредност во калкулациите на цена на авионски билети како и додавање на поени за летање на патниците. Со воведување на PostGIS, податоците се реални и употребливи во бизнис логиката на апликацијата. Исто така овозможено е имплементирање на дополнителни функционалности присутни во реални системи.
     6
     7Со цен јасно прикажување на резултатите кои ги добивме со имплементација на PostGIS, за визуелизација на податоците ја употребивме алатката QGIS која директно се поврзува со нашата база на податоци во Postgres и во која може да се извршуваат и потребните прашалници. Во документацијата по имплементација на секој дел ја имаме прикажано и соодветната визуелизација.
    68
    79== Инсталација на PostGIS
     
    2729add column latitude numeric;
    2830}}}
     31
     32По додавање на колоните тие беа пополнети со веќе постоечките податоци од OpenFlight CSV датотеката која исто така ја употребивме и за првобитното пополнување на табелата што ни овозможи одржување на конзистентност во податоците.
     33
     34Како следен чекор потребно беше претставување на координатите во форма на Point. За таа цел додадовме нова колона location од тип geography(Point, 4326).
     35
     36{{{
     37#!sql
     38alter table airport
     39add column location geography(Point, 4326);
     40}}}
     41
     42За пополнување на колоната location потребно беше да се искористат податоците за longitude и latitude на секој аеродром. За креирање на објект Point потребно беше да се изврши функцијата ST_MakePoint, која создава Point од два аргументи - координати.
     43
     44{{{
     45#!sql
     46update airport
     47set location = ST_MakePoint(longitude, latitude)::geography;
     48}}}
     49
     50При визуелизација ја искористивме колоната location во Airport и како лабела на секоја точка колоната Code.
     51
     52'''Сите аеродроми'''
     53[[Image(World-Airports.png, 800px)]]]]
     54
     55'''Аеродромите на балканскиот полуостров'''
     56[[Image(Balkan.png, 800px)]]]]
    2957
    3058