Notes |
|
(0006918)
|
Tolik
|
10-05-2012 04:03
|
|
Похоже, кэш GE 6.2.2.6613 отличается от предыдущих.
Кэш, созданный GE 6.1.0.5001, открывается нормально, а этот глючит.
|
|
|
(0006920)
|
zed
|
10-05-2012 05:21
|
|
Я так понимаю, что удаление старого/создание нового кэша не помогает?
Если распаковать кэш ( http://starmen.at.tut.by/cachemaster.htm )и подключить его как отдельную карту, то картина аналогичная? |
|
|
(0006922)
|
Tolik
|
10-05-2012 06:14
(edited on: 10-05-2012 06:15) |
|
Удалять кэш не пробовал, открыл его на офисном компе, глючит (хотя и не такие полосы, а ещё хуже, вообще картинка рассыпается).
Распаковал кэшмастером - всё в порядке.
|
|
|
(0006923)
|
Tolik
|
10-05-2012 06:27
(edited on: 10-05-2012 06:29) |
|
2012-05-10_102119.png - распакованный кэшмастером, dbCache\2012.05.10 09.57.44.485\Server01\2011.08.24\
2012-05-10_102101.png - нераспакованный кэш, та же версия, тот же зум.
|
|
|
(0006924)
|
zed
|
10-05-2012 08:25
|
|
>Похоже, кэш GE 6.2.2.6613 отличается от предыдущих.
Судя по тому, что кэшмастер распаковывает всё правильно, то формат кэша остался прежний. Но, как вариант, могли что-то поменять в формате индекса (dbCache.dat.index) - насколько я помню, TileStorage_GE.dll самостоятельно кэш не сканирует (в отличии от кэшмастера), а основывается на гугловском индексе.
Ну, или просто где-то бага вылезла. |
|
|
(0006925)
|
Tolik
|
10-05-2012 08:27
|
|
Так что zed спокоен :) , а vasketsov что-то не отзывается :( |
|
|
|
Пока совсем некогда этим заняться, не раньше субботы судя по всему.
Только я не понял в чём проблема.
Тайлы не все читаются из кэша, но вообще читаются?
Тайлы при чтении портятся? При конвертации (если включено сжатие)?
Версия тайлов установлена с номером версии кэша GE (полная запись) или только с датой?
>TileStorage_GE.dll самостоятельно кэш не сканирует
Так точно.
>ещё хуже, вообще картинка рассыпается
Может забажило преобразование bmp -> jpeg? Там же по-прежнему колхозный вариант. Если оно - придётся zed-а просить сделать через либжпег, у меня ума не хватит.
Вощем если срочно - пробуйте локализовать проблему. Я раньше субботы никак не смогу. |
|
|
(0006944)
|
zed
|
11-05-2012 07:52
|
|
>Только я не понял в чём проблема.
Скорее всего какой-то сбой чтения индексного файла. Либо индекс битый.
>Может забажило преобразование bmp -> jpeg?
Маловероятно, но заюзать libjpeg можно. Тем более, что размер dll-ок в таком случае уменьшится раза в два.
P.S. Кстати, заметил, что вампировская либа поддерживает формат DXT1 (не гугловский, а общепринятый). Т.е. в сасе можно добавить ещё один ридер и он будет читать их без необходимости перекодирования в jpeg/bmp. Только, естественно, dll должна выдавать нормальный DXT1, а не как сейчас. |
|
|
(0006945)
|
Tolik
|
11-05-2012 07:55
(edited on: 11-05-2012 07:57) |
|
Не так уж прям срочно, тем более, что есть workaround.
Я думаю, zed прав, что-то поменяли в формате индекса. Поэтому тайлы читаются не те, что надо (на последней картинке) или не читаются те, что надо (на первой).
Почему на разных компьютерах это выглядит по-разному - не понимаю. И ещё не понимаю, что за серые квадратики - разве тайлы такие маленькие в кэше?
Ещё вечером попробую открыть старый кэш (GE 6.1) на новом компе (по идее должен открываться). Могу также попоменять настройки GE, если скажете какие (сейчас всё по умолчанию).
|
|
|
(0006948)
|
zed
|
11-05-2012 08:20
|
|
Попробуйте удалить (забэкапить) старый dbCache.dat.index и перезапустить гугла. Он тогда переиндексирует кэш и создаст этот файл заново. Может с обновлённой версией индекса САС заработает.
Так же, нужно провести тест с удалением/созданием нового кэша GE, и скармливанию его САСу. При этом, если баг будет воспроизводиться, то создать кэш GE со снятой галочкой "Сжимать снимки" в настройках GE (обычно включена по-умолчанию, см. http://sasgis.org/forum/viewtopic.php?f=26&t=786&start=30#p14543 ). |
|
|
(0006949)
|
zed
|
11-05-2012 08:24
|
|
>И ещё не понимаю, что за серые квадратики - разве тайлы такие маленькие в кэше?
Тайлы стандартные 256*256 pix. Но САС же ещё и преобразование проекции делает. Т.е. нужно ещё экспериментировать со сменой проекции в секции [VIEW] в zmp. |
|
|
(0006950)
|
vasketsov
|
11-05-2012 08:37
(edited on: 11-05-2012 08:40) |
|
>сбой чтения индексного файла. Либо индекс битый
Не очень понимаю. По идее из индекса же берётся только кусок (смещение и размер). А дальше - проверка заколовка жпега. Возможно индекс побился так, что заголовок остался (смещение сохранилось), а размер как-то хитро уменьшился (там же врое как построчно - на первой картинке видимо ровный верх тайлов соответствует границе тайлов, а низ оборван как попало).
С другой стороны последняя картинка - классический пример установки Version в полном формате типа yyyy:mm:dd\N[1], тогда как в реальности тайлы есть не только для версии N, но и для версии yyyy:mm:dd\M[1]. В этом случае указание версии без номера (только дата и номер сервера) обычно решает проблему. То есть я на второй картинке вижу целые тайлы, тогда как на первой - все поломанные.
>что за серые квадратики - разве тайлы такие маленькие в кэше?
Тайл в кэше - это вертикальный прямоугольник. Соответственно серое вещество - это опять же пустые "корешки", если предположить что в индексе слишком маленький размер jpeg-а указан. Если включить отображние границ тайлов - это будет понятно.
>настройки GE, если скажете какие (сейчас всё по умолчанию).
Я так и не понял, это с включением сжатия, или без сжатия.
|
|
|
(0006952)
|
zed
|
11-05-2012 08:45
|
|
>То есть я на второй картинке вижу целые тайлы, тогда как на первой - все поломанные.
Ага, но они не соответствуют выбранному уровню зума - сравни со снимком из кэша кэшмастера - они для одного и того же места и зума. |
|
|
(0006954)
|
Tolik
|
11-05-2012 09:25
(edited on: 11-05-2012 09:30) |
|
> указание версии без номера (только дата и номер сервера) обычно решает проблему.
Нет, не помогает. В списке версий есть 2011:08:24\78[1] и другие даты.
Если в параметрах карты 2011:08:24\78[1] - получается мешанина из разных тайлов (с разных зумов)
Если 2011:08:24 - вид как у неисторической версии (детальных тайлов нет)
Если 78[1] - то же, что и 2011:08:24\78[1]
2011:08:24[1] - то же
|
|
|
(0006967)
|
zed
|
11-05-2012 15:57
|
|
2vasketsov:
Кстати говоря, методы чтения/записи jpeg <-> bmp через libjpeg в сасе уже реализованы ( https://bitbucket.org/azya/sasplanet/src/acb3e949f5ee/BitmapTileSaveLoad/u_BitmapTileLibJpeg.pas ). Единственное, там в качестве битмапки заюзан TCustomBitmap32, но это недоразумение решается в пару кликов. |
|
|
(0006968)
|
Tolik
|
11-05-2012 16:32
(edited on: 11-05-2012 16:43) |
|
> Я так и не понял, это с включением сжатия, или без сжатия.
DirectX...
> Попробуйте удалить (забэкапить) старый dbCache.dat.index и перезапустить гугла. Он тогда переиндексирует кэш и создаст этот файл заново. Может с обновлённой версией индекса САС заработает.
Неа. Индекс создался, ничего не изменилось.
> Ещё вечером попробую открыть старый кэш (GE 6.1) на новом компе (по идее должен открываться).
Ни фига вообще не показывает! Серый экран. Если кликнуть version, видно много версий, но всё равно ничего не видно.
Ничего не понимаю. Винду ставил с того же самого диска.
P.S. Всё-таки не совсем серый экран, кое-где есть тайлы с такими же полосами, как на картинке 1.
|
|
|
(0006969)
|
Tolik
|
11-05-2012 16:52
(edited on: 11-05-2012 17:01) |
|
Кажется, я нашёл, в чём проблема. У меня не было TileStorage_GC.dll (я подумал, что он не нужен, распаковал только GE).
Так и было задумано? Или какие-то линки идут в этот dll по ошибке?
После распаковки этого dll версии 1.0.0.4 на ноутбуке работает так же, как и на десктопе, т.е. кэш версии 6.1 показывает нормально, а 6.2 - мусор.
|
|
|
(0006970)
|
Tolik
|
11-05-2012 16:59
|
|
Распаковал TileStorage_GC.dll версии 1.0.0.6 - результат тот же, что и без этого dll. |
|
|
(0006971)
|
zed
|
11-05-2012 17:01
|
|
Это вообще-то 2 независимые карты (и dll тоже независимые). |
|
|
(0006973)
|
Tolik
|
11-05-2012 17:01
|
|
|
|
(0006974)
|
Tolik
|
11-05-2012 17:04
|
|
Проверил ещё раз. Если есть оба dll из TileStorage_GE_GC_1.0.0.4.rar, старый кэш показывает нормально. Новый - ненормально по-любому. |
|
|
|
Могу пока что лишь подтвердить, что DLL полностью независимые друг от друга.
Завтра гляну кэш. |
|
|
(0007143)
|
vasketsov
|
21-05-2012 13:54
(edited on: 21-05-2012 13:57) |
|
Не вопроизводится никак.
Распаковал приаттаченный кэш, указал его в качестве пути для карты.
По координатам z17x3959720447 никаким переключением или сбросом версий не могу добиться получения второй картинки.
Персобрал TileStorage_GE версии 1.0.0.7 на всякий случай, приаттачил, пробуйте.
зы. Фак ми нау. Перезапустил - и получил частично прорисованные тайлы. Буду смотреть, пока баг воспроизводится.
|
|
|
|
Исправил и приаттачил TileStorage_GE_1.0.0.8.rar. |
|
|
(0007151)
|
Tolik
|
22-05-2012 05:14
(edited on: 22-05-2012 05:15) |
|
На работе всё ок. Вечером проверю дома.
|
|