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

» SatMap (2)

Автор: errmac
Дата сообщения: 09.02.2010 12:27
egor23
На самом деле я в курсе архитектуры NTFS. И я ни разу не спорил с вами. Вы совершенно правы про потери даже с меньшим размером классера. По этому мне тоже кажется более эффективным хранение в базе/файловом контейнере

relictus

Цитата:
Вопрос: а зачем вообще хранить (и скачивать) эти "нулевые" тайлы??? Если же они уже есть в кэше, ну удалите их оттуда - вот вам и экономия будет! И ничего изобретать не надо...

По порядку:
зачем хранить/качать? Я выделяю область и закачиваю полностью все что там есть. И нулевые тайлы предоставляются самим гуголой и найти как закачать без них я не знаю. Не видел не в планете не сатмапе опции пропуска их при закачке.
Удалить их оттуда. А мы собственно о чем говорим? Я думаю, что я смогу найти способ удалить несколько миллионов тайлов из набора файлов, экспортировать потом это в сатмап где они будут помечены как отсутствующие, и? И при подключении в режиме кеш+интернет они начнут закачиваться снова. Получается сизифов труд. Я же предлагаю вам встроить в программу возможность удаления этих тайлов напрямую из кеша и чтоб они потом на стали докачиваться делать записи об их существовании в диапазонах. В приведенном мной примере это уменьшит размер кеша в 5 раз.
Вы предлагаете мне руками, с кучей гемороя и без возможности зафиксировать результат сделать тоже самое что я предлагаю вам реализовать в программе улучшив ее Вы сделали шаг перенеся хранение тайлов в БД и не хотите делать следующий оптимизировав хранение тайлов в ней.
п.с. А тема о оптимизиции sat кеша вообще утонула пока обсуждалась более простая оптимизация both кеша
Автор: ZergAnaliZer
Дата сообщения: 09.02.2010 12:37
relictus

Будем надеяться и ждать. Вообще есть желание задать проге сразу все свои задания один раз и поставить на ночь. А результаты открыть в GM разом и пользоваться по усмотрению... Мне Google Mapbuilder не нравился тока отсутствием предпросмотра (юзался браузер и линки оттуда) и невозможностью кодировать свыше 65кпикселей.

Сделайте пожалуйста хотя бы, чтобы ДО начала закачки прога спросила имя файла, чтобы задать и уйти, не ожидая вопроса о сохранении, желательно с опцией "выключать ПК после завершения закачки".
Автор: relictus
Дата сообщения: 09.02.2010 12:40

Цитата:
И при подключении в режиме кеш+интернет они начнут закачиваться снова.

А зачем просматривать кэш в режиме "кеш+интернет"? Смотрите в режиме "кэш" - ничего качаться не будет. Или используйте только слой "спутник". Я честно не понимаю, зачем всё так усложнять

Цитата:
Вы предлагаете мне руками, с кучей гемороя

Вот! Вы переваливаете свой геморрой на меня

Цитата:
п.с. А тема о оптимизиции sat кеша вообще утонула пока обсуждалась более простая оптимизация both кеша

Просто пишите на языке SatMap, а не САС - поскольку вопросы задаете здесь, то используйте родную терминологию. Почему я должен догадываться, что там подразумевается под "both" кешем?

Добавлено:
ZergAnaliZer

Цитата:
Вообще есть желание задать проге сразу все свои задания один раз и поставить на ночь.

Что-то это смахивает на желание заиметь в программе одну большую волшебную кнопку, по нажатию на которую исполняются все желания

Цитата:
делайте пожалуйста хотя бы, чтобы ДО начала закачки прога спросила имя файла

Закачки? Или все же склейки картинки?
Автор: errmac
Дата сообщения: 09.02.2010 13:30

Цитата:
А зачем просматривать кэш в режиме "кеш+интернет"? Смотрите в режиме "кэш" - ничего качаться не будет. Или используйте только слой "спутник". Я честно не понимаю, зачем всё так усложнять

А давайте расширим немного этот логический ряд: зачем пользоваться спутниковыми картами в программе когда можно взять в руки карту на бумажке и вперед Это тоже будет выход и не нужно вообщи ничего качать и решать какие то проблемы

Цитата:
Вот! Вы переваливаете свой геморрой на меня

