Jump to content

Recommended Posts

Posted

Делаю скрипт, чтобы экспортировать все данные из UserSide в KML-файл.

Но вот подумал, а вдруг я велосипед изобретаю?

Может у кого есть готовый скрипт, которым не жалко поделиться?

Posted
В 05.02.2022 в 10:40, alibek сказал:

Делаю скрипт, чтобы экспортировать все данные из UserSide в KML-файл.

Но вот подумал, а вдруг я велосипед изобретаю?

Может у кого есть готовый скрипт, которым не жалко поделиться?

Уходишь с UserSide?

Posted

Экспортер написан процентов на 80.

Экспортирует данные из UserSide в разные форматы: в KML (для Google Earth, с поддержкой многоуровневых слоев и стилизации), в SML (для SASGIS, с поддержкой многоуровневых категорий и стилизации), в XML/ODT (для экспорта в документ OpenOffice).

Есть некоторая сложность с координатами ВОЛС.

ВОЛС заданы в таблице tbl_optica. В этой таблице у записей задается начальный и конечный узел, которые могут быть ссылкой на узел связи или ссылкой на дом (здание). Маршрут линии (если трасса состоит из нескольких сегментов) задается в таблице tbl_optica_house.

Узлы связи заданы в таблице tbl_uzel, здания заданы в таблице tbl_house. И узлы связи, и здания, имеют поля latitude и longitude, в которых указываются GPS-координаты. Но эти координаты заданы далеко не на всех записях.

Также есть таблица tbl_coord, в которой задаются позиции узлов связи или зданий. У большиниства узлом и зданий, для которых не заданы latitude и longitude, заданы координаты в этой таблице.

Но есть некоторое количество объектов, у которых координаты нигде не заданы. Но UserSide координаты знает и отображает. То есть где-то эти координаты все же хранятся, но найти их я не смог.

 

Сейчас я применяю такой алгоритм:

1. Если для узла связи заданы координаты в tbl_coord, то использую эти координаты.

2. Если для узла связи указаны latitude и longitude, то использую их.

3. Если у узла связи нет координат, но узел связи находится на доме (здании), то смотрю координаты здания.

4. Если для здания заданы координаты в tbl_coord (точнее там будет задана не точка, а вершины контура здания), то вычисляю середину фигуры и использую координаты середины.

5. Если у здания указаны latitude и longitude, то использую их.

Если ничего из перечисленного не найдено, значит координаты неизвестны.

Таких линий (с неизвестной конечной точкой) у меня около сотни. Но UserSide эти координаты знает и отображает на карте.

Причем судя по тому, что линия приходит не в середину здания, а в конкретную точку, координаты этой точки где-то все же задаются.

 

Никто с этим не разбирался?

В телеграм-канале UserSide я спрашивал, без ответа.

Posted
В 09.02.2022 в 20:49, alibek сказал:

здания заданы в таблице tbl_house

А у вас какая версия US? ЕМНИП начиная с 3.12 дома, адреса и координаты переехали в другие таблицы.

Вспомнил: префикс tbl_ - это вообще ещё версии на mysql. Наверное мало таких инсталляций осталось, вряд ли кто-то поможет, да и разработчики уже вспоминать не будут старую структуру БД.

Posted

Это совсем печаль. Уж не помню с какой версии (возможно как раз в помянутой 3.12) они переехали на православный postgresql с каноничный postgis для картирования объектов. Вполне возможно что в скрипте миграции с mysql -> pgsql нужная вам конвертилка  уже есть.

  • 2 weeks later...
Posted

Нет, переехали ранее, с 3.9 кажется.

Но не по человечески, а с использованием одновременно двух баз. MySQL и PgSQL.

А потом у нас кончился срок поддержки, а стоимость лицензий скакнула где-то на порядок.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.