[styles] Optimize displaying of charging stations, handle implicit motorcars tagging and add motorcycles

Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
This commit is contained in:
Yannik Bloscheck
2025-12-22 13:50:45 +01:00
parent 6aed26c48e
commit 3c6a3bc9f7
28 changed files with 264 additions and 85 deletions

View File

@@ -42,10 +42,11 @@
<string name="type.amenity.gambling">Glücksspiel</string>
<string name="type.leisure.adult_gaming_centre">Spielhalle für Erwachsene</string>
<string name="type.leisure.amusement_arcade">Spielhalle für Unterhaltungsspiele</string>
<string name="type.amenity.charging_station">Ladestation</string>
<string name="type.amenity.charging_station.bicycle">Fahrrad-Ladestation</string>
<string name="type.amenity.charging_station.motorcar">Kfz-Ladestation</string>
<string name="type.amenity.charging_station.motorcar.small">Kfz-Ladestation</string>
<string name="type.amenity.charging_station.general">Ladestation</string>
<string name="type.amenity.charging_station.bicycle">Fahrräder</string>
<string name="type.amenity.charging_station.motorcycle">Motorräder</string>
<string name="type.amenity.charging_station.motorcar">Autos</string>
<string name="type.amenity.charging_station.small">Begrenzte Kapazität</string>
<string name="type.amenity.childcare">Kindertagesstätte</string>
<string name="type.amenity.cinema">Kino</string>
<string name="type.leisure.bowling_alley">Bowlingbahn</string>

View File

@@ -52,10 +52,11 @@
<string name="type.amenity.gambling">Gambling</string>
<string name="type.leisure.adult_gaming_centre">Adult Gaming Centre</string>
<string name="type.leisure.amusement_arcade">Arcade</string>
<string name="type.amenity.charging_station">Charging Station</string>
<string name="type.amenity.charging_station.bicycle">Bicycle Charging Station</string>
<string name="type.amenity.charging_station.motorcar">Car Charging Station</string>
<string name="type.amenity.charging_station.motorcar.small">Car Charging Point</string>
<string name="type.amenity.charging_station.general">Charging Station</string>
<string name="type.amenity.charging_station.bicycle">Bicycles</string>
<string name="type.amenity.charging_station.motorcycle">Motorcycles</string>
<string name="type.amenity.charging_station.motorcar">Cars</string>
<string name="type.amenity.charging_station.small">Limited Capacity</string>
<string name="type.amenity.childcare">Nursery</string>
<string name="type.amenity.cinema">Cinema</string>
<string name="type.amenity.studio">Media Studio</string>

View File

