Архив за месяц: Сентябрь 2014

Неправильная тушёнка

Попробовал взятую как-то в «Фикс-прайсе» ради эксперимента тушёнку. Точнее даже, если верить этикетке, не просто тушёнку, а тушёную говядину, выпущенную неким ООО «Вязьмамясопродукт» из Смоленской области (штрих-код на банке — 4607039081893).

Оказалось, что в тушёнке много желатина, мало мяса и, что больше всего настораживает — какой-то странный запах. Вывод — тушёнка плохая, брать нельзя.

Какой большой ветер

Канал «ТВЦ» выпустил серию «Ураган, смерч и град» передачи «История спасения» — там рассказывают и о паре южноуральских ураганов минувшего лета: о тех, что промчались над Башкирией и над Ильменкой.

Дым коромыслом

Во дворе сто двадцать первой школы, возле угла улиц Свободы и Плеханова, горит старый деревянный двухэтажный дом номер номер 82а. Похоже, хорошо горит — виден огонь и густой дым разносится далеко. Запах ощущается даже на расстоянии сотен метров в направлении, перпендикулярном ветру. На месте происшествия работают пожарные.

[map]55.15641,61.41209(Место пожара)[/map]

Еда мужская

Попробовал вчера запечь в духовке пангасиуса с луком, морковкой и картошкой. Рыба удалась, а вот овощи корнеплоды — не очень: остались жёсткими. Ну и времени на это потратил много, хотя ничего сложного, в общем-то, нет.

Поэтому сегодня до кулинарных экспериментов дело не дошло — купил кило пельменей да сварил. Просто и быстро.

Лица «Малиновки»

С 5 по 7 сентября возле Белорецка прошёл IX открытый республиканский фестиваль авторской песни «Малиновый аккорд».

То же самое в синих социальных сетях:

Фонтан почти готов

Завершаются работы по замене фонтана на площади Революции — главной площади Челябинска. Недавно была проведена настройка струй, а сегодня рабочие укладывают тротуарную плитку вокруг фонтана.

Укладка тротуарной плитки вокруг фонтана на площади Революции в Челябинске

Открытие обновлённого фонтана запланировано на 13 сентября. В вечерних сумерках, вроде, в 21 час.

Как добавить номера домов на карту

На карте, отрисовываемой из OpenStreetMap стилем, основанным на OSM Bright, нет номеров домов. Попытки на скорю руку сочинить какой-нибудь стиль, заглядывая в нагугленное, не увенчались успехом — пришлось разобраться подробнее. Выяснилось следующее: одним редактированием стилевого файла не обойтись, надо ещё и внести данные в базу.

Итак, есть PostgreSQL, PostGIS, imposm, TileMill и OSM Bright. Как запустить этот комбайн, написано, например, на mapbox.com/tilemill/docs/guides/osm-bright-ubuntu-quickstart/. Пробуем, запускаем — номеров домов нет. Если посмотреть, какие данные, относящиеся к зданиям, хранятся в базе данных, то увидим, что там нет адресов:

$ psql -U юзер -d база -c '\d osm_buildings'

                                  Table "public.osm_buildings"
  Column  |          Type          |                         Modifiers                          
----------+------------------------+------------------------------------------------------------
 id       | integer                | not null default nextval('osm_buildings_id_seq'::regclass)
 osm_id   | bigint                 | 
 name     | character varying(255) | 
 type     | character varying(255) | 
 area     | real                   | 
 geometry | geometry               | 
Indexes:
    "osm_buildings_pkey" PRIMARY KEY, btree (id)
    "osm_buildings_geom" gist (geometry) CLUSTER
Check constraints:
    "enforce_dims_geometry" CHECK (st_ndims(geometry) = 2)
    "enforce_srid_geometry" CHECK (st_srid(geometry) = 900913)

Чтоб сохранять адрес (а точнее, номер дома — нам этого достаточно), надо добавить строковое поле (точнее, это будет VARCHAR(255)) с именем 'addr:housenumber' к таблице с зданиями и заполнить это поле номерами. Сделать это можно, указав его в файле, где хранятся правила соответствия (в OSM Bright такой файл называется imposm-mapping.py):

--- a/imposm-mapping.py
+++ b/imposm-mapping.py
@@ -143,6 +143,7 @@ buildings = Polygons(
     name = 'buildings',
     fields = (
         ('area', PseudoArea()),
+        ('addr:housenumber',String()),
     ),
     mapping = {
         'building': (

После этого можно запускать импорт, в получившейся таблице появится поле addr:housenumber, содержащее номера домов.

Следующий этап — указать новое поле в настройках слоя TileMill в поле Table or subquery:

Настройка слоя buildings

Содержимое поля должно быть таким:

( SELECT geometry, type, name, area,"addr:housenumber"
    FROM osm_buildings
  ORDER BY ST_YMin(ST_Envelope(geometry)) DESC
) AS data

После чего останется добавить стиль номеров в файл labels.mss:

#buildings[zoom>16] {
  text-name:'[addr:housenumber]';
  text-face-name:@sans;
  text-size:9;
  text-fill: lighten(@poi_text, 20%);
}

Результат — susu.ac.ru/ru/about/campus

Картографические данные © Участники OpenStreetMap http://osm.org/