kopia lustrzana https://github.com/openmaptiles/openmaptiles
feat: add charging station to car POIs (#1544)
Adding charging station to class `fuel`. Co-authored-by: Christopher Beddow <cbeddow> Co-authored-by: Tomas Pohanka <TomPohys@gmail.com>pull/1589/head^2
rodzic
3cf77e2a54
commit
e61442c49d
|
@ -18,6 +18,7 @@ def_poi_mapping_amenity: &poi_mapping_amenity
|
|||
- biergarten
|
||||
- bus_station
|
||||
- cafe
|
||||
- charging_station
|
||||
- cinema
|
||||
- clinic
|
||||
- college
|
||||
|
|
Plik binarny nie jest wyświetlany.
Przed Szerokość: | Wysokość: | Rozmiar: 1.7 MiB Po Szerokość: | Wysokość: | Rozmiar: 1.7 MiB |
|
@ -106,6 +106,8 @@ layer:
|
|||
subclass: ['castle', 'ruins']
|
||||
atm:
|
||||
subclass: ['atm']
|
||||
fuel:
|
||||
subclass: ['fuel', 'charging_station']
|
||||
subclass:
|
||||
description: |
|
||||
Original value of either the
|
||||
|
|
|
@ -997,7 +997,8 @@
|
|||
"class",
|
||||
"car",
|
||||
"bicycle_parking",
|
||||
"fuel"
|
||||
"fuel",
|
||||
"charging_station"
|
||||
]
|
||||
],
|
||||
"order": 170
|
||||
|
|
|
@ -43,11 +43,11 @@ BEGIN
|
|||
-- (using name for parcel lockers is discouraged, see osm wiki)
|
||||
UPDATE osm_poi_point
|
||||
SET (name, tags) = (
|
||||
CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref')),
|
||||
tags || hstore('name', CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref')))
|
||||
TRIM(CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref'))),
|
||||
tags || hstore('name', TRIM(CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref'))))
|
||||
)
|
||||
WHERE (full_update OR osm_id IN (SELECT osm_id FROM poi_point.osm_ids))
|
||||
AND subclass = 'parcel_locker'
|
||||
AND subclass IN ('parcel_locker', 'charging_station')
|
||||
AND name = ''
|
||||
AND COALESCE(tags -> 'brand', tags -> 'operator') IS NOT NULL;
|
||||
|
||||
|
|
|
@ -36,6 +36,19 @@ $$
|
|||
AND funicular = 'yes'
|
||||
AND subclass = 'station';
|
||||
|
||||
-- Parcel locker and charging_station without name
|
||||
-- use either brand or operator and add ref if present
|
||||
-- (using name for parcel lockers is discouraged, see osm wiki)
|
||||
UPDATE osm_poi_polygon
|
||||
SET (name, tags) = (
|
||||
TRIM(CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref'))),
|
||||
tags || hstore('name', TRIM(CONCAT(COALESCE(tags -> 'brand', tags -> 'operator'), concat(' ', tags -> 'ref'))))
|
||||
)
|
||||
WHERE (full_update OR osm_id IN (SELECT osm_id FROM poi_polygon.osm_ids))
|
||||
AND subclass IN ('parcel_locker', 'charging_station')
|
||||
AND name = ''
|
||||
AND COALESCE(tags -> 'brand', tags -> 'operator') IS NOT NULL;
|
||||
|
||||
UPDATE osm_poi_polygon
|
||||
SET tags = update_tags(tags, geometry)
|
||||
WHERE (full_update OR osm_id IN (SELECT osm_id FROM poi_polygon.osm_ids))
|
||||
|
|
|
@ -28,4 +28,28 @@
|
|||
<tag k="amenity" v="parcel_locker"/>
|
||||
<tag k="operator" v="OpenMapTiles Parcel Locker"/>
|
||||
</node>
|
||||
<node id="600007" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="35.8" lon="-80.8">
|
||||
<tag k="amenity" v="charging_station"/>
|
||||
<tag k="name" v="OpenMapTiles Charging Station"/>
|
||||
<tag k="brand" v="OpenMapTiles Charging Station Brand"/>
|
||||
</node>
|
||||
<node id="600008" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="34.0" lon="-80.0" />
|
||||
<node id="600009" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="34.1" lon="-80.0" />
|
||||
<node id="600010" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="34.1" lon="-80.1" />
|
||||
<node id="600011" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="34.0" lon="-80.1" />
|
||||
</node>
|
||||
<node id="6000012" visible="true" timestamp="2019-01-01T00:00:00Z" version="1" lat="35.9" lon="-80.9">
|
||||
<tag k="amenity" v="charging_station"/>
|
||||
<tag k="name" v="OpenMapTiles Charging Station"/>
|
||||
<tag k="operator" v="OpenMapTiles Charging Station Operator"/>
|
||||
</node>
|
||||
<way id="6000" timestamp="2019-01-01T00:00:00Z" version="1" visible="true">
|
||||
<nd ref="600008" />
|
||||
<nd ref="600009" />
|
||||
<nd ref="600010" />
|
||||
<nd ref="600011" />
|
||||
<nd ref="600008" />
|
||||
<tag k="amenity" v="charging_station"/>
|
||||
<tag k="brand" v="OpenMapTiles Charging Station Brand"/>
|
||||
</way>
|
||||
</osm>
|
||||
|
|
|
@ -195,6 +195,20 @@ BEGIN
|
|||
IF cnt <> 1 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'import', 'osm_poi_point parcel_locker with name like "OpenMapTiles Parcel Locker PL00%" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
|
||||
-- verify that charging stations are imported with correct name which can come from tags like brand or operator and can contain ref
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_point
|
||||
WHERE subclass = 'charging_station'
|
||||
AND tags->'name' = 'OpenMapTiles Charging Station';
|
||||
IF cnt <> 2 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'import', 'osm_poi_point charging_station with name "OpenMapTiles Charging Station" expected 2, got ' || cnt);
|
||||
END IF;
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_polygon
|
||||
WHERE subclass = 'charging_station'
|
||||
AND tags->'name' = 'OpenMapTiles Charging Station Brand';
|
||||
IF cnt <> 1 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'import', 'osm_poi_polygon charging_station with name "OpenMapTiles Charging Station Brand" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
|
||||
END;
|
||||
|
||||
|
|
|
@ -98,7 +98,7 @@ BEGIN
|
|||
WHERE subclass = 'parcel_locker'
|
||||
AND tags->'name' like 'OpenMapTiles Parcel Locker%';
|
||||
IF cnt <> 2 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_point atm with name "OpenMapTiles ATM" expected 2, got ' || cnt);
|
||||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_point atm with name "OpenMapTiles Parcel Locker%" expected 2, got ' || cnt);
|
||||
END IF;
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_point
|
||||
WHERE subclass = 'parcel_locker'
|
||||
|
@ -107,6 +107,26 @@ BEGIN
|
|||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_point parcel_locker with name "Different operator PL001" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
|
||||
-- for charging_station
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_point
|
||||
WHERE subclass = 'charging_station'
|
||||
AND tags->'name' = 'OpenMapTiles Charging Station';
|
||||
IF cnt <> 1 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_point charging_station with name "OpenMapTiles Charging Station" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_point
|
||||
WHERE subclass = 'charging_station'
|
||||
AND tags->'name' = 'OpenMapTiles Charging Station Brand';
|
||||
IF cnt <> 1 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_point charging_station with name "OpenMapTiles Charging Station Brand" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
SELECT COUNT(*) INTO cnt FROM osm_poi_polygon
|
||||
WHERE subclass = 'charging_station'
|
||||
AND tags->'name' = 'OpenMapTiles Charging Station';
|
||||
IF cnt <> 1 THEN
|
||||
INSERT INTO omt_test_failures VALUES(600, 'update', 'osm_poi_polygon charging_station with name "OpenMapTiles Charging Station" expected 1, got ' || cnt);
|
||||
END IF;
|
||||
|
||||
END;
|
||||
|
||||
$$;
|
||||
|
|
|
@ -15,5 +15,18 @@
|
|||
<tag k="brand" v="Different operator"/>
|
||||
<tag k="ref" v="PL001"/>
|
||||
</node>
|
||||
<node id="600007" visible="true" timestamp="2020-01-02T00:00:00Z" version="1" lat="35.8" lon="-80.8">
|
||||
<tag k="amenity" v="charging_station"/>
|
||||
<tag k="brand" v="OpenMapTiles Charging Station Brand"/>
|
||||
</node>
|
||||
<way id="6000" timestamp="2020-01-02T00:00:00Z" version="1" visible="true">
|
||||
<nd ref="600008" />
|
||||
<nd ref="600009" />
|
||||
<nd ref="600010" />
|
||||
<nd ref="600011" />
|
||||
<nd ref="600008" />
|
||||
<tag k="amenity" v="charging_station"/>
|
||||
<tag k="name" v="OpenMapTiles Charging Station"/>
|
||||
</way>
|
||||
</modify>
|
||||
</osmChange>
|
||||
|
|
Ładowanie…
Reference in New Issue