Ну а что поделаеш? Вы автор программы, кому как не к вам писать предложения по улучшению? Вы же сами выпускаете более новые версии, исправляете что-то, что-то улучшаете. Вот и я хочу поучаствовать в этом процессе.

Цитата:
Просто пишите на языке SatMap, а не САС - поскольку вопросы задаете здесь, то используйте родную терминологию. Почему я должен догадываться, что там подразумевается под "both" кешем?

В программе при экспорте кеша из sas.planet программа сама спрашивает про наличие в папке-источнике папок both и sat и просит сама переименовать их если они по другому названы Мне казалось удобным назвать варианты карт так как они есть в планете потому что в каждом посте своем я ссылался на файловый кеш оттуда, но если вам удобнее, я буду писать в дальнейшем больше в терминолоии satmap. Теперь моя фраза звучит как: "А тема оптимизации кеша спутниковых снимков утонула в обсуждении более простой оптимизации кеша гибрида "
Автор: relictus
Дата сообщения: 09.02.2010 14:01
errmac
Слышали о Черномырдине? Про его манеру речи (косноязычие)? Вот я вижу в ваших постах многА букаФФ и слов, но смысл написанного от меня ускользает. Можете кратко и четко описывать, что вы от меня (проги) хотите?
PS Без обид...

Добавлено:
Или это я уже совсем старый и тупой стал?
Автор: parasss
Дата сообщения: 09.02.2010 14:24
Имеется наработанный кэш (SAT).
при накатывании новой версии ("только EXE") оно вдруг сказало "Возможно, это первый запуск!" и лихо обнулило мне инишник от предыдущей, не спрося разрешения и убив и пути до кэша, и настройки собственно программы, и версии\пути во вкладке ИНТЕРНЕТ.

Вопрос: как по существующему кэшу определить, какую версию SAT я качал? Кто-то тут мне ранее говорил, что в базе таки хранятся метки о версионности тайлов...

PS: а за обнуление инишника аффтару отдельное спасибо, да.
Автор: relictus
Дата сообщения: 09.02.2010 14:35
parasss

Цитата:
при накатывании новой версии ("только EXE") оно вдруг сказало "Возможно, это первый запуск!" и лихо обнулило мне инишник от предыдущей

Ой ли, от предыдущей? А может кто не читал

Цитата:
v2.1.20 2009 Nov 24
--------------------------------------
[!] при установке в папку предыдущих версий, удалите файл конфигурации satmap.xml!

???


Цитата:
в базе таки хранятся метки о версионности тайлов...

Да, хранятся. См. поле f7.
Автор: netrebos
Дата сообщения: 09.02.2010 15:22
relictus

Цитата:
Мда.. ты нарвался на very rare bug, который жил еще с давних версий
Попробуй v2.2.2j - без просмотра покадрово твоего видео я бы его не пофиксил....


Кажется, баг побежден. Странно, почему я нарвался на него только сейчас -- при использовании двух компов (с прокси и без) для меня это достаточно частая операция.

errmac
relictus

Цитата:
смысл написанного от меня ускользает

Действительно, иногда лучше воспользоваться сухим языком инструкции: "нужно А+В, что бы получить С + некоторое описание выгоды"


Цитата:
речь идет о файлах BOTH кеша нулевого размера.


Цитата:
Вопрос: а зачем вообще хранить (и скачивать) эти "нулевые" тайлы???


Речь, по моему, идет об автоматизации функции SQlite Vacum, которою в версиях годичной давности можно было выполнить из Прямоугольное выделение\Удалить....и (уже не помню как там дальше это называлось). По моему, сейчас переконвертировать кэш без экспортно-импортных операций не возможно.

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

А Черномор -- великий дядька. Обычно, если речь непонятна, то и в мозгах каша. А он умудрялся в мозгу держать четкие схемы, а изъясняться настолько путанно, что никакого дела ему пришить нельзя.
Автор: relictus
Дата сообщения: 09.02.2010 15:30
netrebos

Цитата:
По моему, сейчас переконвертировать кэш без экспортно-импортных операций не возможно.

Есть дефрагментация, см. меню-->инструментарий...
Кэш упорядочивается и из него выкидываются удаленные тайлы, уменьшая таким образом размер файла кэша.
Автор: parasss
Дата сообщения: 09.02.2010 15:39

Цитата:
Ой ли, от предыдущей?

