function [a,b,c]=metaShape(I,uhel1,uhel2,ff)
%funkce vyrvori z obrazku I soubor metasablon ve fft a,b,c,d,.... => vystupni
%obraz bude mensi o (opsany ctverec 1.4142 vetsi nez vystup) nez vstupni obraz
%%%promenna ff =1 -> vraci parametry abc ve furierove transformaci
%%%         ff=0  -> vraci parametry abc 
%a=
%b=()
%c=
%d=

    interval=abs((uhel1-uhel2)/2);
    P=metaShapeRot(I,uhel1,uhel2,interval);
    Pf=fft2(P);
%%%odsud to staci odkomentovat a funguje pyramida

    interval=interval/2;
    u1=uhel1;
    u2=uhel1+(2*interval);
    

    for i=1:3
        fprintf('PP delam %i\n',u1)
        p=metaShapeRot(I,u1,u2,interval);%Pyramida
        PP(i,:,:)=p;
        PPf(i,:,:)=fft2(p);
        u1=u1+interval;
        u2=u2+interval;
    end
    
    
    interval=interval/2;
    u1=uhel1;
    u2=u1+(2*interval);
    

    for i=1:7
        fprintf('PPP delam %i\n',u1)
        p=metaShapeRot(I,u1,u2,interval);%Pyramida
        PPP(i,:,:)=p;
        PPPf(i,:,:)=fft2(p);
        u1=u1+interval;
        u2=u2+interval;
    end
    
    if(ff==1)
        a=Pf;
        b=PPf;
        c=PPPf;
    else
        a=P;
        b=PP;
        c=PPP;
    end