U
    0d	                     @   s   d d Z dS )c           6   	   C   s  dd l }dd l}ddlm} ddlm} ddlm}m}m	}m
}m}m} ddlm} ddlm} dd l}dd l}dd l}ddlm} d}d	}d
}d}t| d t| }t|d t| }t| t| | | d } || d }!t| d t|! }"tt|
d }#td t|# |#dk r&d}|#dkr4d}|#dkrBd}|#dkrPd}|#dkr^d}|| |!|\}$}%td||  }&t|$|& }'|'}(|'|(kr|'})|)}*n|(})|)}*tdt|) d t|*  |)dkrd}+|+|* |) },t|+})t|,}*d}-d}-|j|"t|ddd|d }.d!|. d" |- }/t|/ |j|/}0||0 }1||1}2|2j\}3}4t|) t|* |2|)|*f}2|	d# t| d$ }5|2|5d% |$|%| |!fS )&N    )StringIO)Image)logexptanatanpiceil)latlontopixels)pixelstolatlon)getmapstaticcoords      i  x   ,   d   z
pixel areai,     i  i     i@     i*  widthheighti  'AIzaSyBO5HDklsIeFNmKMGDLoImadHH57eQ4c2k'AIzaSyDnM_35WfYwhJmTSPxyyiMIcYte65mPitc600x600	satellitefalse)centerzoomsizemaptypesensorscalez/https://maps.googleapis.com/maps/api/staticmap?z&key=/z/_static_map_large.pngPNG) urllib.parseurllib.requestior   PILr   mathr   r   r   r   r   r	   r
   r   osr   strprintabsintroundparse	urlencoderequesturlopenBytesIOreadopenr   resizesave)6fieldminlatfieldmaxlatfieldminlongfieldmaxlong
tileminlat
tilemaxlattileminlongtilemaxlongfieldiduid	fieldareaurllibr   r   r   r   r   r   r   r	   r
   r   r'   r)   r*   r   r   r"   maxsizebottom	upperleft
lowerright	centerlat
centerlongposition	pixelarealatlenlonglenZPixelsPerLatpixellatlenpixellonglenr   r   	new_width
new_heightapi_key	urlparamsurlf
image_fileimwidth1height1img_name r\   0/home/ankuromar296_gmail_com/gmap_image_large.pygmap_image_large   s     








r^   N)r^   r\   r\   r\   r]   <module>       