Ой ли, от предыдущей. Мне ль не знать, что я делал, ась?
От предыдущей установленной у меня. МОЯ предыдущая у меня была от июня прошлого года, когда я последний раз и обновлялся.


Цитата:
???

До этого - подобных проблем не было. Сколько раз только экзешники менял - все подхватывалось.....


Цитата:
v2.1.20 2009 Nov 24
--------------------------------------
[!] при установке в папку предыдущих версий, удалите файл конфигурации satmap.xml!

В шапке - этого нет. В архиве "только EXE" (про кой я заикнулся мессагой выше) этого тоже нет.
Кстати, а зачем его удалять-то? Там же нет ничего "версиезависимого", вроде как. А перебивать все настройки\пути с нуля - удовольствие ниже среднего, да и спрашивать бы надо бы (проге) перед перезаписью пользовательских данных нулями.


Цитата:
См. поле f7.

В какой проге можно быстро и без особых премудростей посмотреть поле "f7"? C MySQL раньше не работал.

PS: если можно - то хексом по смещению ХХХ, может быть? Это было бы проще всего...
Автор: egor23
Дата сообщения: 09.02.2010 15:43
relictus
errmac просит:
http://forum.ru-board.com/topic.cgi?forum=5&topic=30026&start=1320#8
1. уже просился, возможно записан в todo.
2. если такое есть, то это весь уровень, просто не качайте его.
3. ответ был дан + способ решения в пределах существующей версии SatMap.
Автор: relictus
Дата сообщения: 09.02.2010 15:46
parasss

Цитата:
Там же нет ничего "версиезависимого", вроде как.

Изменился формат конфига. Если переходишь с относительно старых версий, не мешало бы ознакомиться с хистори - выложена на офсайте. Или ставить полный комплект, а не заменять только exe...

Цитата:
В какой проге можно быстро и без особых премудростей посмотреть поле "f7"? C MySQL раньше не работал.

http://sqliteman.com/
Автор: egor23
Дата сообщения: 09.02.2010 15:48
errmac

Цитата:
На самом деле я в курсе архитектуры NTFS. И я ни разу не спорил с вами. Вы совершенно правы про потери даже с меньшим размером классера. По этому мне тоже кажется более эффективным хранение в базе/файловом контейнере

О каких файловых контейнерах Вы говорите?
т.к. не вижу разницы, что на диске NTFS, что в контейнере NTFS.
Автор: netrebos
Дата сообщения: 09.02.2010 15:51
relictus

Цитата:
Есть дефрагментация, см. меню-->инструментарий...

Действительно...
errmac
Тогда я не очень понимаю, чего вы хотите выжать из кэша? Может быть конкретизируете на примере уже имеющихся функций. Идея отжать из 100 гб кэша 50 гб мне очень нравится. Но я всегда считал, что это достижимо обычной редактурой кэша-загатовки под задачи использования. А если можно еще ужать кэш, уже без отрезания информации -- мне это интересно.

Автор: egor23
Дата сообщения: 09.02.2010 15:57
netrebos

Цитата:
А если можно еще ужать кэш, уже без отрезания информации -- мне это интересно.

суть совмещение работы SatMap + дубликатор (но файлы не только удаляются, но вместо повторяющихся файлов остаётся ссылка на файл в кэше)
дубликатор - ищит повторяющиеся файлы

relictus
Если вдруг будите заниматься этой хотелкой, или ввиде SatMap \ или отдельной утилиты, то проверка тайлов идёт в 2 этапа:
1. по размеру
2. по содержимому
проверка начинается с файлов которые уже помечены как Дубликаты (если такие имеются).

Добавлено:

Цитата:
1. по размеру

или, если есть, по контрольным суммам файлов

Добавлено:

Цитата:
1. по размеру
2. по содержимому

или два этапа это избыточно (по времени)?
достаточно сразу этапа 2?
Автор: parasss
Дата сообщения: 09.02.2010 16:28

Цитата:
Изменился формат конфига.

Тьху.

А слабО в шапку поднять? А то ссылки-то в шапке таки "полу"-прямые, куча юзверей пролетает абсолютно мимо ридми при скачке "EXE only".
Автор: errmac
Дата сообщения: 09.02.2010 16:36
relictus

Цитата:
Можете кратко и четко описывать, что вы от меня (проги) хотите?

и
netrebos