@@ -301,7 +301,7 @@ railway|crossing;197;
boundary|national_park;198;
deprecated:natural|wood|deciduous:01.2020;[natural=wood][wood=deciduous],[natural=wood][leaf_type=deciduous],[natural=wood][leaf_cycle=deciduous];x;name;int_name;199;landuse|forest|deciduous
waterway|dam;200;
amenity|charging_station|motorcar|small;[amenity=charging_station][motorcar?][!capacity],[amenity=charging_station][motorcar?][capacity=1],[amenity=charging_station][motorcar?][capacity=2];;name;int_name;201;
amenity|charging_station|small;[amenity=charging_station][motorcar?][!capacity],[amenity=charging_station][motorcar?][capacity=1],[amenity=charging_station][motorcar?][capacity=2],[amenity=charging_station][!capacity],[amenity=charging_station][capacity=1],[amenity=charging_station][capacity=2],;;name;int_name;201;
leisure|golf_course;202;
highway|service|bridge;[highway=service][bridge?];;name;int_name;203;
# ~250K usages.
@@ -405,12 +405,12 @@ highway|secondary|tunnel;[highway=secondary][tunnel?];;name;int_name;297;
# TODO: its a mismapping likely, if there is a bridge structure still, then it should be railway=disused.
railway|abandoned|bridge;[railway=abandoned][bridge?];;name;int_name;298;
man_made|lighthouse;299;
deprecated:highway|path|demanding_mountain_hiking:04.2024;[highway=path][sac_scale=demanding_mountain_hiking];x;name;int_name;300;highway|path|difficult
amenity|charging_station|motorcycle;[amenity=charging_station][motorcycle?];;name;int_name;300;
man_made|storage_tank;301;
man_made|silo;302;
power|generator;303;
highway|pedestrian|bridge;[highway=pedestrian][bridge?];;name;int_name;304;
amenity|charging_station|motorcar;[amenity=charging_station][motorcar?][capacity?];;name;int_name;305;
amenity|charging_station|motorcar;[amenity=charging_station][motorcar?][capacity?],[amenity=charging_station][motorcar?];;name;int_name;305;
natural|saddle;306;
mountain_pass;[mountain_pass];;name;int_name;307;
highway|raceway;308;
@@ -419,7 +419,7 @@ highway|primary_link|bridge;[highway=primary_link][bridge?];;name;int_name;310;
man_made|tower|communication;[man_made=tower][tower:type=communication];;name;int_name;311;
sport|equestrian;312;
tourism|information|office;[tourism=information][information=office];;name;int_name;313;
deprecated:highway|footway|hiking:04.2024;[highway=footway][sac_scale=hiking];x;name;int_name;314;highway|path
amenity|charging_station|carless;[amenity=charging_station][motorcar=not],[amenity=charging_station][motorcar=no];;name;int_name;314;
aeroway|gate;315;
# TODO: railway=preserved is deprecated in OSM, recommended mapping is railway:preserved=yes + railway=*
railway|preserved;316;
@@ -1192,7 +1192,7 @@ shop|tyres;1064;
craft|beekeeper;1065;
amenity|car_wash;1066;
amenity|veterinary;1067;
amenity|charging_station;1068;
amenity|charging_station|general;[amenity=charging_station];;name;int_name;1068;
amenity|childcare;1069;
craft|blacksmith;1070;
amenity|bicycle_parking;1071;
Can't render this file because it contains an unexpected character in line 7 and column 16.

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -558,8 +558,9 @@ area|z15-[amenity=marketplace],
area|z15-[office=diplomatic],
area|z15-[amenity=vehicle_inspection],
area|z15-[amenity=car_wash],
area|z15-[amenity=charging_station][motorcar?],
area|z15-[amenity=fuel],
area|z15-[amenity=charging_station][motorcar?],
area|z16-[amenity=charging_station],
area|z15-[amenity=motorcycle_parking],
area|z15-[amenity=bicycle_parking],
{fill-opacity: 1; fill-color: @general_area;}

View File

@@ -2398,18 +2398,28 @@ node|z17-[amenity=fuel],
node|z18-[amenity=fuel],
{font-size: 11;}
node|z15-[amenity=charging_station][motorcar?],
node|z16-[amenity=charging_station][motorcycle?],
node|z16-[amenity=charging_station][bicycle?],
node|z16-[amenity=charging_station][motorcar=not],
node|z16-[amenity=charging_station],
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-m.svg;}
node|z14[amenity=charging_station][motorcar?][!capacity],
node|z14[amenity=charging_station][motorcar?][capacity=1],
node|z14[amenity=charging_station][motorcar?][capacity=2],
{icon-image: none;}
node|z15-[amenity=charging_station][motorcar?][!capacity],
node|z15-[amenity=charging_station][motorcar?][capacity=1],
node|z15-[amenity=charging_station][motorcar?][capacity=2],
node|z16-[amenity=charging_station],
{icon-image: charging-point-m.svg;}
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
node|z14[amenity=charging_station][motorcar?],
{text-offset: 1;font-size: 10;icon-min-distance: 20;}
node|z15[amenity=charging_station][motorcar?],
{icon-min-distance: 20;}

View File

@@ -85,8 +85,12 @@ landuse-cemetery-christian # area z10- (also has icon z
=== 180
amenity-car_wash # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-general # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-fire_station # area z15- (also has icon z16-, caption(optional) z17-)
amenity-fuel # area z15- (also has icon z14-, caption(optional) z14-)

View File

