Страница 1 из 1

Установка метки

Добавлено: 04 дек 2012, 17:33
rolan
Вечер добрый.
Значит по-порядку. Мы интернет-провайдер. Однажды мы решили навести порядок с адресами абонентов, и понеслось. В-общем сейчас есть база данных, в ней есть таблица city (id, ..., title), street (id, city_id, ..., title), city (id, street_id, ..., title). Населенные пункты, улицы и дома могут добавлять "специальные люди". Для мониторинга сети используем zabbix, все устройства нанесены на карту - используем qgis, openstreetmap и postgresql+postgis. Все оборудование хранится в таблице devices. В таблице, помимо геометрии и прочих свойств есть поле house_id, по которому мы явно определяем полный адрес устройства. На данный момент нанесение устройств на карту в qgis'е запретил триггерами. Разработан "склад" - там устройства добавляются, оформляется замена сгоревших устройств (отслеживаем весь жизненный цикл устройств). Так вот, сейчас каждый коммутатор нарисован поверх домов карты openstreetmap (много улиц и домов сами ездили и рисовали, а потом заносили), и мы запросом на вхождение центра геометрии устройства (точки) в геометрию дома определили связи наших домов в таблице house с домами в openstareetmap и также дополнительно храним геометрии домов на случай, если после обновления карт часть домов сдвинется или удалится. Так вот. Адреса, которые есть в нашей базе данных (фактически это только адреса наших абонентов) связаны с геометриями домов. И в большинстве случаев для того, чтобы выставить новый коммутатор из веб-морды склада на карту в нужное место (нужный дом) - достаточно последовательно выбрать населенный пункт, улицу и дом. Но. есть дома, которые добавляются постоянно, а значит надо снова давать доступ к квантум-гису на перетаскивание устройства на нужное место. Итак вопрос, вот есть окно выбора адреса:
Изображение
как добавить возможность, в случае, если дома нет - поставить метку на нужное здание?

Re: Установка метки

Добавлено: 04 дек 2012, 19:29
Максим Дубинин
rolan писал(а):в случае, если дома нет - поставить метку на нужное здание?
Так есть, или нет? Если дома нет, то куда вы собираетесь метку ставить? И может вы просто дорисуете дом, раз его нет?

Не знаю как остальные, а я лично не понял в чем же проблема. В том что данные основы (осм) нужно обновлять?

Re: Установка метки

Добавлено: 04 дек 2012, 19:51
rolan
Вы не правильно поняли. Данные осм лично я обновляю регулярно, стараюсь по возможности помогать этому замечательному проекту. Вы видимо не уловили суть. Я же пишу, что постоянно добавляются новые дома подключений. Соответственно, адрес мы добавляем в нашу базу (с новым абонентом), но привязка к геометрии дома из осм от этого не появляется. Вот эта карта, что вы видите на картинке, обновляется с выбором дома, так вот если выбран дом, для которого еще нет соответствия полигону из осм позволять ставить метку на карте. Дальше по координатам этой метки получать полигон дома (если метка поставлено в черте здания), и создавать привязку - дом такой-то=дом из осм такой-то

Re: Установка метки

Добавлено: 05 дек 2012, 13:21
rolan
Всем спасибо за конструктивные предложения

Re: Установка метки

Добавлено: 09 дек 2012, 19:48
dobeer
Просто ваша формулировка вопроса оставляет желать лучшего.
так вот если выбран дом, для которого еще нет соответствия полигону из осм позволять ставить метку на карте.
Дом выбран (значит известен адрес), геометрии дома и координат дома нет, а они так нужны возьмите их в другом месте, например через АПИ 2ГИС (гугл, яндекс, еще гденибудь) у этих сервисов есть методы геокодинга. Узнаете координаты и ставьте там метку.