Ru-Board.club
← Вернуться в раздел «Программы»

» SAS.Планета

Автор: anynamer
Дата сообщения: 21.06.2015 17:36
Подскажите, как создать векторную карту (.map) из данных OpenStreetMap (.osm.bz2 или osm.pbf) желательно с рельефом из SRTM на Windows?
Какие проги нужны, подскажите статьи.
Автор: Garl
Дата сообщения: 25.06.2015 18:00
anynamer
это вам на профильный форум ОСМ http://forum.openstreetmap.org/viewforum.php?id=21

DG уже давно побанил нас, так что скажем НЕТ
Автор: andry59
Дата сообщения: 29.06.2015 22:37
Спрошу у уважаемого сообщества, только у меня не грузится слой Panoramio kml? Или что то произошло?
Автор: zedxxx
Дата сообщения: 29.06.2015 23:15
andry59
http://www.sasgis.org/mantis/view.php?id=2748
Автор: obtim
Дата сообщения: 30.06.2015 12:18
А возможно ли с подобных сайтов http://bnj.ru/map/ скопировать метки к себе в программу?
Автор: zedxxx
Дата сообщения: 30.06.2015 14:08
Ну, если вам Яндекс отдаст эти метки в виде kml или ещё какого вектора, то вполне. Только с какой стати им раздавать своё добро за просто так? Обычно дают только посмотреть, как по ссылке выше, но с собой забрать - ни-ни.
Автор: obtim
Дата сообщения: 30.06.2015 14:30
zedxxx
Мечтал, что есть некие сервисы, которые позволяют вытаскивать из таких ссылок координаты..
П.С.
Существуют какие-нибудь сервисы, которые можно подключить к программе, которые отображают жилую застройку по санкт-петербургу?
Автор: andry59
Дата сообщения: 30.06.2015 20:29
zedxxx
Спасибо!!!
Автор: alexey65536
Дата сообщения: 06.07.2015 20:12
ZMP для Яндекс.Фоток, подобный уже сделанному для Panoramio KML - технически возможно сделать, или Яндекс не отдает координаты снимков?
Автор: zedxxx
Дата сообщения: 06.07.2015 20:14
alexey65536
http://www.sasgis.org/forum/viewtopic.php?f=2&t=57&start=2690#p39945
Автор: Hunter230785
Дата сообщения: 08.07.2015 14:06
Можно ли добавить в SAS.Planet возможность сформировать область, указав координаты центральной точки и радиус или необходимую площадь области?
Автор: zedxxx
Дата сообщения: 08.07.2015 21:52
Hunter230785
Можно, но очень хитрым способом (отсюда):
1. Ставим точку-метку.
2. На ней по ПКМ - операции с выделенной областью.
3. Вводим радиус.
4. Получаем правильный 64-угольник в виде области выделения, открывается окошко для закачки.
5. В нём давим кнопку сохранения текущей области выделения в качестве метки, или сохраняем как hlg и потом импортируем этот файл в метки.
6. При необходимости начальную точку-метку удаляем.
Автор: Hunter230785
Дата сообщения: 08.07.2015 22:09
zedxxx, это я пробовал - визуально круг получился.
А мне надо квадрат, описывающий окружность данного радиуса...
Автор: zedxxx
Дата сообщения: 09.07.2015 08:05
Нет, такой квадрат не сделать. Но тикет в Багтрекере по-моему есть.
Автор: Hunter230785
Дата сообщения: 09.07.2015 09:31
А в чём именно проблема невыполнения тикета?
Вы уже всё рассчитали, никаких дополнительных расчётов не потребуется.
Надо только вместо 64-гранника построить 4-гранник по тем же данным.
Автор: zedxxx
Дата сообщения: 09.07.2015 10:08
Да нет никаких проблем, как и у большинства тикетов, что висят годами.
Автор: Hunter230785
Дата сообщения: 09.07.2015 10:54
Может всё-таки сделаете? Очень-очень нужно!
Автор: Kies
Дата сообщения: 09.07.2015 17:13
Почему-то не скачивается спутник Google в 19 зуме и выдаёт ошибку 403. Можно ли это исправить? Или проблема у них с серверами?
Автор: zedxxx
Дата сообщения: 09.07.2015 20:00
Hunter230785
Нет, лично я пока что не планирую этим заниматься.

Kies

Цитата:
и выдаёт ошибку 403

А погуглить, что это за ошибка слабо?

