a
    DfK                  	   @  s  d dl mZ edkrd dlmZ d dlmZ d dlmZm	Z	 d dl
mZ d dlZd dlZd dlmZ d dlmZ d	d
 Zdd ZdZeeaeeg g g g g g ddatde dZdZdZdZ dZ!dZeee fee!fddddZ"de"_#e"j$edd d e	eee"tdde"j%_&e	eee"tdde"j'_&de"j(_)d e"j*_+d e"_,d e"_-d e"_.d e"_/eeg g g g g d Z0e"j1e0d!d"d#d$d%dd& e 2e" dS )'    )annotations__main__)curdoc)Figure)ColumnDataSourceCustomJS)get_providerN)Hotc                 C  s
   t   d S )N)update_image)attroldnew r   g/nfs/NAS7/SABIOD/METHODE/ermites/ermites_venv/lib/python3.9/site-packages/datashader/examples/raster.pyon_dims_change   s    r   c            	      C  s  t j} | d r| d sd S t| d d tjj}t| d d tjj}t| d d tjj}t| d d tjj	}t
j| d d | d d ||f||fd}|t}tj|td	d
}i }|jg|d< |g|d< |g|d< || g|d< || g|d< t|d d S )Nwidthheightxminr   yminxmaxymax)
plot_widthplot_heightx_rangey_rangeZlinear)Zcmaphowimagexydhdw   )dimsdatamaxraster_dataZboundsleftZbottomminrighttopdsZCanvasZrastertfZshader	   image_sourcestream)	Z	dims_datar   r   r   r   ZcanvasZaggimgZnew_datar   r   r   r
      s*    



r
   z./data/projected.tif)r   r   r   r   r   r   )r#   r#   a  
    var update_dims = function () {
        var new_data = {
            height: [plot.frame.height],
            width: [plot.frame.width],
            xmin: [plot.x_range.start],
            ymin: [plot.y_range.start],
            xmax: [plot.x_range.end],
            ymax: [plot.y_range.end]
        };
        dims.data = new_data;
    };

    if (typeof throttle != 'undefined' && throttle != null) {
        clearTimeout(throttle);
    }

    throttle = setTimeout(update_dims, 100, "replace");
    g?5^o_g5^ɞRAg\f_gX9RAiX  i  zpan,wheel_zoom)r   r   r   r   ZtoolsZblackZSTAMEN_TONER)alpha)Zplotr"   )codeargsF)r   r   r   r    r   r   r   r   r    r   )sourcer   r   r   r    r   Zdilate)3
__future__r   __name__Zbokeh.ior   Zbokeh.plottingr   Zbokeh.modelsr   r   Zbokeh.tile_providersr   ZrasterioZrioZ
datashaderr*   Zdatashader.transfer_functionsZtransfer_functionsr+   Zdatashader.colorsr	   r   r
   pathopenr%   dictr"   Z	on_changeZdims_jscoder   r   r   r   ZfigZbackground_fill_colorZadd_tiler   callbackr   ZaxisZvisibleZgridZgrid_line_alphaZmin_border_leftZmin_border_rightZmin_border_topZmin_border_bottomr,   Z
image_rgbaZadd_rootr   r   r   r   <module>   s^   

