{"id":879,"date":"2013-02-12T22:57:17","date_gmt":"2013-02-12T21:57:17","guid":{"rendered":"http:\/\/www.miczanin.it\/apiedi\/?p=879"},"modified":"2013-02-12T22:58:05","modified_gmt":"2013-02-12T21:58:05","slug":"geodetiche","status":"publish","type":"post","link":"https:\/\/www.miczanin.it\/apiedi\/2013\/02\/12\/geodetiche\/","title":{"rendered":"Curve geodetiche, mappe, animazioni"},"content":{"rendered":"<p style=\"text-align: justify;\">Il post di <a title=\"Biglietto aereo RTW\" href=\"https:\/\/www.miczanin.it\/apiedi\/2013\/02\/12\/biglietto-aereo-rtw\/\">ieri<\/a>, oltre a un noioso elenco di orari e destinazioni, presenta anche due visualizzazioni pi\u00f9 immediate: una mappa globale con il percorso e un video con l&#8217;animazione del viaggio. Entrambi sono stati realizzati usando software e dati liberi. Riporto di seguito alcune note tecniche sulla realizzazione.<\/p>\n<h1>Mappa con il percorso<\/h1>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/01\/mondo2013_140m_L_c.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-846\" alt=\"Mappa mondo, 1:140M\" src=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/01\/mondo2013_140m_L_c-300x121.jpg\" width=\"300\" height=\"121\" srcset=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/01\/mondo2013_140m_L_c-300x121.jpg 300w, https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/01\/mondo2013_140m_L_c-500x201.jpg 500w, https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/01\/mondo2013_140m_L_c.jpg 827w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>Come dati di partenza ho usato la mappa raster della Terra in scala 1:50m (<em>cross-blended hypsometric tints<\/em>) e la collezione di dati vettoriali resi disponibili da <a href=\"http:\/\/www.naturalearthdata.com\/\" target=\"_blank\">Natural Earth<\/a> (licenza <a href=\"http:\/\/www.naturalearthdata.com\/about\/terms-of-use\/\" target=\"_blank\"><em>public domain<\/em><\/a>). Come software per visualizzare i dati e fare il rendering della mappa, ho usato l&#8217;ottimo <a href=\"http:\/\/www.qgis.org\/\" target=\"_blank\">Quantum GIS<\/a> (d&#8217;ora in poi QGIS), gi\u00e0 presente nel repository standard di Ubuntu (uso Ubuntu 12.10). L&#8217;import dei dati raster e vector \u00e8 risultato del tutto indolore e i vari tematismi risultano perfettamente allineati.<\/p>\n<p style=\"text-align: justify;\">Esistono sicuramente molti modi in QGIS per aggiungere i punti relativi alle destinazioni. Dopo rapida indagine, ha adottato una soluzione probabilmente poco ortodossa, ma che mi ha rubato pochissimo tempo. Ho creato a mano un file GPX con i <em>waypoints<\/em> che mi interessavano e l&#8217;ho importato grazie al plugin preinstallato &#8220;Gps Tools&#8221;.<\/p>\n<p style=\"text-align: justify;\">Non ho invece trovato in QGIS un modo per disegnare le curve geodetiche che collegano i vari punti. Ho visto come collegare i punti con linee rette, ma non \u00e8 quel che volevo. Ho allora scelto una via che pu\u00f2 apparire contorta, ma per me piuttosto naturale. Ho scritto un programmino che, appoggiandosi alla libreria <a href=\"http:\/\/geographiclib.sourceforge.net\/\" target=\"_blank\">GeographicLib<\/a> (anche questa gi\u00e0 disponibile nel repository), a partire dalle coordinate (lat,lon) di partenza e arrivo, genera un file GPX contenente la geodetica sotto forma di <em>track<\/em>. Il programmino \u00e8 molto semplice e nella struttura ricalca un file d&#8217;esempio di GeographicLib. L&#8217;unica accortezza sta nel rilevare il passaggio da +180 a -180 gradi di longitudine e spezzare il percorso in due tracce distinte nello stesso file GPX.<\/p>\n<p style=\"text-align: justify;\">Se qualcuno fosse interessato, pu\u00f2 scaricare <a href=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/geodesic.zip\" target=\"_blank\">geodesic.zip<\/a> che contiene:<\/p>\n<ul>\n<li style=\"text-align: justify;\"><strong>geodesic.cpp<\/strong> : file sorgente in c++ del programmino;<\/li>\n<li style=\"text-align: justify;\"><strong>destinazioni.gpx<\/strong> : il file GPX con tutte le destinazioni (scritto a mano);<\/li>\n<li style=\"text-align: justify;\"><strong>tappe.txt<\/strong> : i comandi da dare per generare i file GPX con le curve geodesiche.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">Una volta importati punti e curve, si tratta solo di decidere quali colori usare e, se l&#8217;immagine desiderata \u00e8 sufficientemente grande, di attivare l&#8217;inserimento automatico delle label.<\/p>\n<h1 style=\"text-align: justify;\">Video animato<\/h1>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/es.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft size-medium wp-image-893\" alt=\"Frame da filmato voli\" src=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/es-300x168.jpg\" width=\"300\" height=\"168\" srcset=\"https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/es-300x168.jpg 300w, https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/es-500x281.jpg 500w, https:\/\/www.miczanin.it\/apiedi\/wp-content\/uploads\/2013\/02\/es.jpg 640w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a>Ho usato <a href=\"http:\/\/www.openshotvideo.com\/\" target=\"_blank\">OpenShot<\/a>, interessante software di video editing disponibile nel repository standard di Ubuntu. A differenza di altri video editor che avevo provato in passato, OpenShot presenta un&#8217;interfaccia molto intuitiva ed \u00e8 facile da usare. Trattandosi per\u00f2 di un progetto relativamente giovane, talvolta \u00e8 poco stabile e alcune azioni apparentemente innocue possono mandarlo in crash. Nel complesso si \u00e8 trattato comunque di uno strumento prezioso. In particolare, \u00e8 dotato di un plugin chiamato <em>WorldMap<\/em> che fa esattamente quelle che serve: accetta coordinate (lat,lon) di due punti e, appoggiandosi a Blender, genera un filmato con l&#8217;animazione. Tutto qui. In realt\u00e0 <em>WorldMap<\/em> a volte falliva senza emettere messaggi d&#8217;errore, ma ho risolto dimezzando i parametri <em>Extrude<\/em> e <em>BevelDepth<\/em>.<\/p>\n<p style=\"text-align: justify;\">Per le schermate dei titoli, ho usato <a href=\"http:\/\/inkscape.org\/\" target=\"_blank\">InkScape<\/a>, che si integra alla perfezione con OpenShot.<\/p>\n<p style=\"text-align: justify;\">Per l&#8217;audio, ho trovato <a href=\"http:\/\/incompetech.com\/music\/royalty-free\/index.html?isrc=USUAN1100632\" target=\"_blank\">Alchemist Tower<\/a>, un bel brano del solito Kevin MacLeod. Purtroppo, la parte centrale era troppo corta e sono ricorso quindi ad un lavoro di copia\/incolla con <a href=\"http:\/\/audacity.sourceforge.net\/\" target=\"_blank\">Audacity<\/a> per allinearlo con il video.<\/p>\n<p style=\"text-align: justify;\">Ecco il risultato finale:<\/p>\n<p><iframe loading=\"lazy\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/TV4Er9nTGL0?rel=0\" height=\"315\" width=\"560\" allowfullscreen=\"\" frameborder=\"0\"><\/iframe><\/p>\n<p style=\"text-align: justify;\">\n","protected":false},"excerpt":{"rendered":"<p>Il post di ieri, oltre a un noioso elenco di orari e destinazioni, presenta anche due visualizzazioni pi\u00f9 immediate: una mappa globale con il percorso e un video con l&#8217;animazione del viaggio. Entrambi sono stati realizzati usando software e dati &hellip; <a href=\"https:\/\/www.miczanin.it\/apiedi\/2013\/02\/12\/geodetiche\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[33,11,13,32],"class_list":["post-879","post","type-post","status-publish","format-standard","hentry","category-pubblicato","tag-c","tag-mappe","tag-recensione","tag-software"],"_links":{"self":[{"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/posts\/879","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/comments?post=879"}],"version-history":[{"count":23,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/posts\/879\/revisions"}],"predecessor-version":[{"id":904,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/posts\/879\/revisions\/904"}],"wp:attachment":[{"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/media?parent=879"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/categories?post=879"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.miczanin.it\/apiedi\/wp-json\/wp\/v2\/tags?post=879"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}