Il programma

Il programma si presenta con una finestra divisa in tre parti, come mostra la Fig.2:

Per inserire i punti di controllo della curva, basta cliccare con il mouse nel ``foglio''. Appare così un punto blu al di sopra del quale viene collocato il numero del punto stesso.

È anche possibile spostare i punti di controllo dopo averli inseriti: per fare questo basta spostare il puntatore sul punto da spostare; in prossimità del punto il cursore cambia forma ed è quindi possibile cliccare, trascinare il punto e rilasciare il mouse nella nuova posizione desiderata.

Infine per eliminare un punto di controllo basta posizionarci il mouse sopra e cliccare col in tasto destro.

È possibile scegliere se disegnare la curva usando il metodo di de Casteljau o con la forma polinomiale di Bernstein, semplicemente selezionandolo dalla lista in alto.

La casella ``Auto Refresh'', quando selezionata, fa sì che la curva venga automaticamente ridisegnata quando subisce delle variazioni, altrimenti quando non attivata e possibile fare la stessa operazione cliccando sul tasto ``Refresh''.

Gli altri pulsanti svolgono le seguenti funzioni:

Intersect
trova le intersezioni di un segmento con la curva (dopo che entrambi sono stati impostati dall'utente);

Deg. Reduction
applica l'algoritmo di riduzione del numero di punti di controllo;

Guess
applica (quando il programma viene lanciato con una immagine) l'algoritmo di approssimazione della curva;

Reset
riporta il programma nello stato iniziale (cancella i punti di controllo e l'eventuale segmento)

Show subcp
visualizza (in viola) i sotto-punti di controllo che corrispondono alla curva calcolata quando il parametro varia tra il valore indicato nella casella ``Start t'' e il valore indicato in ``End t''

Add line
permette di introdurre con un click del mouse gli estremi del segmento che poi verrà usato per eseguire l'algoritmo di intersezione; nella barra di stato compariranno in ordine le richieste per inserire il primo estremo e il secondo.
Infine c'è una casella (``Zoom'') dove è possibile impostare un fattore di scala per l'immagine. I calcoli sulle curve infatti vengono eseguiti in virgola mobile, con precisione double; le coordinate (intere) dei pixel sullo schermo vengono sempre scalate per il fattore di scala specificato in questa casella, mentre i punti calcolati prima di essere visualizzati vengono moltiplicati per lo stesso fattore di scala e arrotondati all'intero più vicino (un semplice troncamento farebbe perdere precisione).

Tocci Giovanni 2001-09-17