Add survey markers layer
This commit is contained in:
parent
4ac53a4733
commit
8cd1ee414d
5 changed files with 92 additions and 0 deletions
37
layers/survey-markers/get_data.sh
Executable file
37
layers/survey-markers/get_data.sh
Executable file
|
|
@ -0,0 +1,37 @@
|
|||
#!/bin/sh
|
||||
|
||||
# TODO: use https://geodesy.noaa.gov/pub/DS_ARCHIVE/BETA_PRODUCTS/ instead
|
||||
# I should have used this in the first place, but it took me a long time to find
|
||||
|
||||
mkdir -p data
|
||||
|
||||
mkdir -p tmp
|
||||
cd tmp
|
||||
for state in $(curl https://geodesy.noaa.gov/cgi-bin/sf_archive.prl | grep "<option" | cut -d '"' -f2); do
|
||||
lowercase_state=$(echo $state | tr '[:upper:]' '[:lower:]')
|
||||
curl -o $state.zip "https://geodesy.noaa.gov/cgi-bin/sf_archive.prl?StateSelected=${state}&CompressType=Zipped"
|
||||
unzip $state.zip
|
||||
ogr2ogr -f GeoJSON ../data/$lowercase_state.geojson $lowercase_state.shp
|
||||
sed -i '/^"crs":/d' ../data/$lowercase_state.geojson # TODO: handle this projection properly
|
||||
done
|
||||
cd ..
|
||||
rm -r tmp
|
||||
|
||||
# hack hack hack
|
||||
#
|
||||
# If I write this to one big file, I can't take advantage of any lazy loading
|
||||
# for performance reasons, so I'm constrained to having a bunch of files. I
|
||||
# can't programmatically import those, since es6 imports don't allow for that.
|
||||
# So, codegen it is (and fairly gross codegen at that!).
|
||||
truncate -s 0 states.js
|
||||
for file in ./data/*; do
|
||||
basename=$(basename $file .geojson)
|
||||
echo "import _$basename from '$file?url';" >> states.js
|
||||
done
|
||||
echo >> states.js
|
||||
echo "export default {" >> states.js
|
||||
for file in ./data/*; do
|
||||
basename=$(basename $file .geojson)
|
||||
echo " $basename: _$basename," >> states.js
|
||||
done
|
||||
echo "};" >> states.js
|
||||
Loading…
Add table
Add a link
Reference in a new issue