% *** ---------------------------------------------------------------------------------------- *** %
% ***| Funcion que copia la matriz flechas de la subimagen ('flechas_sub') en la de la       | *** %      
% ***| imagen completa ('flechas')                                                           | *** %
% ***|                                                                                       | *** %
% ***| 'margenes'[1 2 3 4] = [margen arriba, margen abajo, margen izquierda, margen derecha] | *** %
% *** ---------------------------------------------------------------------------------------- *** %

function flechas = adaptacion_flechas(flechas_sub,semilla,posicion,sem_rel,pos_rel,filas,columnas,margenes)

flechas = inf*ones(filas,columnas,2);

if semilla(1) <= posicion(1) & semilla(2) <= posicion(2)            % 'semilla' esquina en superior izquierda
    
    ini_fila = semilla(1) - margenes(1);              
    fin_fila = posicion(1) + margenes(2);
    ini_columna = semilla(2) - margenes(3);
    fin_columna = posicion(2) + margenes(4);
        
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,1) = flechas_sub(:,:,1) + semilla(1) - sem_rel(1);
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,2) = flechas_sub(:,:,2) + semilla(2) - sem_rel(2);   

elseif semilla(1) <= posicion(1) & posicion(2) <= semilla(2)        % 'semilla' esquina superior en derecha
    
    ini_fila = semilla(1) - margenes(1);
    fin_fila = posicion(1) + margenes(2);
    ini_columna = posicion(2) - margenes(3);
    fin_columna = semilla(2) + margenes(4);
    
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,1) = flechas_sub(:,:,1) + semilla(1) - sem_rel(1);
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,2) = flechas_sub(:,:,2) + posicion(2) - pos_rel(2);
            
elseif posicion(1) <= semilla(1) & posicion(2) <= semilla(2)        % 'semilla' esquina inferior en derecha
    
    ini_fila = posicion(1) - margenes(1);
    fin_fila = semilla(1) + margenes(2);
    ini_columna = posicion(2) - margenes(3);
    fin_columna = semilla(2) + margenes(4);
    
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,1) = flechas_sub(:,:,1) + posicion(1) - pos_rel(1);
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,2) = flechas_sub(:,:,2) + posicion(2) - pos_rel(2);
       
elseif posicion(1) <= semilla(1) & semilla(2) <= posicion(2)        % 'semilla' esquina inferior en izquierda
    
    ini_fila = posicion(1) - margenes(1);
    fin_fila = semilla(1) + margenes(2);
    ini_columna = semilla(2) - margenes(3);
    fin_columna = posicion(2) + margenes(4);
    
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,1) = flechas_sub(:,:,1) + posicion(1) - pos_rel(1);
    flechas(ini_fila:fin_fila,ini_columna:fin_columna,2) = flechas_sub(:,:,2) + semilla(2) - sem_rel(2);
   
end