Цитата:
Действительно, иногда лучше воспользоваться сухим языком инструкции

Да без проблем. Давайте попробуем еще раз и языком А+Б попробую описать. Правда снова получится многабукфф.

Я предлагаю провести следующие процедуры для уменьшения размера файлов кеша без потери его информативности:

1) для кеша гибрида.
Гугола при скачивании кеша гибрида с больших площадей возвращает кеш в 2-х видах. Вид первый это файл 256*256 пикселей в котором содержаться информация об объекте, находящимся на этом месте.
Вид второй, это файл 256*256 пикселей в котором не содержится информации об объекте в этом месте (содержится информация об отсутствии объекта). Этот файл имеет размер 191 байт
В настоящий момент в кеше программы храниться информация обо всех этих тайлах по отдельности. Например:
x40980 - y21526 - {тут сам файл}
x40980 - y21527 - {тут сам файл}
x40980 - y21528 - {тут сам файл}
И так далее.
Я хочу отдельно обратить внимание relictus что я привожу просто схематично расположение этого всего в базе а не буквально как там это расположено.
Я предлагаю изменить структуру хранения тайлов следующим образом
x40980 - y21526 - {тут сам файл, в этом файле есть информация, тоесть он первого вида}
x40980 - y21527 - {тут сам файл, в этом файле есть информация, тоесть он первого вида}
как есть и сейчас, но если попадается тайл второго типа, тоесть 191 байт размером и указывающий на то, что в данном месте отсутствуют объекты запись измениться на вид:
x40980 - y21528(первый тайл второго типа из серии тайлов):y21550(последний тайл второго типа из серии тайлов) - {тут 1 раз указанно что на всем этом диапазоне расположен файл размером 191 байт и он указывает на отсутствие тут объектов}
и далее, как появляются новые тайлы с информацией о наличии объектов вид записи становиться первоначальным:
x40980 - y21551 - {тут сам файл}
x40980 - y21552 - {тут сам файл}
x40980 - y21553 - {тут сам файл}
и так до нового места, гда будет диапазон тайлов второго вида.
Даже если посмотреть на мой пример, в нем содержится (если убрать комментарии) запись о 27 тайлах но при этом я использовал не 27 строк а только 6. При этом, если диапазон тайлов, указывающих на то что в данном месте нет никаких объектов будет еще больше то это не увеличит количество строк, нужных для его записи. В моем примере несколькими постами ранее из 2.8 миллионов тайлов конкретной области 80% как раз и можно заменить с пофайлового перечисления на указание о диапазоне.
Почему этот вариант лучше, чем просто удаление этих тайлов из кеша? Потому что они будут снова появляться в кеше при необходимости докачать ту или иную часть гибрида так как программа не будет знать о том, что ранее они уже были и их удалили. Если их не просто удалить а заменить как я предлагаю то с одной стороны программа будет оперировать ими так как будто они есть по отдельности а с другой стороны не потребуется хранить их пофайлово и забивать ими место. Размер кеша сократиться.

2) для кеша спутниковых снимков
И я лично и другие пользователи карт гуголы могли видеть, что очень часто при изменении масштаба карт гуголы не происходит реального изменения изображения. Например на уровнях 11-14 очень часто область 14 уровня представляет собой просто растянутый в несколько десятков раз тайл с 11 уровня. Во многих местах это есть и на 15-19 уровнях и локально на других диапазонах уровней.
Я предлагаю сделать проверку содержимого тайлов. Тоесть берется тайл с верхнего уровня и 4 тайла на уровень ниже. Они конвертируются в 2 файла с одинаковым качеством и разрешением и сравниваются. Если они оказываются идентичны, то 4 тайла с нижнего уровня удаляются, а на их месте появляется запись, что для этого места нужно взять тайл с более верхнего уровня и растянуть его.
Точно также поступаем и с следующим уровней тайлов, только берем уже не 4 а 16 тайлов, занимающих это место. Например, для областей 11-14 уровня можно оставить 1 тайл с 11 уровня и удалить 84 тайла с 12, 13 и 14 уровня оставив вместо них запись о том, что тут растягивается тайл с 11 уровня.
Если же тайлы на разных уровнях не совпадают (не растянут один уровень из другого) то все записи остаются "как есть" и ничего не меняется.
При этом, так же как и в первом пункте моего предложения, при докачке тайлов программа будет знать, что на этом месте не отсутствует тайл а что он именно берется из верхнего уровня и масштабируется.

