changed source from geojson to vector tiles

pull/71/head
tomasz t 2022-04-13 19:35:20 +02:00
rodzic 98c86e0d43
commit a75bbc859c
8 zmienionych plików z 127 dodań i 29 usunięć

Wyświetl plik

@ -35,6 +35,8 @@ jobs:
set -e
cd /home/${{ secrets.SSH_USER }}/aed-mapa-dev/
git pull
cp /home/${{ secrets.SSH_USER }}/aed-mapa-dev/scripts/update_pbf.sh /home/aeduser/update_pbf.sh
cp /home/${{ secrets.SSH_USER }}/aed-mapa-dev/scripts/download_dev.sh /home/aeduser/download_dev.sh
rm -rf /home/${{ secrets.SSH_USER }}/temp_deploy_dev/
mkdir /home/${{ secrets.SSH_USER }}/temp_deploy_dev/
rsync --recursive \

Wyświetl plik

@ -35,6 +35,8 @@ jobs:
set -e
cd /home/${{ secrets.SSH_USER }}/aed-mapa/
git pull
cp /home/${{ secrets.SSH_USER }}/aed-mapa/scripts/update_pbf.sh /home/aeduser/update_pbf.sh
cp /home/${{ secrets.SSH_USER }}/aed-mapa-dev/scripts/download_prod.sh /home/aeduser/download_prod.sh
rm -rf /home/${{ secrets.SSH_USER }}/temp_deploy_prod/
mkdir /home/${{ secrets.SSH_USER }}/temp_deploy_prod/
rsync --recursive \

Wyświetl plik

@ -0,0 +1,8 @@
#!/bin/bash
python3 /home/aeduser/aed-mapa-dev/download_data.py /home/aeduser/data_dev/ /home/aeduser/
cp /home/aeduser/data_dev/aed_poland.ods /var/www/dev/aed_poland.ods
cp /home/aeduser/data_dev/aed_poland.geojson /var/www/dev/aed_poland.geojson
cp /home/aeduser/data_dev/aed_poland_metadata.json /var/www/dev/aed_poland_metadata.json
cp /home/aeduser/data_dev/aed_poland.csv /var/www/dev/aed_poland.csv

Wyświetl plik

@ -0,0 +1,8 @@
#!/bin/bash
python3 /home/aeduser/aed-mapa/download_data.py /home/aeduser/data_prod/ /home/aeduser/
cp /home/aeduser/data_prod/aed_poland.ods /var/www/html/aed_poland.ods
cp /home/aeduser/data_prod/aed_poland.geojson /var/www/html/aed_poland.geojson
cp /home/aeduser/data_prod/aed_poland_metadata.json /var/www/html/aed_poland_metadata.json
cp /home/aeduser/data_prod/aed_poland.csv /var/www/html/aed_poland.csv

44
scripts/readme.md 100644
Wyświetl plik

@ -0,0 +1,44 @@
gdal installation
```bash
sudo add-apt-repository ppa:ubuntugis/ppa
sudo apt update
apt list --upgradable
sudo apt install gdal-bin
ogrinfo --version
```
ogr config for pbf driver:
edited section for points
```text
[points]
# common attributes
osm_id=yes
osm_version=no
osm_timestamp=yes
osm_uid=no
osm_user=no
osm_changeset=no
# keys to report as OGR fields
#attributes=name,barrier,highway,ref,address,is_in,place,man_made
# keys that, alone, are not significant enough to report a node as a OGR point
unsignificant=created_by,converted_by,source,time,ele,attribution
# keys that should NOT be reported in the "other_tags" field
ignore=created_by,converted_by,source,time,ele,note,todo,openGeoDB:,fixme,FIXME
# uncomment to avoid creation of "other_tags" field
#other_tags=no
# uncomment to create "all_tags" field. "all_tags" and "other_tags" are exclusive
all_tags=yes
```
tippecanoe installation:
```bash
sudo apt-get install build-essential libsqlite3-dev zlib1g-dev
git clone https://github.com/mapbox/tippecanoe.git
cd tippecanoe/
make -j
make install
sudo make install
tippecanoe --version
```

Wyświetl plik

