return new BiLinearFloatInterpolation( rasterData ); } else if ( rasterData.getDataType() == DataType.SHORT ) { return new BiLinearShortInterpolation( rasterData, false ); } else if ( rasterData.getDataType() == DataType.USHORT ) { return new BiLinearShortInterpolation( rasterData, true ); } else { throw new UnsupportedOperationException( "no bilinear interpolation implementation for "