Funcionalidad de librería
La geolocalización de raster está basada en la posibilidad de aplicar transformaciones a un dataset. Se considera un dataset el conjunto de datos que forman las propiedades de un raster. Una de estas propiedades es su situación geográfica. Esta situación geográfica está almacenada como una matriz de transformación afín que es utilizada para su visualización dentro de la vista. Cuando un raster es cargado por primera vez tiene la información geográfica contenida en su cabecera o fichero de georreferenciación. Esta información es la que se usa para construir la transformación afín. Más adelante puede ser modificada por el usuario con esta herramienta.
La llamada setAffineTransform del interfaz IRasterDataSource es la que se encarga de asignar la nueva transformación. IRasterDatasource es el interfaz que implementan fuentes de datos de la librería de raster. En este caso MultiRasterDataset y CompositeDataset implementan este interfaz. Ambos están compuestos por datasets más simples. MultiRasterDataset es una colección de RasterDataset y CompositeDataset es una colección de MultiRasterDataset. Al ser asignadas las transformaciones se encargaran de recorrer todos los dataset simples por los que están compuestos y asignarles a cada uno de ellos la transformación correspondiente.