Changes between Version 5 and Version 6 of AdvancedTopics
- Timestamp:
- 05/20/26 13:00:42 (6 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AdvancedTopics
v5 v6 4 4 5 5 Пред имплементаицја на оваа тема, во табелата !ScheduledFlight која претставува закажан лет (урнек), колоната Distance беше генерирана на рандомизиран начин односно според времето на полетување и слетување, што не претставува реален податок. Проблем се јавува при употреба на оваа вредност во калкулациите на цена на авионски билети како и додавање на поени за летање на патниците. Со воведување на PostGIS, податоците се реални и употребливи во бизнис логиката на апликацијата. Исто така овозможено е имплементирање на дополнителни функционалности присутни во реални системи. 6 7 Со цен јасно прикажување на резултатите кои ги добивме со имплементација на PostGIS, за визуелизација на податоците ја употребивме алатката QGIS која директно се поврзува со нашата база на податоци во Postgres и во која може да се извршуваат и потребните прашалници. Во документацијата по имплементација на секој дел ја имаме прикажано и соодветната визуелизација. 6 8 7 9 == Инсталација на PostGIS … … 27 29 add column latitude numeric; 28 30 }}} 31 32 По додавање на колоните тие беа пополнети со веќе постоечките податоци од OpenFlight CSV датотеката која исто така ја употребивме и за првобитното пополнување на табелата што ни овозможи одржување на конзистентност во податоците. 33 34 Како следен чекор потребно беше претставување на координатите во форма на Point. За таа цел додадовме нова колона location од тип geography(Point, 4326). 35 36 {{{ 37 #!sql 38 alter table airport 39 add column location geography(Point, 4326); 40 }}} 41 42 За пополнување на колоната location потребно беше да се искористат податоците за longitude и latitude на секој аеродром. За креирање на објект Point потребно беше да се изврши функцијата ST_MakePoint, која создава Point од два аргументи - координати. 43 44 {{{ 45 #!sql 46 update airport 47 set 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)]]]] 29 57 30 58
