o ZB¶dä_ã@s´ddlZddlZddlmZddlZddlZddlZddlZddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlmZddlZe ¡Zdd„Zdd„Zdd „ZdS) éN)ÚPolygon)ÚgdalcCsZt d|¡ d¡}t| d¡dƒd}|d}t| d¡dƒd}|d}||||fS)Nú$[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]rú-éèéÐé)ÚreÚsearchÚgroupÚintÚsplit)ÚentradaÚrasterÚ coordenadasÚxminÚxmaxÚymaxÚymin©rú/FACIL_OPTIMO_DTM_regex_DAG.pyÚ get_boundss   rcCs*|d|g}|d|}t d|¡ d¡}t| d¡dƒd}|d}t| d¡dƒd} | d} t|d ƒ}t| d ƒ} |d |d } d d i} dddœ} d di}dddd|| dœ}| ddœ}| | ¡| | ¡| |¡| |¡| |¡t |¡}t   |¡}|  ¡}|j }|j }|j}dS)Nz*.Ú.rrrrrrédZ output3x3ú_DTM.tifÚtypez filters.mergezfilters.expressionzClassification == 2)rÚ expressionzfilters.delaunayzfilters.facerastergð?i˜)rÚ resolutionÚwidthÚheightZorigin_xZorigin_yzwriters.raster)Úfilenamer)r r r r r ÚstrÚappendÚjsonÚdumpsÚpdalÚPipelineÚexecuteÚarraysÚmetadataÚlog)ZdirectoriorigenZdirectoriodestinoÚformatoÚ rastertiffZjsonDTMÚarchivorrrrrZdestinoÚmergerÚdelaunayÚ facerasterÚwritersZpeticionÚpipelineÚcountr(r)r*rrrÚpdal_merge_and_DTM3x3,sL   ÿþÿú þ        r4c Csòz>tdttj ¡ƒddƒ}|t|ƒddkr,d}| |¡| ¡t|ƒWdSzt  d|¡t  d|¡Wnd }t|ƒ| |¡Yt j d |d |dd d t  d|¡}|D]‰}zqt  d|¡ d¡}t| d¡dƒd}|d} t| d¡dƒd} | d} d|d|}| |¡t|ƒ|D]‹} zit  d| ¡ d¡} t|  d¡dƒd}|d}t|  d¡dƒd}|d}t||ƒdkr t| |ƒdkr d|d| dd|dd}| |¡t|ƒt j d|d| d|dd d Wq£ty.d}t|ƒ| |¡t ¡| t ¡¡Yq£wz!| dd¡d}| dd¡d}td|dd|d||ƒWn4ty„t j d|d|dd d d|d}t|ƒ| |¡t ¡| t ¡¡YWqdwt d|d|d ¡}d!|d|d"}| |¡t||ƒ}td#|dƒtj||d$|d%d |d&d&d'}d||d(}| |¡t j d|d|dd d Wqdtyî| t ¡¡t ¡Yqdwz.t j d|d)|d d t d*¡t j d|d+|d d t j d,|d-d d WWdSty?d.}t|ƒ| |¡t ¡| t ¡¡YWdSwtyxtd/ttj ¡ƒddƒ}t ¡| t ¡¡d0tt ¡tƒd1}| |¡| ¡YdSw)2NZ log_DTM_crop_z.txtÚwrú/z2Path entrada mal especificado. Ha de acabar en "/"z ./temporalDTMz./temporalDTM2u Ya están creadas las carpetas zmv z* ./temporalDTMT)Úshellrrrrrz3x3 para archivo ./temporalDTMzVecino ./temporalDTMz movido a Ú zmv ./temporalDTMz ./temporalDTM2zError moviendo vecino/srzmv ./temporalDTM2z/* ./temporalDTMz error durante dtm 3x3 raster z sigo z /output3x3rz ./temporalDTM2z _DTM.tif z rastertiff z.tifÚGTiffz EPSG:25830)ÚformatÚ cropToCutlineÚ outputBoundsÚsrcSRSÚdstSRSz.tif z/*.laz i,z/* zrm zoutput*z$ problema reorganizando directorios Zlog_error_DTM_crop_z --- z seconds --- ) Úopenr!ÚdatetimeÚnowÚlenÚwriteÚcloseÚprintÚosÚmkdirÚ subprocessÚrunÚlistdirr r r r r ÚabsÚ ExceptionÚ tracebackÚ print_excÚ format_excÚrsplitr4rÚOpenrÚWarpÚtimeÚsleepÚ start_time)rZsalidaÚcodigoÚfiler*Zarchivosr-rrrrrZvecinoZcoordenadasvecinoZ xminvecinoZ xmaxvecinoZ ymaxvecinoZ yminvecinor+r,Zinput_raster_originalÚboundsÚdsrrrÚ tifcortado_sÀ    $$ &€ ú"  ù     "ý  ú úrZ)Ú geopandasÚgpdÚfnmatchÚshapely.geometryrÚ shapefilerFr#r%rMÚlaspyÚlpÚnumpyÚnprHr@rSÚsysr ÚosgeorÚcsvrUrr4rZrrrrÚs*   3