@@ -374,13 +374,13 @@ tourism-attraction # icon z14- (also has captio
tourism-gallery # icon z15- (also has caption(optional) z15-)
=== 4300
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 4280
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z14- (also has caption(optional) z14-, area z15-)
=== 4270
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 4260
highway-services # icon z14- (also has caption(optional) z14-, area z13-)
=== 4250
@@ -424,13 +424,23 @@ highway-rest_area # icon z15- (also has captio
tourism-camp_site # icon z16- (also has caption(optional) z16-, area z13-)
tourism-caravan_site # icon z16- (also has caption(optional) z16-)
tourism-chalet # icon z16- (also has caption(optional) z16-)
=== 3850
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
=== 3800
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3752
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3751
amenity-charging_station-general # icon z16- (also has caption(optional) z16-, area z16-)
=== 3750
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3749
railway-subway_entrance # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-adana # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-algiers # icon z16- (also has caption(optional) z17-)
@@ -1640,13 +1650,13 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-gallery # caption(optional) z15- (also has icon z15-)
# === -5700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -5720
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z14- (also has icon z14-, area z15-)
# === -5730
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -5740
# highway-services # caption(optional) z14- (also has icon z14-, area z13-)
# === -5750
@@ -1690,13 +1700,23 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-camp_site # caption(optional) z16- (also has icon z16-, area z13-)
# tourism-caravan_site # caption(optional) z16- (also has icon z16-)
# tourism-chalet # caption(optional) z16- (also has icon z16-)
# === -6150
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# === -6200
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6248
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6249
# amenity-charging_station-general # caption(optional) z16- (also has icon z16-, area z16-)
# === -6250
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6251
# railway-subway_entrance # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-adana # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-algiers # caption(optional) z17- (also has icon z16-)

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -78,6 +78,7 @@ leisure-sports_centre-sport-volleyball # area z13- (also has icon z
leisure-sports_centre-sport-yoga # area z13- (also has icon z16-, caption(optional) z16-)
=== 190
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-grave_yard # area z10- (also has icon z17-, caption(optional) z17-)
amenity-grave_yard-christian # area z10- (also has icon z17-, caption(optional) z17-)
landuse-cemetery # area z10- (also has icon z14-, caption(optional) z15-)
@@ -85,9 +86,12 @@ landuse-cemetery-christian # area z10- (also has icon z
=== 180
amenity-car_wash # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-general # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-courthouse # area z15- (also has icon z17-, caption(optional) z17-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-fire_station # area z15- (also has icon z16-, caption(optional) z17-)
amenity-fuel # area z15- (also has icon z14-, caption(optional) z14-)
amenity-marketplace # area z15- (also has icon z16-, caption(optional) z16-)

View File

@@ -374,13 +374,13 @@ tourism-attraction # icon z14- (also has captio
tourism-gallery # icon z15- (also has caption(optional) z15-)
=== 4300
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 4280
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z14- (also has caption(optional) z14-, area z15-)
=== 4270
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 4260
highway-services # icon z14- (also has caption(optional) z14-, area z13-)
=== 4250
@@ -424,13 +424,23 @@ highway-rest_area # icon z14- (also has captio
tourism-camp_site # icon z13- (also has caption(optional) z13-, area z13-)
tourism-caravan_site # icon z13- (also has caption(optional) z13-)
tourism-chalet # icon z14- (also has caption(optional) z14-)
=== 3850
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
=== 3800
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
shop-car_repair-tyres # icon z15- (also has caption(optional) z15-)
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3752
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3751
amenity-charging_station-general # icon z16- (also has caption(optional) z16-, area z16-)
=== 3750
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3749
railway-subway_entrance # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-adana # icon z16- (also has caption(optional) z17-)
railway-subway_entrance-algiers # icon z16- (also has caption(optional) z17-)
@@ -1643,13 +1653,13 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-gallery # caption(optional) z15- (also has icon z15-)
# === -5700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -5720
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z14- (also has icon z14-, area z15-)
# === -5730
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -5740
# highway-services # caption(optional) z14- (also has icon z14-, area z13-)
# === -5750
@@ -1693,13 +1703,23 @@ leisure-swimming_pool-private # icon z17- (also has captio
# tourism-camp_site # caption(optional) z13- (also has icon z13-, area z13-)
# tourism-caravan_site # caption(optional) z13- (also has icon z13-)
# tourism-chalet # caption(optional) z14- (also has icon z14-)
# === -6150
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# === -6200
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# shop-car_repair-tyres # caption(optional) z15- (also has icon z15-)
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6248
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6249
# amenity-charging_station-general # caption(optional) z16- (also has icon z16-, area z16-)
# === -6250
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6251
# railway-subway_entrance # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-adana # caption(optional) z17- (also has icon z16-)
# railway-subway_entrance-algiers # caption(optional) z17- (also has icon z16-)

View File

@@ -349,8 +349,9 @@ area|z13-[highway=services],
area|z13-[highway=rest_area],
area|z13-[landuse=garages],
area|z15-[amenity=charging_station][motorcar?],
area|z15-[amenity=fuel],
area|z15-[amenity=charging_station][motorcar?],
area|z16-[amenity=charging_station],
area|z17-[amenity=vehicle_inspection],
area|z17-[amenity=car_wash],
area|z17-[amenity=motorcycle_parking],

View File

