SECONDO PROGETTO DI INTERFACCE - A.A. 2001-2002 - NUOVO ORDINAMENTO

SECONDO PROGETTO DI INTERFACCE - A.A. 2001-2002

NUOVO ORDINAMENTO

OBIETTIVO

Realizzare un'interfaccia per una applicazione che consente di scomporre l'interno di un poligono semplice in triangoli (triangolazione di un poligono semplice).

L'algoritmo usato nell'applicazione e' iterativo e genera i triangoli uno alla volta. Ad ogni passo esamina una terna di vertici del poligono. Se il triangolo definito da quei tre vertici cade completamente all'interno del poligono e non interseca altri triangoli gia' creati, allora crea il triangolo e lo aggiunge alla triangolazione. Prosegue finche' il poligono non e' stato completamente riempito da triangoli.

FUNZIONALITA' DELL'INTERFACCIA

L'interfaccia deve consentire le seguenti operazioni applicative:

  1. Disegno del poligono da parte dell'utente.

  2. Visualizzazione del poligono e della triangolazione (la quale puo' essere ancora incompleta ved. anche sotto). La grafica usata deve distinguere i lati del poligono dai lati dei triangoli creati.

  3. Esecuzione dell'algoritmo di triangolazione in modalita' diretta oppure a scorrimento manuale.
oltre ovviamente alle funzioni standard (uscita ecc.), e a tutte quelle che ritenete opportune. In ogni momento deve essere possibile: Nelle modalita' di scorrimento ad ogni passo vanno evidenziati:

Per le parti non specificate e' lasciata piena liberta' di scelta, purche' l'interfaccia risultante si comporti in modo ragionevole e prevedibile.

MATERIALE FORNITO

(1) Il sorgente java che implementa l'applicazione

TriPolig.java

La classe principale e' la classe TriPolig, che esporta i seguenti metodi pubblici:

(2) File di input

CONSIGLI E RACCOMANDAZIONI

La classe TriPolig contiene un "main" che legge un poligono e gestisce l'eccezione derivante da file inesistente o con formato sbagliato. Guardare il codice per gestire l'eccezione in modo analogo.

Questo e' un progetto di interfacce grafiche. Pertanto, sara' tenuto conto non solo del fatto che tutte le funzioni richieste siano presenti nell'interfaccia sviluppata, ma anche e di quanto facile e gradevole risulta l'uso dell'interfaccia stessa per l'utente.

MATERIALE DA CONSEGNARE

Le sorgenti java, su dischetto o per email. Solo se lo si ritiene necessario, brevissime istruzioni per l'uso dell'interfaccia, in testo ascii o html, su dischetto o per email. L'indirizzo di posta elettronica a cui spedire e' magillo@disi.unige.it. Indicare chiaramente nel messaggio il nome dei componenti del gruppo e l'elenco dei file inviati.