Цитата:
403 Forbidden (англ. Запрещено) — серверная ошибка, обозначающая, что доступ к ресурсу или отдельной его части запрещен конфигурацией веб-сервера.

Поздравляю, вас забанили на сутки, гугл любит это дело
Автор: Hunter230785
Дата сообщения: 09.07.2015 21:58
zedxxx, а где исходный код, формирующий 64-угольник?
Автор: zedxxx
Дата сообщения: 09.07.2015 22:47
Вот тут: TGeometryLonLatFactory.CreateLonLatPolygonCircleByPoint
Автор: Hunter230785
Дата сообщения: 09.07.2015 22:53
Спасибо! Так тут вроде только CPointCount = 64 изменить надо?
Автор: zedxxx
Дата сообщения: 09.07.2015 22:57
Переменная VBounds (или свойство Bounds у получившегося 64-угольника) уже содержит нужные вам координаты точек (TopLeft и BottomRight) для создания прямоугольника, описывающего окружность.

Кстати, нашёл ту хотелку: 0001616: Выделение квадратной области определяемый указанным радиусом вписанной окружности.

Там же и более-менее рабочий рецепт:

Хотелка свелась к следущему существующему решению:
1. Устанавливаю максимальный зум (уровень) на нужном объекте.
2. Выбираю инструмент "Выделение по пути"
3. Указываю как можно близко две точки пути, и так чтобы напарвление было ортогональное (то есть либо вертикальное либо горизонтальное, чтобы стороны квдрата выделения были в такомже направлении)
4. указываю радиус выделения.
5. получаю результат Хотелки.
Автор: Hunter230785
Дата сообщения: 09.07.2015 23:03
Отлично. Ещё раз спасибо!
Автор: zedxxx
Дата сообщения: 09.07.2015 23:03

Цитата:
Так тут вроде только CPointCount = 64 изменить надо?

Так вы получите ромб, с вершинами в точках 0, 90, 180 и 270 градусов относительно центра. Т.е. вам по этим точкам ещё нужно вычислить Bounds, который и будет искомым прямоугольником.
Автор: Hunter230785
Дата сообщения: 09.07.2015 23:24
Всё правильно: на рисунке набросал мысль.
Получить "синие" координаты значит получить "красные".
PS: А выделять по предыдущему способу всё же оказалось не удобно - при большом радиусе получается криво.
Автор: zedxxx
Дата сообщения: 10.07.2015 00:04
Ну, ждём пулл-реквеста

Эта функция вызывается из гуя вот тут: TMarkDbGUIHelper.PolygonForOperation. Вам нужно сделать свою функцию, которая создаёт полигон (по аналогии CreateLonLatPolygonCircleByPoint) и придумать, как спросить пользователя, что он хочет создать вокруг точки - круг или квадрат. Для этого, видимо, придётся создать свой диалог и добавить туда чекбокс: круг/квадрат.
Автор: Hunter230785
Дата сообщения: 10.07.2015 00:26
Не знаю, насколько востребован круг, но вот квадрат заданного размера для загрузки карт и спутников явно многим пригодится.
Ибо считать координаты и задавать их для построения области, равно как использовать другие способы долго и утомительно.
Мы с Вами уже нашли аналогичные "хотелки", аналогичную функцию, точку её вывода и примерный алгоритм реализации.
Осталось только написать код. Я для Pull request'a пока не дорос. Может всё же Вы займётесь?
Автор: zedxxx
Дата сообщения: 10.07.2015 09:25

Цитата:
Осталось только написать код.

В Багтрекере хватает задач, для которых "осталось только написать код". Далеко ходить не надо - вот свежий тикет 0002762 Нельзя задать размер тайлов, на которые режется изображение, при операции Склеить KMZ Garmin. Там тоже всё просто и человеку тоже очень надо (даже дедлайн есть).

Цитата:
Я для Pull request'a пока не дорос.

Это же хорошо, значит есть к чему стремиться, есть цель. "Человек с ясной целью будет продвигаться даже по самой тяжкой дороге. Человек безо всякой цели не продвинется и по самой гладкой дороге" (с).

Цитата:
Может всё же Вы займётесь?

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


Автор: Hunter230785
Дата сообщения: 10.07.2015 09:27

Цитата:
потом уже будем смотреть.

Ну и на этом спасибо!

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192

Предыдущая тема: Agnitum Outpost Firewall Pro (фаервол)


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.