При экспорте в другие форматы кеша для других программ программа может на лету разворачивать записи о диапазонах тайлов гибрида без информации и растягивать тайлы снимков из верхних уровней. Тоесть этот функционал программы не пострадает.

Минус моего предложения: для работы потребуются большие ресурсы системы. Если для работы с готовым кешем эти увеличения будут не значительными, то для чисток кеша возможно нагрузка будет большая. По этому я предлагаю делать эти модификации кеша отдельно и по желанию пользователя так же как сейчас есть отдельно кнопка дефрагментации кеша. Например можно будет оставить на работе кеш на выходные чиститься или ставить на ночь.

п.с. relictus, терминологию постарался соблюсти, орфографию проверил
Автор: karst
Дата сообщения: 09.02.2010 18:21
egor23
errmac
Одно дело отловить три стандартные болванки минимального размера для map, hibrid, land и совсем другое искать дубликаты космоснимков разного масштаба.

Автор: parasss
Дата сообщения: 09.02.2010 18:37

Цитата:
http://sqliteman.com/

Скачал. Получилось. Нашел версию. Спасибо.
Поехали качать дальше и заценять фичи и баги v.2.....
Автор: MiMark
Дата сообщения: 09.02.2010 18:47
По следам последних предложений:
1.    Растягивать файлы предыдущего уровня, если в текущем уровне нет данных (не скачаны или их просто нет у Google). relictus сделайте такой подарок к лету автомобилистам, а то не приятно - едешь себе едешь и вдруг пошла чернота… Это одна из причин того, что прошлым летом в отпуске пользовался SAS.
2.    Пора уже реализовать другие картографические сервисы, но пока не в полном объеме, а достаточно просто обеспечить добавление любых картографических сервисов пользователем без реализации их закачки, а только для отображения из кеша. Для этого просто в режиме импорта дать возможность их импортировать из SAS … и можно пускаться в дальнюю дорогу с Satmap.
3.    Экономия на тайлах для меня не так уж важна, но если и реализовывать предложения errmac, то можно использовать следующую схему:
- в базу данных добавить таблицу (назовём её «образцы») с четырьмя полями: 1) порядковый номер 2) тип сервиса (карта, гибрид, спутник и т.д.); 3) длина тайла, 4) тайл-картинка
- в основную таблицу с тайлами добавить поле с порядковым номером из вышеприведенной таблицы, или писать этот номер вместо содержимого тайла, в случае совпадения текущего затачиваемого тайла с одним из заранее заполненных тайлов из таблицы "образцы".
- в таблицу «образцы» пока заранее занести две записи (по полям): 1) 1; 2) гибрид; 3) 191; 4) записать сюда png-тайл, который полностью прозрачен и не имеет никаких других данных
Вторая запись: 1) 2; 2) карта; 3) длина тайла с полностью однотонным тайлом-картинкой карты; 4) сам тайл с однотонной картинкой
- при отображении тайлов на экране из кеша если в основной таблице с тайлами существует номер из таблицы «образцов» то высвечивать его;
При закачке перед запись в кеш проверять текущий закаченный тайл на совпадение с одним из тайлов таблицы «образцов» и если есть совпадение, то запоминать только его номер. При запуске программы вся таблица образцов считывается в память для увеличения скорости.
PS:
- алгоритм придумывался навскидку и скорее всего его можно улучшить/упростить
- хранить диапазоны – полная чушь (прости errmac)
- проверять растяжку тайлов у google тоже чушь (прости errmac)
Автор: egor23
Дата сообщения: 09.02.2010 19:00
errmac

Цитата:
Я предлагаю сделать проверку содержимого тайлов. Тоесть берется тайл с верхнего уровня и 4 тайла на уровень ниже. Они конвертируются в 2 файла с одинаковым качеством и разрешением и сравниваются.

Вы вручную пробывали проделывать такие манипуляции?
При какой погрешности (при сравнении) 2 файла совпадут?

Добавлено:
relictus
v2.2.2j-v2.2.2e \ Инет+кэш
посмотрел вечером (Инет медленней работает)

есть задержки при прокрутки уровней, и при перемещении в пределах уровня (кэш пустой)
стабильность вещь хорошая, но юзабилити стал хуже.

