venerdì 17 febbraio 2012

Aggiungere una libreria esterna ad un progetto Android

Nel caso in cui un comando non esista nel linguaggio di Android si puo' ricorrere alle librerie esterne disponibili....ma come inserirle in un progetto Eclipse??
L'esempio che segue prende come esempio AndroidPlot, una libreria gratuita per creare grafici su Android (link).
Una volta scaricato il file della libreria dal sito si puo' creare un nuovo progetto in Eclipse, cliccando destro sul progetto si deve selezionare New/Folder e si inserisce per esempio il nome lib.

Crea nuova directory nel progetto

giovedì 16 febbraio 2012

Option Menu

Per creare un Option menu, ovvero il menu che appare in basso allo schermo, si puo' procedere per due vie.
Prima di tutto si deve segnalare che non esiste un sistema unico per aprire un Option Menu. Sull'emulatore si deve premere il tasto Menu

Cerchiato in rosso il tasto di Option Menu

Localizzare una applicazione

Creare una versione localizzata, ovvero con le scritte tradotte nella lingua dell'utente, e' un processo piuttosto immediato in Android.
In generale e' buona abitudine non inserire le stringhe relative all'interfaccia grafica ed ai messaggi nel codice ma e' piu' conveniente scriverle nel file di default strings.xml che si trova nella cartella /res/values del progetto Android
un esempio di come vengono riferite le stringhe nel file strings.xml si puo' trovare nel codice sottostante
-----------------------------------------------------------------------------------------------
    <string name="hello">Hello World, GeocompassActivity!</string>
    <string name="app_name">Geocompass</string>
------------------------------------------------------------------------------------------------
per usare la stringa all'interno del codice del programma si puo' referenziare, per esempio, mediante R.strings.hello; in questo modo sara' stampata la stringa Hello World, GeocompassActivity!

Nel file strings.xml si puo' mettere il testo scritto nel linguaggio di default. Se si vuole effettuare una personalizzazione, per esempio in italiano, si deve creare sotto la directory /res/ una nuova cartella /values-it/ in cui copiare il file strings.xml che sara' poi editato per effettuare la traduzione delle stringhe.

Sara' il telefono, in base alle impostazioni contenute in Impostazioni/Impostazioni Lingua e Tastiera a scegliere quale elenco di stringhe utilizzare in modo del tutto trasparente



Tavoletta grafica Calcomp Drawing Board III


lunedì 13 febbraio 2012

Geocompass released on Android Market

Today the first release of Geocompass, a free and simple Geological Compass (Clinometer).


Available in Android Market

Il programma e' in fase di beta test su piattaforma Android 2.2  telefono Huawei Vodafone Ideos U8150 con firmware modificato (Dronix 0.4) e schermo 320x240

Uso
Il telefono Android deve essere posto sulla superficie piana dello strato con qualunque orientazione.
Se lo strato da misurare e' rovescio e' necessario cliccare sulla apposita checkbox. Si puo' anche selezionare la formazione su cui viene effettuata la misura (il controllo per la gestire le litologie e la formazioni e' configurabile; di default viene presentato un elenco di litologie ma puo' essere modificato creando sulla SD Card un file formazioni.txt con un elenco continuo di stringhe separate da punto e virgola senza ritorni a capo)
---------------------------------------- Esempio del file formazioni.txt -----------------------------
F.Monte Morello;A. Cervarola;A. Castel Guerino;A. Falterona;Marne Vicchio;Marne Pievepelago;Marne S.Polo;Macigno;A.Modino;Calcari Angulati;Rosso Ammonitico;C.Selc.Limano;Marne Posidonomya;C.Selc.Lima;Diaspri;Calcari Aptici;Maiolica
---------------------------------------- Esempio del file formazioni.txt -----------------------------

Misura orizzontale

La misura viene salvata cliccando sul pulsante "Salva" ed i dati sono inseriti in un file testo posto in /SdCard/geocompass.txt in un formato compatibile con l'importazione in Excel; sono registrati data ed ora dell'acquisizione, punto GPS (se disponibile), Strike, Dip, orientazione dello strato (N=Normale, R=Rovescia) e indicazione della formazione litologica misurata. Il telefono emette un suono per confermare l'avvenuta misura

Field Test
Le misure sono nettamente piu' speditive in quanto, al contrario dell'impiego di una bussola in cui si deve mettere in bolla, misurare lo Strike, inclinare la bussola e misurare il Dip con Geocompass non e' necessario orientare lo strumento e le due misure vengono effettuate istantaneamente.
-----------------------Esempio file delle misure /sdcard/geocompass.txt------------------

14:07:00 15/02/2012;0;0;293;40;N;A. Castel Guerino
14:07:10 15/02/2012;0;0;175;45;R;Marne Vicchio
14:07:18 15/02/2012;0;0;Dir: 197-17;90;R;Marne Vicchio
14:08:52 15/02/2012;43.7193124;10.95045389;19;37;N;F.Monte Morello
14:08:59 15/02/2012;43.71932407;10.95045727;117;54;N;Calcari Aptici
----------------------------------------------------------------------------------------------------------------------------------
I campi sono delimitati dal carattere ; (punto e virgola)
campo 1 : data e ora dell'acquisizione (hh:mm:ss dd/mm/yyyy)
campo 2 : latitudine punto GPS (gradi decimali punto come separatore decimale)
campo 3 : longitudine punto GPS (gradi decimali punto come separatore decimale)
campo 4 : strike (intero)
campo 5 : dip (intero)
campo 6 : orientamento N/R (normale/rovescia)
campo 6 : formazione (stringa)

Per gli angoli di inclinazioni vengono considerate come orizzontali tutte le misure inferiori a 5° di inclinazione e come verticali tutte le misure superiori a 80°. Nel caso di misura verticale non viene indicato lo strike ma la direzione

Se viene abilitato il sensore GPS del telefono viene inserita anche l'informazione per la georeferenziazione (disponibile solo se e' disponibile il fix gps indicato dalla scritta GPS in colore verde). Il programma funziona correttamente anche senza questa funzione abilitata



domenica 12 febbraio 2012

Geocompass su GitHub

Il progetto della bussola geologica e' stato pubblicato su GitHub

git@github.com:c1p81/Geocompass.git


al momento non e' funzionante

Feature Matching OpenCv

Il problema e' il seguente: trovare le differenze tra le due foto. Le due immagini sono state riprese a distanza di oltre un anno ed il ...