
    +6i	                     H   S r SSKrSSKrSSKJr  SSKrSSKJr  SS\S\	S\R                  4S jjr\S	:X  GaG  \R                  " S
S9r\R                  SSS9  \R!                  5       r\R$                  R'                  5       r\" S5      S-  \-  r\\ S3-  R+                  5       (       a  \rO\" S5      \-  r\\ S3-  r\\ S3-  r\R+                  5       (       d  \" S\ 35        \R4                  " S5         \" \S5      r\" \5      r\R>                  \:w  a,  \RA                  \5      r\" S\RC                  5        S35        O\" S\ 35        \RE                  \SSS9  \" S\RG                  5        35        gg! \ a  r\" S5        \" \5      r SrCNSrCff = f)uP  
Loads a location's roads GeoPackage, checks CRS, and reprojects
to an appropriate local UTM coordinate system for analysis.

✅ Features:
 - Works for any location (US states, countries, regions)
 - Auto-checks for missing files
 - Chooses a WGS84 UTM zone based on the location's centroid
 - Saves as {location}_roads_projected.gpkg
    N)Path)determine_utm_crspathlayerreturnc                    U(       a'  [        SU SU  S35        [        R                  " XS9nO%[        SU  S35        [        R                  " U 5      n[        S[        U5      S S35        [        S	UR                   35        U$ )
z,Load a GeoPackage layer into a GeoDataFrame.u   📦 Loading layer 'z' from z...)r   u   📦 Loading u   ✅ Loaded ,z
 features.zCRS: )printgpd	read_filelencrs)r   r   gdfs      #/data2/heatmap/scripts/load_gpkg.py	load_gpkgr      sy    $UG74&<=mmD.dV3'(mmD!	KC|:
./	E#''
J    __main__z;Load a location's roads GeoPackage and reproject if needed.)descriptionlocationz/Location name (e.g., alabama, belgium, france).)helpoutputgermanyz_roads.gpkgz_roads_projected.gpkgu   ❌ File not found:    roadsu<   ⚠️ Could not load 'roads' layer, trying default layer...u   🔁 Reprojected to local UTM (z).u   ✅ Already in target CRS: roads_projectedGPKG)r   driveru   💾 Saved projected layer to: )N)$__doc__argparsesyspathlibr   	geopandasr   scripts.crs_utilsr   strGeoDataFramer   __name__ArgumentParserparseradd_argument
parse_argsargsr   lowergermany_direxistsbase_dir
input_pathoutput_pathr
   exitr   	Exceptione
target_crsr   to_crs	to_stringto_fileresolve r   r   <module>r;      s  	  
   /
D 
 
0@0@ 
 z$$QF 
)Z[D}}""$H x.9,x7K
+..6688>H,xj44Jz)>??K $ZL12$
G, #3'J
ww*jj$/
0D0D0F/GrJK+J<89 KK#4VKD	+K,?,?,A+B
CDU 6  $LN
#$s   =	F F!FF!