Vorrei elaborare un po' sul concetto di regione di interesse (Region Of Interest, o Point Of View, o qualunque altro nome vi piaccia).
Questo concetto rappresenta la parte di immagine che si vuole visualizzare.

Nel branch che ho pushato è rappresentato da quattro numeri:
        self.render(context, 50, 50, 250, 150)
quindi identifica un rettangolo.
In realtà dovrebbe includere anche il dato sulla rotazione, che è semplicemente un angolo (ma bisogna decidere rispetto a che punto si ruota). Direi che un rettangolo ruotato dovrebbe essere sufficientemente generale (almeno finché i monitor sono rettangolari).

È necessario introdurre questo concetto (in forma di classe probabilmente) perché una regione di interesse non corrisponde univocamente ad una matrice di trasformazione. Per ricavare la trasformazione necessaria a visualizzare una ROI è necessario conoscere la dimensione e l'aspect ratio della finestra, infatti la regione desiderata verrà zoomata fino alla dimensione della finestra e centrata nella stessa.

Una ROI potrà essere creata in (almeno) due modi:
- ricavandola da un oggetto dell'SVG
- interpolando tra due ROI (durante le animazioni)

Il ciclo di vita potrebbe essere questo:
- il parser SVG ricava le ROI dagli ID degli "oggetti interessanti"
- l'animatore ricava le ROI intermedie da usare nelle transizioni
- il controllore decide istante per istante quale ROI visualizzare
- il renderer mette a schermo la porzione di immagine corrispondente.

Okay, vi ho annoiati abbastanza.

ciao,
Andrea

_______________________________________________
Mailing list: https://launchpad.net/~a4-dev
Post to     : a4-dev@lists.launchpad.net
Unsubscribe : https://launchpad.net/~a4-dev
More help   : https://help.launchpad.net/ListHelp

Rispondere a