@@ -626,16 +626,28 @@ node|z17[amenity=fuel],
node|z18-[amenity=fuel],
{icon-image: fuel-m.svg;font-size: 14.5;}
node|z14-[amenity=charging_station][motorcar?][!capacity],
node|z14-[amenity=charging_station][motorcar?][capacity=1],
node|z14-[amenity=charging_station][motorcar?][capacity=2],
node|z15-[amenity=charging_station][motorcar?],
node|z16-[amenity=charging_station][motorcycle?],
node|z16-[amenity=charging_station][bicycle?],
node|z16-[amenity=charging_station][motorcar=not],
node|z16-[amenity=charging_station],
{icon-image: charging-point-m.svg;}
node|z14-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging-station-m.svg;}
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-s.svg;}
node|z15-[amenity=charging_station][motorcar?][capacity?],
{icon-image: charging_station-m.svg;}
node|z14[amenity=charging_station][motorcar?][!capacity],
node|z14[amenity=charging_station][motorcar?][capacity=1],
node|z14[amenity=charging_station][motorcar?][capacity=2],
{icon-image: none;}
node|z15-[amenity=charging_station][motorcar?][!capacity],
node|z15-[amenity=charging_station][motorcar?][capacity=1],
node|z15-[amenity=charging_station][motorcar?][capacity=2],
{icon-image: charging_station-small-m.svg;}
node|z14[amenity=charging_station][motorcar?],
{text-offset: 1;font-size: 12.25;icon-min-distance: 20;}
node|z15[amenity=charging_station][motorcar?],
{icon-min-distance: 20;font-size: 12.5;}

View File

@@ -33,8 +33,12 @@ amenity-parking-street_side-private # area z15- (also has icon z
=== 160
amenity-car_wash # area z17- (also has icon z17-, caption(optional) z17-)
amenity-charging_station-bicycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-carless # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-general # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcar # area z15- (also has icon z14-, caption(optional) z14-)
amenity-charging_station-motorcar-small # area z15- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-motorcycle # area z16- (also has icon z16-, caption(optional) z16-)
amenity-charging_station-small # area z15- (also has icon z15-, caption(optional) z16-)
amenity-fuel # area z15- (also has icon z12-, caption(optional) z12-)
amenity-vehicle_inspection # area z17- (also has icon z17-)
highway-rest_area # area z13- (also has icon z14-, caption(optional) z14-)

View File

@@ -170,17 +170,28 @@ aeroway-aerodrome-international # icon z7- (also has caption
place-town # caption z8-
=== 3250
amenity-charging_station-small # icon z15- (also has caption(optional) z16-, area z15-)
=== 3210
amenity-charging_station-motorcar # icon z14- (also has caption(optional) z14-, area z15-)
amenity-fuel # icon z12- (also has caption(optional) z12-, area z15-)
=== 3200
amenity-charging_station-motorcar-small # icon z16- (also has caption(optional) z16-, area z15-)
=== 3190
amenity-charging_station # icon z16- (also has caption(optional) z16-)
amenity-vending_machine-fuel # icon z17- (also has caption(optional) z17-)
=== 3153
amenity-charging_station-motorcycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3152
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-, area z16-)
=== 3151
amenity-charging_station-general # icon z16- (also has caption(optional) z16-, area z16-)
=== 3150
amenity-charging_station-carless # icon z16- (also has caption(optional) z16-, area z16-)
=== 3149
railway-station-subway-moscow # icon z11-15 (also has caption(optional) z15)
railway-station-subway-spb # icon z11-16 (also has caption(optional) z15-16)
=== 3100
@@ -528,9 +539,6 @@ natural-beach-gravel # caption z15- (also has are
natural-beach-sand # caption z15- (also has area z10-)
=== 900
amenity-charging_station-bicycle # icon z16- (also has caption(optional) z16-)
=== 850
historic-boundary_stone # icon z16- (also has caption(optional) z16-)
historic-gallows # icon z16- (also has caption(optional) z16-)
historic-pillory # icon z16- (also has caption(optional) z16-)
@@ -784,17 +792,28 @@ entrance-emergency # icon z19- (also has captio
# aeroway-aerodrome-international # caption(optional) z10- (also has icon z7-, area z10-)
# === -6700
# amenity-charging_station-small # caption(optional) z16- (also has icon z15-, area z15-)
# === -6790
# amenity-charging_station-motorcar # caption(optional) z14- (also has icon z14-, area z15-)
# amenity-fuel # caption(optional) z12- (also has icon z12-, area z15-)
# === -6800
# amenity-charging_station-motorcar-small # caption(optional) z16- (also has icon z16-, area z15-)
# === -6810
# amenity-charging_station # caption(optional) z16- (also has icon z16-)
# amenity-vending_machine-fuel # caption(optional) z17- (also has icon z17-)
# === -6847
# amenity-charging_station-motorcycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6848
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-, area z16-)
# === -6849
# amenity-charging_station-general # caption(optional) z16- (also has icon z16-, area z16-)
# === -6850
# amenity-charging_station-carless # caption(optional) z16- (also has icon z16-, area z16-)
# === -6851
# railway-station-subway-moscow # caption(optional) z15 (also has icon z11-15)
# railway-station-subway-spb # caption(optional) z15-16 (also has icon z11-16)
# === -6900
@@ -1056,9 +1075,6 @@ entrance-emergency # icon z19- (also has captio
# amenity-hospital # caption(optional) z15- (also has icon z15-)
# === -9000
# amenity-charging_station-bicycle # caption(optional) z16- (also has icon z16-)
# === -9150
# historic-boundary_stone # caption(optional) z16- (also has icon z16-)
# historic-gallows # caption(optional) z16- (also has icon z16-)
# historic-pillory # caption(optional) z16- (also has icon z16-)

View File

@@ -42,10 +42,11 @@
"type.amenity.gambling" = "Glücksspiel";
"type.leisure.adult_gaming_centre" = "Spielhalle für Erwachsene";
"type.leisure.amusement_arcade" = "Spielhalle für Unterhaltungsspiele";
"type.amenity.charging_station" = "Ladestation";
"type.amenity.charging_station.bicycle" = "Fahrrad-Ladestation";
"type.amenity.charging_station.motorcar" = "Kfz-Ladestation";
"type.amenity.charging_station.motorcar.small" = "Kfz-Ladestation";
"type.amenity.charging_station.general" = "Ladestation";
"type.amenity.charging_station.motorcar" = "Autos";
"type.amenity.charging_station.motorcycle" = "Motorräder";
"type.amenity.charging_station.bicycle" = "Fahrräder";
"type.amenity.charging_station.small" = "Begrenzte Kapazität";
"type.amenity.childcare" = "Kindertagesstätte";
"type.amenity.cinema" = "Kino";
"type.leisure.bowling_alley" = "Bowlingbahn";

View File

@@ -47,10 +47,11 @@
"type.amenity.gambling" = "Gambling";
"type.leisure.adult_gaming_centre" = "Adult Gaming Centre";
"type.leisure.amusement_arcade" = "Arcade";
"type.amenity.charging_station" = "Charging Station";
"type.amenity.charging_station.bicycle" = "Bicycle Charging Station";
"type.amenity.charging_station.motorcar" = "Car Charging Station";
"type.amenity.charging_station.motorcar.small" = "Car Charging Point";
"type.amenity.charging_station.general" = "Charging Station";
"type.amenity.charging_station.motorcar" = "Cars";
"type.amenity.charging_station.motorcycle" = "Motorcycles";
"type.amenity.charging_station.bicycle" = "Bicycles";
"type.amenity.charging_station.small" = "Limited Capacity";
"type.amenity.childcare" = "Nursery";
"type.amenity.cinema" = "Cinema";
"type.leisure.bowling_alley" = "Bowling Alley";

View File

@@ -54,10 +54,11 @@
"type.amenity.studio" = "Media Studio";
"type.leisure.adult_gaming_centre" = "Adult Gaming Centre";
"type.leisure.amusement_arcade" = "Arcade";
"type.amenity.charging_station" = "Charging Station";
"type.amenity.charging_station.bicycle" = "Bicycle Charging Station";
"type.amenity.charging_station.motorcar" = "Car Charging Station";
"type.amenity.charging_station.motorcar.small" = "Car Charging Point";
"type.amenity.charging_station.general" = "Charging Station";
"type.amenity.charging_station.motorcar" = "Cars";
"type.amenity.charging_station.motorcycle" = "Motorcycles";
"type.amenity.charging_station.bicycle" = "Bicycles";
"type.amenity.charging_station.small" = "Limited Capacity";
"type.amenity.childcare" = "Nursery";
"type.amenity.cinema" = "Cinema";
"type.leisure.bowling_alley" = "Bowling Alley";

View File