@ -0,0 +1,40 @@
#!/bin/bash
set -e
cp filtered.pbf filtered.pbf.bak
# update the pbf with new data
pyosmium-up-to-date -v --size 10000 filtered.pbf
# filter updated pbf to just nodes that interest us (again) since updates add other stuff
osmosis --read-pbf filtered.pbf --node-key-value keyValueList="emergency.defibrillator" --write-pbf filtered2.pbf compress=none
mv filtered2.pbf filtered.pbf
date
# convert to geojson
ogr2ogr -f GeoJSON defibrillators.geojson -lco RFC7946=YES filtered.pbf points --config OSM_CONFIG_FILE /home/aeduser/osmconf.ini
cp /home/aeduser/defibrillators.geojson /var/www/html/defibrillators.geojson
date
# converting geojson to vetor tiles as dir
#/usr/local/bin/tippecanoe --output-to-directory=/var/www/mvt-staging/ --force --layer=defibrillators --maximum-zoom=16 --cluster-distance=20 -r1 /home/aeduser/defibrillators.geojson
/usr/local/bin/tippecanoe --output-to-directory=/var/www/mvt-staging-clustered/ --force --layer=defibrillators --maximum-zoom=12 --cluster-distance=20 -r1 /home/aeduser/defibrillators.geojson
/usr/local/bin/tippecanoe --output-to-directory=/var/www/mvt-staging-unclustered/ --force --layer=defibrillators --minimum-zoom=13 --maximum-zoom=13 -r1 /home/aeduser/defibrillators.geojson
date
echo "rsync"
#rsync --recursive --delete /var/www/mvt-staging/ /var/www/mvt/
rsync --recursive --exclude 'metadata.json' /var/www/mvt-staging-clustered/ /var/www/mvt/
rsync --recursive --exclude 'metadata.json' /var/www/mvt-staging-unclustered/ /var/www/mvt/
date

Wyświetl plik

@ -103,16 +103,11 @@ map.on('click', 'clustered-circle', function (e) {
layers: ['clustered-circle']
});
var clusterId = features[0].properties.cluster_id;
map.getSource('aed-locations').getClusterExpansionZoom(
clusterId,
function (err, zoom) {
if (err) return;
map.easeTo({
center: features[0].geometry.coordinates,
zoom: zoom
});
}
);
var zoom = map.getZoom();
map.easeTo({
center: features[0].geometry.coordinates,
zoom: zoom + 2
});
});
map.on('load', (e) => {
@ -134,6 +129,7 @@ map.on('load', (e) => {
});
map.on('click', 'unclustered', function (e) {
console.log(e.features[0].properties);
if (e.features[0].properties !== undefined) {
let properties = {
action: "showDetails",

Wyświetl plik

@ -1,8 +1,6 @@
{
"version": 8,
"metadata": {
"maputnik:renderer": "mbgljs"
},
"metadata": {"maputnik:renderer": "mbgljs"},
"center": [20, 52],
"zoom": 6,
"sources": {
@ -15,21 +13,18 @@
],
"tileSize": 256,
"maxzoom": 19,
"paint": {
"raster-fade-duration": 100
}
"paint": {"raster-fade-duration": 100}
},
"aed-locations": {
"type": "geojson",
"data": "https://aed.openstreetmap.org.pl/dev/aed_poland.geojson",
"cluster": true,
"clusterRadius": 30,
"maxzoom": 15
"type": "vector",
"tiles": ["https://aed.openstreetmap.org.pl/mvt/{z}/{x}/{y}.pbf"],
"maxzoom": 13
}
},
"glyphs": "https://fonts.openmaptiles.org/{fontstack}/{range}.pbf",
"sprite": "https://aed.openstreetmap.org.pl/dev/map_style/sprite",
"layers": [{
"glyphs": "https://fonts.openmaptiles.org/{fontstack}/{range}.pbf",
"layers": [
{
"id": "background",
"type": "raster",
"source": "raster-tiles",
@ -40,6 +35,7 @@
"id": "unclustered",
"type": "symbol",
"source": "aed-locations",
"source-layer": "defibrillators",
"filter": ["!", ["has", "point_count"]],
"layout": {
"icon-image": "marker_default",
@ -51,10 +47,12 @@
"id": "clustered-circle",
"type": "circle",
"source": "aed-locations",
"source-layer": "defibrillators",
"filter": ["has", "point_count"],
"layout": {"visibility": "visible"},
"paint": {
"circle-color": "rgba(0,145,64, 0.85)",
"circle-radius": 16,
"circle-radius": 12,
"circle-stroke-color": "rgba(245, 245, 245, 0.88)",
"circle-stroke-width": 2
}
@ -63,16 +61,16 @@
"id": "clustered-label",
"type": "symbol",
"source": "aed-locations",
"source-layer": "defibrillators",
"filter": ["has", "point_count"],
"layout": {
"text-field": "{point_count_abbreviated}",
"text-field": "{point_count}",
"text-font": ["Open Sans Bold"],
"text-size": 12,
"text-letter-spacing": 0.05
"text-letter-spacing": 0.05,
"visibility": "visible"
},
"paint": {
"text-color": "#f5f5f5"
}
"paint": {"text-color": "#f5f5f5"}
}
],
"id": "aed_map_style"