Замечен баг при склейке (баг то есть\ то нет):
v2.2.2j
выделен один тайл 12 уровень
склейка 12 уровень, потом 13 уровень
в склееном изображении 13 уровень только два тайла, верхних (должно быть 4)
skeika.rar - все картинки вместе + skeika.kml
http://gettyfile.ru/481034/

Добавлено:

Цитата:
склейка 12 уровень, потом 13 уровень

склейку делать находясь на 12 уровне
Автор: errmac
Дата сообщения: 09.02.2010 21:10

Цитата:
- хранить диапазоны – полная чушь (прости errmac)

Не прощу советую обратить ваше внимание вот на этот материал http://ru.wikipedia.org/wiki/Кодирование_длин_серий особенно интересен параграф "Применение" и в особенности первые его абзац. Ситуация с кешем гибрида практически 1:1 идет с классическим примером.
Возможно говоря о оптимизации кеша гибрида нужно было сразу ссылочку эту дать, быстрее взаимопонимания достигли бы. В качестве серий выступают тайлы кеша гибрида размером в 191 байт, а сам принцип тот-же.


Цитата:
Вы вручную пробывали проделывать такие манипуляции?

А смысл это делать прямо сейчас? Я с кешем гибрида провел манипуляции, показал на конкретном примере его эффективность но тем не менее скепсиса еще много. Я не тороплюсь, дойдет дело до проверки этого пункта - проверю и приведу примеры. Тоже самое касается и степени схожести
Автор: Kusain
Дата сообщения: 09.02.2010 22:16

Цитата:
Цитата:Слой 14,15,16 ,гибрид , версия 2,20 которая последняя , N53°45'42.13" E79°33'46.76"

вот проверил только гибрид, кэш был пустой, гибрид отображается:


Цитата:но после скачавания ничего нет

возможно там ничего нет, нет дорог\надписей и т.п., то ничего и не увидите.

и не забывайте заходить в настройки и проверять версии снимком (Настрйоки-Интернет-Проверить версии снимков)

После скачивания действительно ни чего нет,но видимая часть экрана начинает скачиваться и если двигать дальше то тоже скачивается и гибрид и снимок.

Добавлено:
А может быть такое по тому что Гугл берет при отражении на экране слои выше или ниже ( в смысле нет этого слоя )?
Автор: ZergAnaliZer
Дата сообщения: 10.02.2010 07:53
relictus

Mapbuilder ставил на задание на сервак в ночь на работе - утром готовый jpeg с привязкой. Причем можно было несколько копий так "озадачить". Неужели satmap так не сможет?

По-моему, так это проще пареной репы - запросить имя сохраняемого файла и его тип ДО начала выкачивания, чтобы ПОСЛЕ окончания выкачивания использовать эти данные для процесса склейки и кодирования файла уже без присутствия пользователя.
Автор: relictus
Дата сообщения: 10.02.2010 08:25
egor23

Цитата:
суть совмещение работы SatMap + дубликатор (но файлы не только удаляются, но вместо повторяющихся файлов остаётся ссылка на файл в кэше)

Не знаю, дойдет ли когда до этого... Надо будет чуток менять всю логику работы с кэшем (в коде) + формат самого кэша. Можно надолго в этом погрязнуть... А ведь количество не реализованных хотелок все растет...

parasss

Цитата:
А слабО в шапку поднять?

Добавил в шапку линк на хистори...

errmac

Цитата:
Давайте попробуем еще раз и языком А+Б попробую описать.

Ясно. В теории все это хорошо звучит, но реализовать такое я не берусь - нет ни времени, ни особого желания, уж извините...

Цитата:
Этот файл имеет размер 191 байт

А недавно был = 116 байт...

MiMark

Цитата:
1. Растягивать файлы предыдущего уровня

У меня сейчас в работе коммерческий проект на основе SatMap, ближайшие месяц-два я не смогу уделять SatMap много времени, но постараюсь до лета сделать это...

Цитата:
2. Пора уже реализовать другие картографические сервисы...

На уровне чтения могу, но см. пред. ответ.

Цитата:
3. Экономия на тайлах для меня не так уж важна, но если и реализовывать предложения errmac, то можно использовать следующую схему:

