GeoCacher

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

Модераторы: Tolik, zed

Re: GeoCacher

Сообщение vasketsov » 03 апр 2012, 19:30

Покуда кэш GC теперь доступен в сасе напрямую, есть одна небольшая тонкость.

По умолчанию в опциях (файл TileCacheRE.ini) правила замены урла примерно такие:

###########################################################
;Сортировка исторических снимков по дате
[RegExpr#11]
Expr=f1-\d+-i\.\d+-(\w+)
Replace=$1\\$0
Active=1

##########################################################
;Сортировка всех данных по уровню зума и подпапкам по 1024 тайла
[RegExpr#15]
Expr=(f1|f1c|q2|qp)-\d+-
Replace=z<Z>\\<Xi>\\x<X>\\<Yi>\\$0
Active=1

Это приводит к тому, что файлы исторического режима сохраняются в папках типа
GeoCacher\cache\Tiles\History\Images\fa88e\z18\84\x86710\42
и в итоге в папке Images подпапками являются даты снимков в hex-представлении.

Если же номер регулярного выражения с 11 заменить скажем на 17, то обрабатываться оно будет ПОСЛЕ сортировки по уровню зума.
Тогда файлы будут сохраняться в папках типа
GeoCacher\cache\Tiles\History\Images\z13\2\x2715\1\faa83
то есть дата снимка уедет в конец.

Это приведёт к тому, что папок будет больше (вместо одной папки с датой будет куча папок с датой по количеству тайлов в снимке*).
Но зато поиск дат (версий) для тайла (а также прочие сопутствуюшие операции типа поиска тайла как такового без даты) будет выполняться СУЩЕСТВЕННО быстрее.

DLL, которая осуществляет доступ к кэшу GC, не разбирает эти регулярные выражения (так как по сути она выполняет обратную операцию), так что она может определить только, до или после xyz находится дата (причём не по ini, а по первой попавшейся папке в кэше с датами).
Так что промежуточные более сложные и в какой-то степени возможно более оптимальные варианты типа
GeoCacher\cache\Tiles\History\Images\<QuadkeyUpTo6chars>\fa88e\z18\84\x86710\42
недоступны. Надо будет что-нибудь придумать на эту тему.

*) точнее тысяч тайлов, так как по умолчанию по Y формируются только "крупные" папки.
vasketsov
Специалист
 
Сообщения: 727
Зарегистрирован: 25 июл 2009, 21:15
Благодарил (а): 0 раз.
Поблагодарили: 153 раз.

Re: GeoCacher

Сообщение vasketsov » 03 апр 2012, 22:32

Окончательно перешёл на кэш по QuadKey. Настройки (кому интересно) приаттачены.
Кроме отличия что всё хранится по QuadKey4 - ещё и перед версией добавил подчёркивание, чтобы их быстрее было различать при перечислении подпапок.
Выгода от QuadKey ещё и в общем уменьшении количества папок при брожении по компактным областям, всё рядом хранится и лучше кэшируется.
Версия aka HexDate добавляется не позже второго куска QuadKey. Число лишних папок (с версиями) из-за этого равно числу пересечений снимков с границами тайлов на 8-м зуме. Лично по мне это немного, по своему родному району у меня получилось 0.1% от общего числа папок.

DLL для кэша в багтрекере (0001195). Она понимает и формат кэша по умолчанию, и также понимает некоторые настройки в файле TileStorage_GC.dll.ini (который должен лежать рядом с файлом TileCacheRE.ini). Подробности под спойлером.
скрытый текст: показать
Данные в ini разбиты по секциям. Каждая секция относится к одному серверу, названия - как подпапки в \cache\Tiles.
Параметры:
XYZPathMode = 0 (кэш по умолчанию) или 1 (QuadKey).
QuadKeyLen = 4 - длина кусков для деления QuadKey.
HexDateIndex = 3 - позиция HexDate в пути до тайла. Если 0 - вообще нет HexDate, иначе отнимаем от указанного числа 1 - и это и есть позиция HexDate, см. примеры ниже.
HexDatePrefix = _ - символ префикса для HexDate. В принципе работает и без этого. Но с префиксом быстрее перечисление папок.
Enabled=1 - признак активности правила. Если 0 - будет работать по-старинке (кэш только по умолчанию и автоматическое определение положения HexDate).
Несмотря на то, что формально возможна различная настройка серверов, рекомендуется использовать одинаковые значения XYZPathMode и QuadKeyLen для всех серверов.

Далее пример ini:

[Earth]
XYZPathMode=1
QuadKeyLen=4
HexDateIndex=0
HexDatePrefix=_
Enabled=1

[History]
XYZPathMode=1
QuadKeyLen=4
HexDateIndex=3
HexDatePrefix=_
Enabled=1


Примеры расположения файлов в кэше (для указанных настроек):
\History\Qtrees\80\0202\0203\0303\1031\qp-0202020303031031-q.80
\History\Qtrees\80\0202\0203\0303\qp-020202030303-q.80
\History\Images\0202\0203\_fb4e8\0320\f1-02020203032033-i.64-fb4e8
\History\Images\0202\_fb38a\f1-0202003-i.80-fb38a
\History\Images\_fb85a\f1-031-i.80-fb85a
\History\Images\_221\f1-0-i.78-221
\Earth\Qtrees\485\0202\0203\2302\3300\q2-0202020323023300-q.485
\Earth\Qtrees\485\0202\q2-0202-q.485
\Earth\Qtrees\485\q2-0-q.485
\Earth\Images\0202\0203\3113\2013\f1-020202033113201332-i.401
\Earth\Images\0202\f1-0202020-i.465
\Tiles\Earth\Images\0202\0203\f1-02020203-i.465
\Earth\Images\f1-0-i.485
TileCacheRE.zip
(1.86 KiB) Скачиваний: 22
vasketsov
Специалист
 
Сообщения: 727
Зарегистрирован: 25 июл 2009, 21:15
Благодарил (а): 0 раз.
Поблагодарили: 153 раз.

Re: Google Earth .LOCAL

Сообщение solbec » 22 окт 2012, 11:01

При запуске Гео Качера согласно "инструкция по запуску клиента в сязке..." значек появляется не черного цвета, а зеленого.
При запуске Эйча, ничего не трогая, глобус не появляется, пишет: нет связи с сервером"
Аватара пользователя
solbec
Новичок
 
Сообщения: 3
Зарегистрирован: 13 май 2009, 15:14
Откуда: Украина
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Google Earth .LOCAL

Сообщение zed » 22 окт 2012, 12:02

solbec писал(а):значек появляется не черного цвета, а зеленого

Попробуйте предварительно отключить все программы, которые активно используют интернет. Или используйте GE.Local и кэшера отсюда: viewtopic.php?f=3&t=281&start=110#p27924 тогда в IE ничего трогать не нужно и через кэшера должен ходить только GE.
Хитрости GoogleEarth - то, чего вы не знаете о гугле
Аватара пользователя
zed
Гуру
 
Сообщения: 1519
ICQ: 357167611
Зарегистрирован: 16 авг 2008, 20:21
Откуда: Беларусь, Могилёв
Благодарил (а): 37 раз.
Поблагодарили: 177 раз.

Re: Google Earth .LOCAL

Сообщение solbec » 22 окт 2012, 14:15

пишет "нет модуля" 15 .дил, аналгично:
viewtopic.php?f=3&t=281&start=110&sid=f214b8b120a11f9ad4a0577e7f210ee9#p27963
при замене эксе в старом месте картина та же.

Не указано в инстурукции детально, или кешер и эйчьлокал поместить в одну папку, у меня рядом, но в разных, как распаковывалось с архива. И..: может в кешере, который в трее, где какие нужно галочки поменять ? Или может в настройках кашера что то сменить?
Последний раз редактировалось solbec 22 окт 2012, 14:44, всего редактировалось 1 раз.
Аватара пользователя
solbec
Новичок
 
Сообщения: 3
Зарегистрирован: 13 май 2009, 15:14
Откуда: Украина
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Google Earth .LOCAL

Сообщение zed » 22 окт 2012, 14:33

Т.е. вы утверждаете, что у вас GC 1.4.3.10 работает без ijl15.dll и вы положили туда версию 1.4.3.11 и она уже не работает из-за dll-ки? Бред.
Хитрости GoogleEarth - то, чего вы не знаете о гугле
Аватара пользователя
zed
Гуру
 
Сообщения: 1519
ICQ: 357167611
Зарегистрирован: 16 авг 2008, 20:21
Откуда: Беларусь, Могилёв
Благодарил (а): 37 раз.
Поблагодарили: 177 раз.

Re: Google Earth .LOCAL

Сообщение zed » 22 окт 2012, 14:35

solbec писал(а):Не указано в инстурукции детально, или кешер и эйчьлокал поместить в одну папку

Это абсолютно никакой роли не играет - располагайте где угодно. Поэтому и не указано.
Хитрости GoogleEarth - то, чего вы не знаете о гугле
Аватара пользователя
zed
Гуру
 
Сообщения: 1519
ICQ: 357167611
Зарегистрирован: 16 авг 2008, 20:21
Откуда: Беларусь, Могилёв
Благодарил (а): 37 раз.
Поблагодарили: 177 раз.

Re: Google Earth .LOCAL

Сообщение solbec » 22 окт 2012, 14:48

Утверждаю это:
viewtopic.php?f=3&t=281&p=30666#p30659
далее по рекомендации
viewtopic.php?f=3&t=281&start=110&sid=f214b8b120a11f9ad4a0577e7f210ee9#p27924
утверждаю, что не запускается, т.к. отсутствует *15.dll
Аватара пользователя
solbec
Новичок
 
Сообщения: 3
Зарегистрирован: 13 май 2009, 15:14
Откуда: Украина
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.

Re: Google Earth .LOCAL

Сообщение zed » 22 окт 2012, 14:54

solbec писал(а):Утверждаю это:
viewtopic.php?f=3&t=281&p=30666#p30659
далее по рекомендации
viewtopic.php?f=3&t=281&start=110&sid=f214b8b120a11f9ad4a0577e7f210ee9#p27924
утверждаю, что не запускается, т.к. отсутствует *15.dll

Бог в помощь!
Хитрости GoogleEarth - то, чего вы не знаете о гугле

За это сообщение автора zed поблагодарил:
solbec (24 окт 2012, 20:02)
Аватара пользователя
zed
Гуру
 
Сообщения: 1519
ICQ: 357167611
Зарегистрирован: 16 авг 2008, 20:21
Откуда: Беларусь, Могилёв
Благодарил (а): 37 раз.
Поблагодарили: 177 раз.

Re: GeoCacher

Сообщение vasketsov » 04 ноя 2012, 16:29

На первый же запрос /geauth приходит ответ 404. Дальше GC.Local либо отдаёт из кэша, либо всегда 404.

Из всех галочек на закладке "Настройки" включены только "Склееные", "Проверять корректность" и "Поверх других" - так что работа GC организована нарямую. Да и вообще никаких проксей нигде не прописано.
Обновление 1.4.3.10 на 11 ничего не изменило.
Обновление GoogleEarth.6.0.3.2197.Portable.Local на GoogleEarth.6.2.2.6613.Portable.Local - тоже.

Что-то поменялось на серверах GE? В чём может быть косяк?
vasketsov
Специалист
 
Сообщения: 727
Зарегистрирован: 25 июл 2009, 21:15
Благодарил (а): 0 раз.
Поблагодарили: 153 раз.

Пред.След.

Вернуться в Другие

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron