From c6b783747a24e7bdeb93462a6b74106edf632065 Mon Sep 17 00:00:00 2001 From: lukasmartinelli Date: Fri, 28 Oct 2016 15:07:15 +0200 Subject: [PATCH] We need ref length for nice highway shields --- layers/highway_name/highway_name.yaml | 2 +- layers/highway_name/layer.sql | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/layers/highway_name/highway_name.yaml b/layers/highway_name/highway_name.yaml index 8d8ead9..cbac027 100644 --- a/layers/highway_name/highway_name.yaml +++ b/layers/highway_name/highway_name.yaml @@ -10,7 +10,7 @@ layer: datasource: geometry_field: geometry srid: 900913 - query: (SELECT geometry, name, ref, class::text, subclass FROM layer_highway_name(!bbox!, z(!scale_denominator!))) AS t + query: (SELECT geometry, name, ref, ref_length, class::text, subclass FROM layer_highway_name(!bbox!, z(!scale_denominator!))) AS t schema: - ./merge_highways.sql - ./layer.sql diff --git a/layers/highway_name/layer.sql b/layers/highway_name/layer.sql index 8d0de14..c9c27a8 100644 --- a/layers/highway_name/layer.sql +++ b/layers/highway_name/layer.sql @@ -1,6 +1,9 @@ CREATE OR REPLACE FUNCTION layer_highway_name(bbox geometry, zoom_level integer) -RETURNS TABLE(osm_id bigint, geometry geometry, name text, ref text, class highway_class, subclass text) AS $$ - SELECT osm_id, geometry, name, ref, to_highway_class(highway) AS class, highway AS subclass FROM ( +RETURNS TABLE(osm_id bigint, geometry geometry, name text, ref text, ref_length int, class highway_class, subclass text) AS $$ + SELECT osm_id, geometry, name, + NULLIF(ref, ''), NULLIF(LENGTH(ref), 0) AS ref_length, + to_highway_class(highway) AS class, highway AS subclass + FROM ( SELECT * FROM osm_highway_name_linestring_gen3 WHERE zoom_level = 8 UNION ALL