%------------------------------------------------------------------------
%| capturaEntrelazado
%------------------------------------------------------------------------
%| Script que captura todos los parmetros del entrelazado
%-------------------------------------------------------------------------
%| Autor: Cesar Delgado
%| Fecha: 19-Abril-2.004
%-------------------------------------------------------------------------
%1.- Capturamos Valores
%-----------------------
Entrelazado(pFILA)=round(str2num(get(paramTX(5,1),'String')));
Entrelazado(pCOL)=round(str2num(get(paramTX(5,2),'String')));
% 2.- Validamos Valores
%----------------------
% >>>>> 2.1.- Posibles valores para filas y columnas
aux = [1 2 4 5 7 10 14 20 28 35 70 140]; % 140 = 5 * 2 * 2 * 7
% >>>>>> 2.2.- Si FILAS x COLUMAS != 140, buscamos los
% valores ms apropiados dentro de los posibles
%--------------------------------------------------------------
% Procedimiento de validacin:
% a) Tomamos como partida el valor recien modificado
% b) Buscamos, dentro de los posibles valores, aquel
% al que ms se parece (Cociente=1)
% c) Se lo asignamos
% d) El nmero restante ser el cociente 140/calculado
%---------------------------------------------------------------
if (Entrelazado(pCOL)*Entrelazado(pFILA)) ~= 140,
%%%% Parmetro del Entrelazado de Valor mnimo (filas o columnas)
switch evento,
case 14, %%% Fila
posi(1) = Entrelazado(pFILA);
case 15, %%% Columna
posi(1) = Entrelazado(pCOL);
otherwise,
a = min(Entrelazado); pos(1) = a(1);
end;
%%%% Determinamos a quien se parece de los elementos posibles
% (Cociente = 1)
cociente = (aux./posi(1));
cociente = cociente-ones(1,length(cociente));
valMin = min(abs(cociente));
%%%% Determinamos su posicin dentro del array de posibles valores
a = find(abs(cociente) == valMin)
posi(2) = a(1); a = [];
%%%% Determinamos donde ubicar el valor calculado
a = find(Entrelazado == posi(1));
posi(3) = a(1);
a = [];
%%%% Asignamos valores
Entrelazado(posi(3)) = aux(posi(2));
Entrelazado((posi(3)==1)+1) = 140/Entrelazado(posi(3));
end;
% >>>>>> 2.3.- Ponemos los nuevos valores en los editables
set(paramTX(5,1),'String',num2str(Entrelazado(pFILA)));
set(paramTX(5,2),'String',num2str(Entrelazado(pCOL)));
clear aux cociente posi a valMin