@@ -191,9 +191,21 @@ void TypesHolder::SortBySpec()
auto const getPriority = [&cl](uint32_t type) { return cl.GetObject(type)->GetMaxOverlaysPriority(); };
auto const & checker = UselessTypesChecker::Instance();
auto const & isChargingStationChecker = ftypes::IsCharingStationChecker::Instance();
auto const & isChargingStationSmallChecker = ftypes::IsCharingStationSmallChecker::Instance();
std::stable_sort(begin(), end(), [&checker, &getPriority](uint32_t t1, uint32_t t2)
std::stable_sort(begin(), end(), [&checker, &getPriority, &isChargingStationChecker, &isChargingStationSmallChecker](uint32_t t1, uint32_t t2)
{
if (isChargingStationSmallChecker(t1) && !isChargingStationSmallChecker(t2))
return false;
else if (isChargingStationSmallChecker(t1) && !isChargingStationSmallChecker(t2))
return true;
if (isChargingStationChecker(t1) && !isChargingStationChecker(t2))
return true;
else if (isChargingStationChecker(t2) && !isChargingStationChecker(t1))
return false;
int const p1 = getPriority(t1);
int const p2 = getPriority(t2);
if (p1 != p2)
@@ -403,6 +415,13 @@ void FeatureParams::SetRwSubwayType(char const * cityName)
FeatureParams::TypesResult FeatureParams::FinishAddingTypesEx()
{
auto const & cl = classif();
auto charingStation = cl.GetTypeByPath({"amenity", "charging_station", "general"});
auto motorcarCharingStation = cl.GetTypeByPath({"amenity", "charging_station", "motorcar"});
auto carelessCharingStation = cl.GetTypeByPath({"amenity", "charging_station", "carless"});
if (IsTypeExist(charingStation) && !IsTypeExist(motorcarCharingStation) && !IsTypeExist(carelessCharingStation))
AddType(motorcarCharingStation);
base::SortUnique(m_types);
TypesResult res = TYPES_GOOD;

View File

@@ -753,6 +753,30 @@ IsDirectionalChecker::IsDirectionalChecker() : ftypes::BaseChecker(1 /* level */
m_types.push_back(c.GetTypeByPath({"lateral"}));
}
IsCharingStationChecker::IsCharingStationChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "general"}));
}
IsCharingStationCarChecker::IsCharingStationCarChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "motorcar"}));
}
IsCharingStationCarlessChecker::IsCharingStationCarlessChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "carless"}));
}
IsCharingStationSmallChecker::IsCharingStationSmallChecker() : ftypes::BaseChecker(3 /* level */)
{
Classificator const & c = classif();
m_types.push_back(c.GetTypeByPath({"amenity", "charging_station", "small"}));
}
IsTaxiChecker::IsTaxiChecker()
{
Classificator const & c = classif();

View File

@@ -519,6 +519,38 @@ public:
DECLARE_CHECKER_INSTANCE(IsDirectionalChecker);
};
class IsCharingStationChecker : public ftypes::BaseChecker
{
IsCharingStationChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationChecker);
};
class IsCharingStationCarChecker : public ftypes::BaseChecker
{
IsCharingStationCarChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationCarChecker);
};
class IsCharingStationCarlessChecker : public ftypes::BaseChecker
{
IsCharingStationCarlessChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationCarlessChecker);
};
class IsCharingStationSmallChecker : public ftypes::BaseChecker
{
IsCharingStationSmallChecker();
public:
DECLARE_CHECKER_INSTANCE(IsCharingStationSmallChecker);
};
class IsTaxiChecker : public BaseChecker
{
IsTaxiChecker();

View File

@@ -121,12 +121,19 @@ std::string MapObject::GetLocalizedAllTypes(bool withMainType) const
auto const & isPoi = ftypes::IsPoiChecker::Instance();
auto const & isDirectional = ftypes::IsDirectionalChecker::Instance();
auto const & amenityChecker = ftypes::IsAmenityChecker::Instance();
auto const & charingStationCarChecker = ftypes::IsCharingStationCarChecker::Instance();
auto const & charingStationCarlessChecker = ftypes::IsCharingStationCarlessChecker::Instance();
auto const & charingStationSmallChecker = ftypes::IsCharingStationSmallChecker::Instance();
std::ostringstream oss;
bool isMainType = true;
bool isFirst = true;
for (auto const type : copy)
{
// Ignore some charing stations
if (charingStationCarlessChecker(type) || ((charingStationCarChecker(type) || charingStationSmallChecker(type)) && charingStationCarlessChecker(copy)))
continue;
if (isMainType && !withMainType)
{
isMainType = false;