В общих чертах она схожа с тем, что я хотел уже давно сделать (еще на этапе разработки кэша на основе БД), но что-то тогда меня остановило от реализации этого., сейчас уже и не помню Надо будет на досуге продумать эту тему...

egor23

Цитата:
есть задержки при прокрутки уровней, и при перемещении в пределах уровня (кэш пустой) стабильность вещь хорошая, но юзабилити стал хуже.

Чем-то приходится жертвовать Возможно, что-то еще можно "подкрутить", но попозже...

Цитата:
Замечен баг при склейке (баг то есть\ то нет):

У меня не было. А галка на "выровнять по границам тайла стояла"?

ZergAnaliZer

Цитата:
Неужели satmap так не сможет?

Несколько копий - нет. Но задавать имя файла до начала сохранения в принципе можно сделать.
Автор: ZergAnaliZer
Дата сообщения: 10.02.2010 08:57
errmac

Касаемо дублирования данных на гугле и "оптимизации" кэша в программе у меня более рациональное (на мой взгляд) предложение. Лично я считаю маньяками людей, кто в машине с ноутом и SAS-ом катаются. Для этого придуман ОЗИК и его форматы карт (+ECW). Ну или CompeGPS или ArcPAD (для создания GIS в поле). Для Ноута - еще ладно, но всем возить ноут ради просмотра растра в дороге???

А вот чтобы собирать в единый файл любого размера карты с условием "если нет тайла этого уровня, то брать из ближайшего (или указанного пользователем) уровня с докачкой еще не скачанных" - это дело! Тогда скачка, скажем, 19-го уровня будет состоять из скачки в пределах рамки всех тайлов плюс скачка из другого уровня (в зависимости от того, выбран он ручками или программой) всех тайлов в областях, где нет тайлов 19-го уровня. Плюс объединение их по принципу многослойного пирога, где тайлы с уровня меньшей детализации ("заплатки", например, с 14-го уровня) кладутся ПОД тайлы выбранного 19-го уровня (а то один тайл 14-го уровня покроет собой не одну сотню тайлов 19-го) и весь многослойный пирог сливается в безразмерный ECW (отлично, что есть галка "внедрять геоданные" в него).

Таким образом, после выдачи задания "качай 19-й, недостающее бери из 18-14-го уровня" мы автоматом получим готовый файл, пригодный для прямого (если поддерживается такой датум/проекция) использования в Озике / CompeGPS / Arcview ArcPAD (для КПК) или Globalmapper/CompeGPS и т.п. на обычном ПК/ноуте. В этом файле, который может получиться и свыше 200 тысяч пикселей (пост zporuchik в теме про SAS + ecw библиотеки от SAS, которые дают такие просторы), мы поимеем:


1. Все тайлы 19-го уровня какие есть в зоне.
2. Все "дырки", где нет 19-го уровня - "заткнуты" данными из заказанных нами уровней.
3. Единый геопривязанный файл по сути любого размера.
4. Формат файла полностью совместим с GM, открывается за секунду, копируется максимально быстро на карту памяти и манипулируется очень быстро даже на КПК.

Если задать качество кодинга в ECW повыше, то именно в этом формате можно хранить "архив", убивая весь этот кэш. Обновления местности, если они локальные, можно аналогично выкачать снова и наложить (автоматом) поверх старого (обрезка любой формы и алгоритмы прозрачного наложения в помощь) в GlobalMapper.

Реально мой CompeGPS land 2.71 "кушает" UTM WGS84, а меркатора неправильно "ест", поэтому собранные портянки под поллимона пикселей я держу в ECW 1:10, залатывая их при необходимости обновленными данными и весь этот залатанный пирог сохраняю в GMW (формат GM-сборки, настройки обрезки сохраняются). Это для меня - "оригинал", а не кэши в миллионы тайлов. Для целей поехать на природу грузишь этот пирог в GM, переводишь в UTM WGS84 (быстро) выделяешь область и кодишь этот кусок или куски (до 3-х, больше за раз CompaGPS на КПК не ест) и кладешь на карту памяти (быстро, ибо один файл) и в путь!

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

Поэтому я и предлагаю сделать процесс создания большого файла максимально автоматизированным и настраиваемым. Ибо в больших (безразмерных) ECW-файлах хранить и переносить картматериал удобнее, быстрее и надежнее. Как и работать с ним. Да и места он займет самый минимум. 80 тыс на 250 тыс пикселей (14 уровень от Москвы до Черного моря с частью Грузии) весит 6 гиг всего при отличном качестве. Открывается за 1 сек, манипулируется realtime (CompeGPS).

