
    nj                         S SK r  S SKrS SKJr  S rS r\ R                  4S jr
\S:X  a#  \ R                  " \
" \ R                  5      5        gg! \ a    \" S5        \ R                  " S5         Nhf = f)	    Nz%Module FFT not found, cannot continue   )gdalc                  0    [        S5        [        S5        g)NzCUsage: fft.py [-inv] [-of out_format] [-ot out_type] infile outfile    )print     S/var/www/html/pdf-tiff/venv/lib/python3.13/site-packages/osgeo_utils/samples/fft.pyUsager   -   s    	
OP	"Ir
   c                    U S:X  a  [         R                  $ U S:X  a  [         R                  $ U S:X  a  [         R                  $ U S:X  a  [         R                  $ U S:X  a  [         R
                  $ U S:X  a  [         R                  $ U S:X  a  [         R                  $ U S:X  a  [         R                  $ U S	:X  a  [         R                  $ U S
:X  a  [         R                  $ U S:X  a  [         R                  $ [         R                  $ )NByteInt16UInt16Int32UInt32Float32Float64CInt16CInt32CFloat32CFloat64)r   GDT_Byte	GDT_Int16
GDT_UInt16	GDT_Int32
GDT_UInt32GDT_Float32GDT_Float64
GDT_CInt16
GDT_CInt32GDT_CFloat32GDT_CFloat64)typs    r   	ParseTyper%   3   s    
f}}}	~~		~~										
	   	
	   ==r
   c                    S nS nSnS nSnSnU[        U 5      :  au  X   nUS:X  a  SnUc  [        R                  nO?US:X  a
  US-   nX   nO/US:X  a  US-   n[        X   5      nOUc  UnOUc  UnO
[	        5       $ US-   nU[        U 5      :  a  Mu  Uc
  [	        5       $ Uc
  [	        5       $ Uc  [        R
                  n[        R                  " U[        R                  5      n[        R                  " U5      n	U	R                  UUR                  UR                  UR                  U5      n
[        SUR                  S-   5       H{  nUR                  U5      nU
R                  U5      nUR                  SS5      nUS:X  a  [         R"                  " U5      nO[         R$                  " U5      nUR'                  U5        M}     g)	NGTiffforwardr   z-invinversez-ofz-otr   )lenr   r   r%   r   r"   OpenGA_ReadOnlyGetDriverByNameCreateRasterXSizeRasterYSizeRasterCountrangeGetRasterBandReadAsArrayFFTfft2dinverse_fft2d
WriteArray)argvinfileoutfiledriver_namer$   transformationiarg	indataset
out_driver
outdatasetiBandinbandoutbanddatadata_trs                   r   mainrH   M   s   FGK
CN 	
A
c$i-g&=&N{&&E\AA'KE\AADG$C ^F_G 7NE5 c$i-8 ~ww
{		&$"2"23I%%k2J""J q)//!34((/**51!!!Q'Y&iioG''-G7# 5 r
   __main__)sysr5   ModuleNotFoundErrorr   exitosgeor   r   r%   r9   rH   __name__r	   r
   r   <module>rO      s{   B  
4 hh BJ zHHT#((^ [  	
12HHQKs   A  A32A3