Applicazioni
Da qui potete scaricare le applicazioni da me sviluppate! Spero che in qualche modo
possano risultarvi utili! Cliccate sul nome del file per avviare il download. Ovviamente
Dario D'Amico non si assume alcuna responsabilità riguardo al software e alle altre
opere liberamente scaricabili; non è assicurato che non provochi danni, perdite di dati,
indebolimenti della sicurezza.
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Prolog the Knight |
26/06/2011 15.20.12 |
knight.pl.txt |
1506 |
1.0 |
Dominio pubblico |
Intelligenza Artificiale |
Platform independent |
Testato con YAP 5 |
|
Questo è il mio primo programma in Prolog minimamente interessante. Dovete rimuovere l'estensione
.txt e poi potete avviarlo con
il comando "yap -L knight.pl". Nella parte indicata come "Dungeon definition" è possibile
specificare un labirinto che un prode cavaliere dovrà attraversare; la specifica consiste
nel definire dove sono le zone percorribili attraverso i grounding del predicato floor(X, Y).
Il labirinto di default è descritto mediante dei grounding che con la loro
posizione nel codice rimandano alla posizione da essi descritta nel mondo del cavaliere
(ovvero: ho dato al codice Prolog la stessa forma del labirinto); in
questo modo è più facile per l'utente verificare che il programma abbia trovato la soluzione
giusta.
Nel main, i primi
cinque argomenti passati al predicato knight rappresentano la posizione, l'istante di
partenza e la destinazione; il default 1, 1, 1, 4, 9 vuol dire che il cavaliere parte
dalla casella (1, 1) all'istante 1 e deve raggiungere la casella (4, 9). La soluzione
consiste in una lista che descrive il percorso del cavaliere dalla partenza all'arrivo;
se un tale percorso non esiste non si ottiene alcun output.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| JpegIplDecode Library |
17/09/2008 15.52.43 |
jpeg_decoder_v1.rar |
8763 |
1.0 |
GPL 2 |
Imaging |
Platform independent |
OpenCV, libjpeg |
|
Permette di costruire un'immagine IplImage a partire da uno stream in formato
JPEG. Rispetto alla funzione cvLoadImage di OpenCV, parametrizzata dal nome di
un file, JpegIplDecode permette di operare su uno stream FILE * standard C.
Per tale ragione è maggiormente flessibile ed è una buona base per costruire
un decoder MJPEG. Una strategia per fare ciò è trovare nel file MJPEG tutti
i marker Start Of Image (SOI) di JPEG e fare una fseek() per spostarsi sul primo
byte del SOI prima di chiamare una delle due funzioni di JpegIplDecode.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| MyEncrypt |
13/09/2008 23.13.25 |
MyEncrypt.exe |
22016 |
0.01 |
Freeware |
Crittografia |
Testato su Windows Vista |
.NET Framework 2.0 (credo, provate un po'...) |
|
Permette di criptare e decriptare file con l'algoritmo Rijndael. Il
vettore di inizializzazione è predeterminato, la chiave deriva dall'hash
di una parola UTF-8 scelta dall'utente. Tale parola deve essere nota ai
due estremi della comunicazione. L'utile funzionalità di output a schermo
permette, quando si stia decriptando un'immagine, di inviarla direttamente
a schermo senza salvarla su file, in questo modo evitando che ne rimanga
traccia sull'hard-disk. A causa soprattutto del vettore di inizializzazione
prefissato, è da intendersi come applicazione trastullo, non vi consiglio
di criptarci niente di più segreto della lista della spesa.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| CDOpen |
18/01/2008 0.08.02 |
CDOpen.zip |
5588 |
1.0 |
Fateci quello che volete |
Sistema |
Testato su Windows XP |
Lettore CD-ROM |
|
Emette un BEEP e apre il vostro lettore CD. Niente di più, niente di meno.
L'eseguibile, il listato C++ e il file di progetto Dev-C++ sono inclusi nello ZIP.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Blue3D |
22/12/2007 21.15.20 |
blue3d.tar.gz |
14838318 |
1.0 |
GPL 2 |
Grafica 3D |
Testato su Windows XP/Mac OS X/Linux |
Scheda grafica OpenGL compatibile/300 MHz CPU/64 MB di RAM |
|
Finalmente è disponibile per il download Blue3D, il programma che è risultato vincitore
al LILiKontest 2007 organizzato dal laboratorio LILiK dell'Università degli Studi di Firenze!
Questa volta Damix non ha fatto tutto da solo, bensì ha potuto contare sull'ottimo Mirko,
anch'egli studente di ingegneria informatica. Lo sviluppo è durato circa due mesi e alla fine
ha prodotto un programma di modellazione 3D open source e cross platform e, cosa molto importante,
con un formato di file ASCII ben documentato. Questo archivio contiene anche l'eseguibile per
Windows, oltra ovviamente a tutti i sorgenti C++. Per la compilazione sono richieste le librerie
wxWidgets e il supporto di sviluppo per OpenGL.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Primo esempio di un sorgente D5 |
20/09/2007 3.13.40 |
example-1.txt |
1038 |
0.01 |
Freeware |
Giochi e multimedia |
Platform independent |
Nessuno |
|
Questo è il primo esempio di un sorgente D5, acronimo di "Damix 3D Declaration". D5 è un formato testuale
di descrizione di oggetti tridimensionali a mesh di triangoli texturizzate, con supporto per
le normali e la colorazione ai vertici,
i vertex groups e la skeletal animation. L'ho concepito, definito, e ne ho
realizzato un parser in C++ esattamente oggi, dopo aver provato un po'
di sana frustrazione nel cercare di decifrare il formato (o meglio il dump)
binario di Blender. Se non bazzicate l'ambiente della computer grafica,
probabilmente non saprete che la documentazione di Blender riguardo al suo
formato di file è accurata più o meno come quella stilata dagli uomini neolitici
circa la costruzione delle palafitte. Sarebbe veramente l'ora che si decidessero
a fare qualcosa. Se vi interessa realizzare un semplice giochino è probabile
che D5 sarà sufficiente, una volta che avrò realizzato un programma di modellazione
che lo usa. Dato che eventualmente userò questo codice per il mio progetto per il
LILiKontest, rilascerò tutti i sorgenti C++ solo a concorso terminato.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| DirectX: Summa Tuttologa I |
14/09/2007 13.52.11 |
Exercise1.rar |
4411676 |
0.01 |
Freeware |
Giochi e multimedia |
Windows 2000/XP/Server 2003/Vista |
Scheda grafica DirectX 9.0c |
|
In questa soluzione per Visual C++ 2005 ci sono alcune cose più o meno interessanti riguardo a
DirectX 9; infatti qui dentro ci sono: Direct3D, con illuminazione e filtraggio delle texture;
DirectInput per il controllo di un gamepad; una libreria per il calcolo delle
collisioni fatta in casa, ma con prestazioni abbastanza soddisfacenti, basata sull'intersezioni
fra spigoli e facce; una libreria per l'importazione in D3D di file Alias Wavefront Object, tra l'altro
supportati da Blender; è sufficiente esportare il vostro modello con le opzioni Triangulate, Normals
e UVs. Si noti che deve realmente esserci una mappatura UV, realizzata con l'editor UV.
Il punto forte di questa applicazione è tuttavia la travolgente simpatia del personaggio principale,
che certamente riscuoterà grande successo tra grandi e piccini!
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Ace Tech Test (Source) |
04/08/2007 13.14.54 |
acett001_sol.rar |
19334396 |
0.01 |
Freeware |
Giochi e multimedia |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0/Scheda grafica DirectX 9.0c |
|
Il codice sorgente di Ace; AutoMap è un programma che permette di generare casualmente terreni. Non è
parametrizzato, quindi se volete cambiare i parametri di generazione dovete modificare il sorgente
e ricompilarlo.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Ace Tech Test |
04/08/2007 13.14.50 |
setup.exe |
8337487 |
0.01 |
Freeware |
Giochi e multimedia |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0/Scheda grafica DirectX 9.0c |
|
Ace è (o meglio sarà, forse, e se ne avro tempo... ma non ci sperate) uno sparatutto sullo stile di Descent
ma ambientato all'aperto; è programmato in Managed DirectX e richiede un controller
di gioco installato, non importa se un gamepad o un joystick; infatti all'avvio del programma,
che lo vogliate o meno, la vostra prima perifierica di gioco collegata al PC verrà
acquisita. Per i test ho usato un gamepad Saitek P2600, e in generale consiglio di munirvi di
un controller con almeno quattro gradi di libertà. Per installarlo cliccate sul file setup.exe
e seguite le istruzioni a video. Dopo l'installazione, nella cartella terrains ci sono
le mappe di altezza utilizzabili per fare il rendering del mondo; nella cartella textures ci
sono le texture del terreno installate; è possibile editare il file config.cfg nella
cartella principale per cambiare il terreno, la texture e anche il colore del cielo.
Un'ultima cosa: i collegamenti che il programma di installazione vi piazza sul Desktop
e nel menu di avvio non funzionano; dovete avviare Ace cliccando su Ace.exe nella cartella
di installazione.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Gamepad Test |
28/07/2007 16.30.23 |
Gamepad.rar |
27031 |
0.01 |
Freeware |
Giochi e multimedia |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Gamepad Test è una soluzione per Visual Studio 2005 e Managed DirectX 9; è un semplice
programma didattico che mostra come si possa interagire con un Gamepad (ho condotto
i test con il P2600 della Saitek). All'avvio cerca le periferiche di gioco connesse al
sistema e sceglie la prima; di questa periferica monitorerà gli assi X, Y e Z e anche
i primi 6 pulsanti, se presenti. La soluzione contiene anche tre controlli utente
di ambito abbastanza generale, che in questo caso servono per mostrare lo stato
dei pulsanti e dei tre assi. Niente vieta di utilizzarli anche per altri scopi,
meno multimediali.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| PowerCutter |
25/07/2007 13.35.29 |
PowerCutter_0_02.rar |
16564 |
0.02 |
Freeware |
Utility |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Nuova versione di PowerCutter; PCApp adesso ha la possibilità di inserire aree di
censura. Le aree di censura si inseriscono tenendo premuto il tasto 'X' mentre
si clicca con il tasto sinistro del mouse sull'immagine. Come le altre
aree sono ridimensionabili, ma si distinguono per il loro colore rosso. La loro caratteristica principale è quella di
essere scartate da PCBuild. Ad esempio, se state usando PowerCutter per creare
un dataset di machine learning per il riconoscimento di occhi, potete contrassegnare
con aree di ritaglio gli occhi perfettamente orizzontali, e con aree di censura
quelli obliqui, o coperti da occhiali, o non umani; questo permette di scartare
tali immagini dal foreground set rimuovendole tuttavia anche dal background set.
Da notare che i file .cutinfo rimangono compatibili; un file .cutinfo generato
con la precedente versione 0.01 è identico a un file della nuova versione senza
aree di censura. La compatibilità non vale nell'altra direzione.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| PowerCutter |
25/07/2007 0.30.43 |
PowerCutter.rar |
16008 |
0.01 |
Freeware |
Utility |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
PowerCutter è nato dall'esigenza di dover ritagliare quantità industriali di
occhi. L'utility si compone in realtà di due programmi, PCApp e PCBuild; entrambi
sono da richiamare da linea di comando. La sintassi di PCApp è "PCApp MiaImmagine Ext" dove MiaImmagine
è il nome di un file privo di estensione, e Ext è un'estensione di tipo immagine (senza punto).
Questo comando apre una finestra contenente l'immagine specificata; è possibile
spostare la visuale trascinando il mouse tenendo premuto il tasto destro; è possibile
zoomare con i tasti + e -; è possibile aggiungere un'area di ritaglio con un click destro
ed è possibile spostarla trascinandola con il tasto sinistro del mouse; è anche possibile
ridimensionarla trascinando i lati; per cancellare un'area la si deve puntare con il cursore
e si deve premere il tasto Canc. In qualsiasi momento è possibile uscire dal programma.
PCApp mantiene automaticamente un file MiaImmagine.cutinfo che contiene tutte le aree tracciate.
PCBuild è invece a linea di comando in senso stretto, e lo si può richiamare con la
sintassi "PCBuild MiaImmagine Ext Directory", dove i primi due parametri sono analoghi a prima
e Directory è il nome della directory in cui verranno messi i risultati; i risultati consistono
nelle immagini ritagliate sulla base delle aree contenute in MiaImmagine.cutinfo (foreground set) e nelle immagini originali censurate (background set). Inoltre é possibile usare la
sintassi "PCBuild * * Directory" per estendere il comando a tutti i file e a tutte le estensioni
immagine.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| SnapBoard |
11/06/2007 12.58.10 |
SnapBoard.rar |
4078 |
0.01 |
Freeware |
Utility |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Questa piccola utility vi consente di risparmiare tempo quando dovete ritagliare
varie parti di testo o grafica da un documento e salvarle come file separati;
semplicemente avviate il programma, scegliete Sfoglia... e selezionate una cartella.
A questo punto il programma è pronto per l'uso; ogni volta che cliccherete su
Incolla, l'elemento negli appunti di Windows finirà nella cartella selezionata, con
un nome dato da un numero progressivo. Enjoy!
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Backpropagation |
24/03/2007 3.09.15 |
Backpropagation.rar |
42265 |
0.01 |
GPL |
Intelligenza Artificiale |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Backpropagation è una soluzione per Visual Studio che comprende un'implementazione degli
algoritmi di backpropagation standard e stocastico, un semplice test client da linea di
comando, un controllo utente che permette di disegnare pixel su una griglia ingrandita e
un client OCR che riconosce le dieci difre del sistema decimale. Controllate il codice di
training per capire dove dovreste posizionare le cifre all'interno della griglia.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Perceptron Test |
18/02/2007 14.39.36 |
PerceptronTest.rar |
56050 |
0.01 |
GPL |
Intelligenza Artificiale |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Perceptron Test è un programma che consente di allenare e testare un percettrone
a 8 ingressi, usando una comoda interfaccia visuale. E' realizzato in C# con Visual Studio
ma è possibile compilarlo anche con i tools a linea di comando di .NET. Il primo ingresso
del percettrone è l'opposto dell'ingresso di soglia, per cui si consiglia di impostarlo
sempre a 1 per simulare il comportamento standard. Il learning rate è impostato a 0.01 ed
è modificabile solo ricompilando.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| AI Slider |
11/02/2007 11.00.29 |
AISlider.rar |
12255 |
0.01 |
GPL |
Intelligenza Artificiale |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
AI Slider è un programmino di intelligenza artificiale che gioca allo "Spacca-n", dove
n sarà tipicamente 15; ci sono quattro funzioni euristiche disponibili, e potete scegliere
quale utilizzare editando il file GameAI.cs.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| AI Tokens |
01/02/2007 23.30.11 |
AITokens.rar |
18906 |
0.01 |
GPL |
Intelligenza Artificiale |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
AI Tokens permette di giocare al gioco degli undici gettoni. Il gioco
degli undici gettoni funziona nel seguente modo: due giocatori si alternano
nel rimuovere 1, 2 o 3 gettoni da un insieme iniziale di 11; il giocatore
che è costretto a togliere l'ultimo gettone perde.
Il programma permette di iniziare una nuova partita cliccando sul pulsante
'Start'. I pulsanti 'Take' permettono di rimuovere l'ammontare di gettoni
desiderato; il gioco si alterna quindi fra due giocatori, entrambi gestiti
dall'utente cliccando sui pulsanti 'Take'. In qualsiasi momento (sia per il
giocatore 1 che per il giocatore 2) è possibile cliccare sul pulsante 'AI'
per farsi 'consigliare' dal computer; questo permette di creare situazioni
diverse e sperimentare quindi completamente l'algoritmo.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Aizkel |
23/12/2006 15.40.54 |
aizkel_0_30.rar |
2912151 |
0.30 |
GPL |
Interpreti e Compilatori |
Win32/Linux |
Win32: nessuno/Linux: GCC |
|
Aizkel è un interprete per un semplice linguaggio di scripting
di mia ideazione. E' nato come esperimento per capire che cosa
aveva da offrire la programmazione a oggetti al mondo degli
interpreti e dei compilatori, che notoriamente sono implementati
in C. Aizkel include un framework di classi C++, DRECv2 che è il cuore
del progetto, e che usa una miriade di quegli aggeggi che come
ho successivamente scoperto vanno sotto il nome di Design Patterns.
Grazie a queste tecniche Aizkel è completamente estensibile ed in
qualunque momento è possibile aggiungere produzioni e simboli terminali
senza impattare (o quasi) con alcun altro elemento lessicale del linguaggio.
Le attuali limitazioni di DRECv2 risiedono in una questione che ho più o meno
spiegato nel file docs/bugs.txt nella directory dei sorgenti; nella versione 3
spero di correggere questo problema; a quel punto DREC dovrebbe divenire
effettivamente in grado di implementare qualsiasi grammatica. Il file
aizkel_0_30.rar include i sorgenti per Win32 e per Linux, e anche l'installer
per Win32.
In questi giorni Aizkel è stato giudicato vincitore al concorso di
programmazione LILiKontest, organizzato dal LILiK (Laboratorio di Informatica
LIbera del Kollettivo) dell'Università degli Studi di Firenze.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| RMI Chat |
26/10/2006 22.05.07 |
rmichat-v0.1alpha.rar |
12938 |
0.1 alpha |
GPL |
Programmazione Distribuita |
Platform Independent |
Java 1.5 Runtime Environment |
|
RMI Chat è una semplice applicazione per la messaggistica basata su Java
RMI. Il progetto è ancora in uno stadio molto iniziale, comunque funziona.
Per usare RMI Chat dovete avviare il registro RMI e poi il server chat con il
comando 'java HelloServer'; da quel momento potete avviare tutti i client
che desiderate (per ora in locale, ma potete modificare l'indirizzo di
connessione per effettuare una connesione remota) con il comando
'java HelloClient'.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| Esempio di query ricorsiva (SQL-99) |
26/10/2006 0.50.56 |
recursive-query.rar |
378 |
- |
- |
Script/SQL |
Platform Independent |
DBMS compatibile SQL-99 |
|
Questo script è un esempio di query SQL-99 ricorsiva; presuppone che esista
un database di nome TreeDB in cui costruire la tabella di esempio ed
effettuare la query. La tabella di esempio rappresenta un albero, ovvero
ogni tupla ha un riferimento alla tupla padre. La SELECT ricorsiva
costruisce una tabella a due colonne, in cui la prima colonna identifica
un nodo dell'albero, mentre la seconda identifica un predecessore di tale
nodo; quindi, fissato un nodo dell'albero, esiste una tupla per ogni suo
predecessore. Io non sono riuscito a farlo funzionare su MySQL 5.0, ma solo
su SQL Server 2005 Express; se avete qualche idea sul perché vi sarei
grato se mi contattaste via email.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| DMXGestione MySQL Script |
20/10/2006 0.23.18 |
DMXGestione.rar |
1552 |
- |
- |
Script/SQL |
Platform Independent |
MySQL 5.0 |
|
Uno scriptino SQL che crea e riempie con un po' di valori puramente inventati
uno schema relazionale del tipo progetti/reparti/impiegati; sentitevi liberi di
usarlo per effettuare le vostre prove di interrogazioni.
|
| Applicazione |
Data |
Nome file |
Dimensione (byte) |
Versione |
Licenza |
Categoria |
Sistema operativo |
Requisiti |
| XmlCMS |
04/08/2006 12.34.11 |
XmlCMS.dll |
40960 |
0.1 |
Freeware |
Libreria/CMS |
Windows 2000/XP/Server 2003/Vista |
.NET Framework 2.0 |
|
Libreria per la scrittura di pagine web guidate dai contenuti XML; è stata
utilizzata per la scrittura in damix.it. A breve, nella sezione Articoli,
sarà disponibile un tutorial dedicato all'utilizzo di tale libreria.
|