Подумайте пожалуйста над реализацией таких возможностей. Это будет предел мечтаний GIS-овцев и туристов: задал, закачал и поехал. Ну или кодирнул GM для перевода в UTM WGS, это недолго. Ведь главная цель совтинки - получить картматериал с привязкой для использования.
Автор: egor23
Дата сообщения: 10.02.2010 08:59
relictus

Цитата:
Не знаю, дойдет ли когда до этого... Надо будет чуток менять всю логику работы с кэшем (в коде) + формат самого кэша. Можно надолго в этом погрязнуть... А ведь количество не реализованных хотелок все растет...

хотелка интересна в абсолютных цифрах, а вот в относительных, в сравнении со слоем спутник - это экономия ~1% места, при 100% пустом гибриде.

и неизвестно как это ещё скажется на производительности

Цитата:
У меня не было. А галка на "выровнять по границам тайла стояла"?

баг то есть то нет, т.е. подлавливать надо

Цитата:
Чем-то приходится жертвовать Возможно, что-то еще можно "подкрутить", но попозже...

сейчас видео конвертиться (с низким приоритетом CPU, загрузка CPU 100%)
так SatMap просто виснит (Инет+кэш)
запускаем SatMap лёгкое движение карты и висим

Цитата:
А ведь количество не реализованных хотелок все растет...

напомню о хотелке - дополнительные тайлы "по периметру"
Автор: ZergAnaliZer
Дата сообщения: 10.02.2010 09:00
relictus

Несколько копий - думаю, сможет. Если сделать несколько каталогов с прогой, указать им разные файлы кэшей и запустить. Правда, не знаю, прога запустится ли в нескольких копиях, и будут ли ее процессы пересекаться. Но, думаю, лучше одна прога и очередь вышеописанных заданий.
Автор: relictus
Дата сообщения: 10.02.2010 10:01
v2.2.3 2010 Feb 10
--------------------------------------
[no] теперь при дефрагментации используется "упорядочивание" кэша
оптимизация: если при закачке выбрана опция "заменять существующие", то не проверяется существование тайла в кэше
кнопки выбора слоев убраны в выпадающий список
склейка: теперь выбор имени файла осуществляется до начала процесса
[-] баг при перемещении картинки, появляющийся в режимах "интернет/интернет+кэш"
[/no]

Добавлено:
ZergAnaliZer
Тема многослойных ecw безусловно интересна. Но я пока не знаю, как их делать (не вникал в доки). Как будет время, посмотрю...

Цитата:
+ ecw библиотеки от SAS, которые дают такие просторы

А что, мои библиотеки не дают таких просторов?
Я их лично компилил дабы они производили неограниченный в размерах image...

egor23

Цитата:
сейчас видео конвертиться (с низким приоритетом CPU, загрузка CPU 100%)
так SatMap просто виснит (Инет+кэш)
запускаем SatMap лёгкое движение карты и висим

Вроде логично, вдеь SatMap имеет несколько thread'ов, которым тоже нужно процессорное время, особенно при загрузке и операциях с кэшем.
Кстати, в 2.2.3 я самую малость изменил код ожидания, проверь, есть ли изменения в лучшую сторону при
Цитата:
(Инет медленней работает) есть задержки при прокрутки уровней, и при перемещении в пределах уровня (кэш пустой)


ZergAnaliZer

Цитата:
Правда, не знаю, прога запустится ли в нескольких копиях

Обычная версия не запустится, но есть (для последнего билда нет) еще multi
Автор: DCT
Дата сообщения: 10.02.2010 11:30
errmac
Цитата:
Кеш BOTH 17 уровня по координатам N54E42-N48E51
....
Файлов нулевого кеша (191 байт/тайл): 2675005 (93%)

Зачем же было качать 17-й гибрид на всю территорию? На поля-леса разумно хватает 13(14)-го уровня гибрида, на котором пустых тайлов от силы 10-15% (обычно <<10%).
ИМХО проблема дубликатов тайлов сильно преувеличена, при условии осмысленной скачки содержащих информацию слоев.

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: BitTorrent/BitComet/Azureus/BitTornado и др. / сеть и клиент


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