Készítsünk programot a következő feladatok megoldására:
Település listaTelepülések távolsága földrajzi koordináták alapján
Település gráf 30 km-nél rövidebb élekkelSzélességi bejárás Budapestről indulvaDijkstra-algoritmus két település közötti legrövidebb út kiszámításáhozMegyeszékhelyek körbejárása
Google Maps Api + javascript/html felületMegyeszékhelyek <!DOCTYPE html> <html> <head> <title>Megyeszékhelyek Magyarországon</title> <meta name="viewport" content="initial-scale=1.0"> <meta charset="utf-8"> <style> html, body { height: 100%; margin: 0; padding: 0; } #map { height: 100%; } </style> </head> <body> <div id="map"></div> <script> var map; function initMap() { var latlng = {lat: 47.494328, lng: 19.042383}; map = new google.maps.Map(document.getElementById('map'), { center: latlng, zoom: 6 }); var megye = [ {title:'Békéscsaba',position:{ lat:46.677, lng: 21.0852},map: map}, {title:'Budapest', position:{lat: 47.4825 , lng:19.1593},map: map}, {title:'Debrecen', position:{lat: 47.5288 , lng:21.6372},map: map}, {title:'Eger', position:{lat: 47.9007 , lng:20.3792},map: map}, {title:'Győr', position:{lat: 47.688 , lng:17.6328},map: map}, {title:'Kaposvár', position:{lat: 46.3575 , lng:17.7958},map: map}, {title:'Kecskemét', position:{lat: 46.9088 , lng:19.6928},map: map}, {title:'Miskolc', position:{lat: 48.1037 , lng:20.7993},map: map}, {title:'Nyíregyháza', position:{lat: 47.94254 , lng:21.7158},map: map}, {title:'Pécs', position:{lat: 46.0802 , lng:18.2475},map: map}, {title:'Salgótarján', position:{lat: 48.111 , lng:19.8147},map: map}, {title:'Szeged', position:{lat: 46.2492 , lng:20.1628},map: map}, {title:'Szekszárd', position:{lat: 46.3523 , lng:18.7037},map: map}, {title:'Székesfehérvár', position:{lat: 47.18602, lng:18.42213},map: map}, {title:'Szolnok', position:{lat: 47.1793 , lng:20.1875},map: map}, {title:'Szombathely', position:{lat: 47.2335 , lng:16.6203},map: map}, {title:'Tatabánya', position:{lat: 47.5673 , lng:18.4088},map: map}, {title:'Veszprém', position:{lat: 47.0915 , lng:17.911},map: map}, {title:'Zalaegerszeg', position:{lat: 46.835 , lng:16.8385} ,map: map} ] var marker = new Array(); for(var i = 0; i < 20; i++) { marker[i] = new google.maps.Marker(megye[i]); } } </script> <script src="https://maps.googleapis.com/maps/api/js?key=API_KEY&callback=initMap" async defer></script> </body> </html> Körút Levente optimalizációjával: <!DOCTYPE html> <html> <head> <title>Megyeszékhelyek Magyarországon</title> <meta name="viewport" content="initial-scale=1.0"> <meta charset="utf-8"> <style> html, body { height: 100%; margin: 0; padding: 0; } #map { height: 100%; } </style> </head> <body> <div id="map"></div> <script> var map; function initMap() { var latlng = {lat: 47.494328, lng: 19.042383}; map = new google.maps.Map(document.getElementById('map'), { center: latlng, zoom: 6 }); var megye = [ {title:'Békéscsaba',position:{ lat:46.677, lng: 21.0852},map: map}, {title:'Budapest', position:{lat: 47.4825 , lng:19.1593},map: map}, {title:'Kecskemét', position:{lat: 46.9088 , lng:19.6928},map: map}, {title:'Szekszárd', position:{lat: 46.3523 , lng:18.7037},map: map}, {title:'Szeged', position:{lat: 46.2492 , lng:20.1628},map: map}, {title:'Pécs', position:{lat: 46.0802 , lng:18.2475},map: map}, {title:'Zalaegerszeg', position:{lat: 46.835 , lng:16.8385} ,map: map}, {title:'Szombathely', position:{lat: 47.2335 , lng:16.6203},map: map}, {title:'Kaposvár', position:{lat: 46.3575 , lng:17.7958},map: map}, {title:'Veszprém', position:{lat: 47.0915 , lng:17.911},map: map}, {title:'Győr', position:{lat: 47.688 , lng:17.6328},map: map}, {title:'Tatabánya', position:{lat: 47.5673 , lng:18.4088},map: map}, {title:'Salgótarján', position:{lat: 48.111 , lng:19.8147},map: map}, {title:'Székesfehérvár', position:{lat: 47.18602, lng:18.42213},map: map}, {title:'Miskolc', position:{lat: 48.1037 , lng:20.7993},map: map}, {title:'Nyíregyháza', position:{lat: 47.94254 , lng:21.7158},map: map}, {title:'Eger', position:{lat: 47.9007 , lng:20.3792},map: map}, {title:'Debrecen', position:{lat: 47.5288 , lng:21.6372},map: map}, {title:'Szolnok', position:{lat: 47.1793 , lng:20.1875},map: map} ] var path = [ { lat:46.677, lng: 21.0852}, {lat: 47.4825 , lng:19.1593}, {lat: 46.9088 , lng:19.6928}, {lat: 46.3523 , lng:18.7037}, {lat: 46.2492 , lng:20.1628}, {lat: 46.0802 , lng:18.2475}, {lat: 46.835 , lng:16.8385}, {lat: 47.2335 , lng:16.6203}, {lat: 46.3575 , lng:17.7958}, {lat: 47.0915 , lng:17.911}, {lat: 47.688 , lng:17.6328}, {lat: 47.5673 , lng:18.4088}, {lat: 48.111 , lng:19.8147}, {lat: 47.18602, lng:18.42213}, {lat: 48.1037 , lng:20.7993}, {lat: 47.94254 , lng:21.7158}, {lat: 47.9007 , lng:20.3792}, {lat: 47.5288 , lng:21.6372}, {lat: 47.1793 , lng:20.1875}, { lat:46.677, lng: 21.0852} ] var kor = new google.maps.Polyline({ path: path, geodesic: true, strokeColor: '#FF0000', strokeOpacity: 1.0, strokeWeight: 2 }); kor.setMap(map); var marker = new Array(); for(var i = 0; i < 20; i++) { marker[i] = new google.maps.Marker(megye[i]); } } </script> <script src="https://maps.googleapis.com/maps/api/js?key=API_KEY&callback=initMap" async defer></script> </body> </html> Végül levezetésnek: https://www.destroyallsoftware.com/talks/wat |
Programozás > Feladatok >