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

» CacheMaster

Автор: SERGEEV
Дата сообщения: 16.08.2013 19:20
Друзья, известно ли по какому пути в W7 GoogleEarth кеширует 3Д-модели, как фотореалистичные, так и серые коробки?
Автор: zedxxx
Дата сообщения: 18.08.2013 22:24
Известно - в dbCache.dat или unified_cache_leveldb_leveldb2, если речь про GE 7.xx.

При включении в слоях 3D-моделей идут запросы вида:
_http://kh.google.com/flatfile?f1c-02030130-d.3002.581 - "дерево" наличия тайлов 3D-моделей
_http://kh.google.com/flatfile?f1-02030130213030-d.50200.562 - текстуры + модели для их натягивания

Причём, по таким адресам закачиваются фотореалистичные модели, условные и модели деревьев. А как известно, все flatfile сохраняются в dbCache.dat и в большинстве своём имеют уникальный формат. Если говорить конкретно о текстурах, то никаких утилит по вытаскиванию их в какие-нибудь человеческие форматы мне не известны.

P. S. Да, в других слоях (не с вкладки 3D-модели) могут встречаться различные 3D модели в открытом формате (в kml) и могут быть легко закэшированы и открыты в том же SketchUp. Помню как-то возникал у одного юзера подобный вопрос по 3D-модели исторического Рима в kml формате, правда сейчас я там что-то ничего подобного не нахожу.

P. P. S. Так же, замечено что при включении в слоях 3D моделей гугл подгружает некий blacklist:
_http://sketchup.google.com/3dwarehouse/blacklist
с интересным содержимым:

Цитата:
ae5a5b90864915cb233ff33728189a1d
de2063dc334a4ee8b0b19a72cc8226ce
4fc18f0d7fd49333c0898748757c86f0
b90c9e3face552d873ec37cc64d70ed8

Добавлено:
Ага, вот нашёл давнюю новость про Рим: На Google Earth появилась модель Древнего Рима
Автор: SERGEEV
Дата сообщения: 20.08.2013 00:03
zedxxx
Спасибо за ценную информацию.
По мидам из blacklist можно скачать 3Д модели. По вашему примеру:
_http://sketchup.google.com/3dwarehouse/download?mid=ae5a5b90864915cb233ff33728189a1d&rtyp=k2
Аналогично эту модель можно скачать и из warehouse, но есть большое кол-во моделей скачать которые нельзя (самые интересные конечно же), но можно увидеть в GE.
Например, _http://sketchup.google.com/3dwarehouse/details?mid=9aa68dbd3f92b0622c7821faf9b6c40f&prevstart=0
и при запросе на закачку получим отказ: http://sketchup.google.com/3dwarehouse/download?mid=9aa68dbd3f92b0622c7821faf9b6c40f&rtyp=k2
Суть интереса получить такие "запрещенные" модели.
Значит они кэшируются именно в dbCache.dat. В шапке темы указано "При распаковке для GeoCacher-а извлекаются вообще все данные, которые есть в кэше GoogleEarth", т.е. и 3д-модели без текстур?
Автор: zedxxx
Дата сообщения: 20.08.2013 07:37

Цитата:
т.е. и 3д-модели без текстур

И с текстурами и без текстур. Но как я уже сказал, там специфический формат хранения данных (сырая бинарь) и вытянуть оттуда геометрию будет очень трудно. Если сами текстуры теоретически ещё более-менее просто достать, ввиду того, что они хранятся в растрах (jp2 kakadu), то вот с остальным придётся сильно напрягать мозги чтобы отреверсить формат и написать конвертер в kml.
Автор: SERGEEV
Дата сообщения: 20.08.2013 20:58

Цитата:
вытянуть оттуда геометрию будет очень трудно

в бинарном формате нет ничего страшного (благо ГЕ под ПК), формат как kml так и Коллады - простой текст, поэтому его логично хранить в чём-то своём компактном.

Автор: zedxxx
Дата сообщения: 20.08.2013 22:18

Цитата:
в бинарном формате нет ничего страшного

Ага, особенно если ты компьютер - бинарь вообще родная стихия

Но коль вы не боитесь бинари, то вот вам для затравки: http://yadi.sk/d/FS3DA3XA88Upo
В архиве все данные, что понадобились GE для отображения "домика" с mid 9aa68dbd3f92b0622c7821faf9b6c40 (текстовый поиск по содержимому находит этот mid в двух тайлах). Тут всё: и модель и текстуры. Я специально призумился до максимума и нацелился строго на одну модель (благо, она достаточно уединённая), чтобы не загружалось ничего лишнего. Попробуйте проанализировать и разобрать вручную полученные данные.
Автор: vova2500
Дата сообщения: 06.09.2013 15:50
Здравствуйте zedxxx.

Поддержка кэша седьмой версии планируется?

Автор: zedxxx
Дата сообщения: 06.09.2013 18:37
Да. В самое ближайшее время. SAS.Planet я уже обучил этому кэшу, осталось немного подрихтовать CacheMaster-а.
Автор: zedxxx
Дата сообщения: 06.11.2013 16:07
CacheMaster v.3.0.0.0:
- добавлена поддержка кэша GoogleEarth 7.xx (на базе leveldb)
- добавлен режим создания тектового дампа метаинформации
- добавлено создание *.kml файлов привязки
- добавлена поддержка мультиязычности, доступны встроенные языки: Русский и Английский
Автор: zedxxx
Дата сообщения: 10.02.2014 13:10
CacheMaster v.3.0.1.0:
- исправление ошибок
Автор: SaniaNET
Дата сообщения: 30.03.2014 20:54
Здравствуйте.

Пару-тройку лет назад использовал Вашу утилиту ранней версии со старой гугл-землей. С тех пор много воды утекло. Ваша программа могла распаковывать кэш выдавая файлы в чистом виде с именами типа f1-0211003030111301333-i.155.jpg и т.п., где большая_серия_цифр - идентификатор места в нотации Гугл-Земли, 155 - номер версии снимков. Свежая же версия выдает файлы только в формате "SAS.Планеты" или "GeoCacher". Можете добавить возможность распаковки с прежними наименованиями файлов? Или подскажите, как можно трансформировать текущие файлы в ту исходную систему имен.

Т.е., например, как трансформировать имя файла "History\Images\fbaef\z19\225\x230981\92\y94225.jpg" в идентификатор места и версию?

Спасибо.
Автор: zedxxx
Дата сообщения: 30.03.2014 23:14
А для чего вам такие странные имена нужны?

Из кэша SAS обратно полностью восстановить имя не получится - версия там не сохраняется. А "большую серию цифр" восстановить можно, но тут должен быть минимальный навык программирования или скриптописания. Впрочем, если такие навыки есть, то и получить из кэша GeoCacher-а тайлы в нужном формате не составит труда. Благо, алгоритмы-то все известны и открыты.
Автор: SaniaNET
Дата сообщения: 31.03.2014 19:39
Эти странные имена, в которых есть все необходимое, использую в своей самописной утилитке, которая склеивает файлы в необходимом виде, и готовит специфические дескрипторные файлы.
Было бы очень здорово, если бы в свою утилиту вернули бы возможность распаковки с именами в том самом старом формате, который довольно удобен для дальнейшей обработки результата распаковки - имя файла содержит всю необходимую информацию в понятном виде.
А вот с распаковкой без версий - еще хуже, ведь в кеше могут быть тайлы одного и того же места и разрешения разных версий (временных слоев), что соответственно не позволяет вытянуть из кеша именно нужный временной (исторический) слой.
Про именования файлов вида "fbaef\z19\225\x230981\92\y94225.jpg" пока так и не нашел информации о принципах формирования имени, догадываюсь только, что z19 - это зум, а остальные серии цифр и каталогов - пока темный лес. Можете ткнуть пальцем, где примерно написано о принципах этих имен?

Повторюсь, было бы очень здорово, если бы утилита позволяла извлекать файлы с теми именами что было ранее, это бы позволило использовать утилиту в качестве промежуточной для различных специфических задач, как, например, у меня...
Автор: zedxxx
Дата сообщения: 31.03.2014 22:49

Цитата:
использую в своей самописной утилитке

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

Цитата:
Было бы очень здорово, если бы в свою утилиту вернули бы возможность

Да, могу сделать.

Цитата:
Про именования файлов вида

Это практически тайловый кэш SAS.Планеты:

fbaef - дата исторического тайла
z19 - зум, Z = 19
225 - X div 256 (div - целочисленное деление)
x230981 - координата X = 230981
92 - Y div 256
y94225 - координата Y = 94225

Используя функцию PointToDigitName из X, Y, Z получаем то самое длинное цифровое имя. Обратная функция для получения X, Y из имени: GENameStringToXY.

Автор: Propretor
Дата сообщения: 11.08.2014 12:18
zedxxx
Большое спасибо аз программу. Но есть вопрос. Использую GE 7-ой версии. Сконвертировал Вашей программой кэш. Каким образом мне его подключить к SasPlanet?
Автор: zedxxx
Дата сообщения: 11.08.2014 13:54
1. Положить кэш в папку SASPlanet\cache\ge_earth
2. Модифицировать (или создать новый, на его основе) zmp SASPlanet\Maps\sas.maps\Google\GoogleEarth\GeoCacher.Http\GeoCacher.Earth.Http.zmp изменив там тип кэша с ОЗУ на SAS.Планета и прописав имя папки ge_earth


Автор: Propretor
Дата сообщения: 12.08.2014 11:25
zedxxx
Спасибо за совет. Буду пробовать
Автор: Propretor
Дата сообщения: 13.08.2014 11:38
zedxxx
Только что попробовал сделать все что Вы написали. Заработало, но не сразу.
1.Конвертор при указании что куда складировать создает по умолчанию дополнительные подпапки Earth/Images и тайлы кидает туда. Чтобы заработало, нужно было ручками переместить все сконвертированное на 2 уровня выше.
2.А вот со второй проблемкой я уже не знаю что делать, потому что не знаю кто виноват. Сконвертированные данные в SasPlanet ложатся со сдвигом. В моей широте где-то метров на 50. Явно что-то у кого-то не так с проекцией. Но вот у кого? GE, SasPlanet, или конвертор?
Автор: zedxxx
Дата сообщения: 13.08.2014 20:47
Какую проекцию указываете? На гугл мапс смещение есть? Смещение проверяете относительно чего?
Автор: Propretor
Дата сообщения: 14.08.2014 07:58
zedxxx
Не понял вопроса. В Google earth проекция не указывается, в конверторе также, в SasPlanet проекция указывается только при склейке фрагмента.
Если в SasPlanet выбирать источником спутниковый снимок от Яндекса, то смещения нет и все точно. Смещение проверял относительно народной карты яндекса и собственных треков с навигатора. Сейчас проверю как свои точки в Google Earth ложатся, со смещением или без...
Автор: zedxxx
Дата сообщения: 14.08.2014 20:31

Цитата:
Конвертор при указании что куда складировать создает по умолчанию дополнительные подпапки Earth/Images и тайлы кидает туда.

Ну, там ещё могут быть папки Mars, Moon, History, так что дополнительно раскидывать по папкам нужно в любом случае.

Цитата:
в SasPlanet проекция указывается только при склейке фрагмента

Не только. Проекция карты указывается в zmp: http://sasgis.org/wikisasiya/doku.php/epsg_%D0%BA%D0%BE%D0%B4_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%86%D0%B8%D0%B8

Цитата:
Сейчас проверю как свои точки в Google Earth ложатся, со смещением или без...

С этого и надо было начинать, прежде чем поднимать вопрос. Неточность привязки снимков на картсервисах - это обычное дело, чай снимки не с военных спутников, а обычный гражданский ширпотреб. И проверять надо не на яндексе, а на картах гугла. В SAS есть GoogleMaps, вот с ним и сравнивайте картинку, что получили из кэша GE.

В любом случае, "конвертер" никаких операций по смене пола проекций не выполняет, так что этот вопрос не ко мне.
Автор: Propretor
Дата сообщения: 17.08.2014 09:58
zedxxx

Цитата:
Не только. Проекция карты указывается в zmp:

Спасибо, не знал. Но ситуации это не изменило в лучшую сторону.

Было:
[PARAMS]
EPSG=4326
[ViewInfo]
EPSG=3785

сделал:
[PARAMS]
EPSG=4326
[ViewInfo]
EPSG=4326
стало только хуже. Вернул все обратно.


Цитата:
В любом случае, "конвертер" никаких операций по смене пола проекций не выполняет, так что этот вопрос не ко мне.

Не обижайтесь. Огромное спасибо за конвертор. Претензий к Вам нет никаких, все отлично.
Просто есть смещение данных некоторых карт-сервисов. Вот их и обнаружил.

Есть еще вопрос: если файлы уже есть в кэше SasPlanet, что будет делать конвертор? Перезаписывать файлы или нет? Если да, то безусловно или по условию если файл новее?
Автор: zedxxx
Дата сообщения: 17.08.2014 10:13

Цитата:
если файлы уже есть в кэше SasPlanet

Перезапишет без всяких проверок. Единственное, в конце процесса будет показано число таких перезаписанных тайлов.
Автор: gen4gen
Дата сообщения: 10.11.2014 18:15
Ребята, кэш, котороый вытягивает CacheMaster, вообще работоспособен? Подключить к планете не получается. Мастер версии 3.0.1.0. Конвертирую в кеш геокешера. Из планеты (ночная) через GeoCacher.Earth.Direct.zmp пытаюсь открыть - тишина. Путь в настройках к каталогу с кешем прописан естественно.
Автор: zedxxx
Дата сообщения: 10.11.2014 18:40

Цитата:
вообще работоспособен?

Конечно.

Цитата:
через GeoCacher.Earth.Direct.zmp пытаюсь открыть - тишина

Естественно. Для распакованного кэша нужен другой zmp, с другими настройками.
Автор: gen4gen
Дата сообщения: 10.11.2014 18:55
Где его взять, этот zmp?

Насколько я понимаю, планете уже не нужен ни "TileStorage_GC.dll", ни "TileStorage_GЕ.dll", верно? Только "libge.dll"?
Автор: zedxxx
Дата сообщения: 10.11.2014 19:24
Возьмите свежий (сегодняшний) GeoCacher.Earth.Http.zmp и измените в нём тип кэша с "ОЗУ" на "SAS.Планета". Тайлы положите в папку: SASPlanet\cache\GE.Earth\ и будет показывать.
Автор: gen4gen
Дата сообщения: 10.11.2014 19:30
zedxxx, по http не работает история GE. А это критично. Сам http работает.

Автор: zedxxx
Дата сообщения: 10.11.2014 19:43
Вы определитесь, в каком режиме и откуда вы хотите смотреть снимки:

1. Из кэша GE напрямую, без распаковки.
2. Из распакованного кэшмастером кэша GE.
3. Из кэша GC напрямую, без сохранения тайлов в кэш SAS.
4. Из кэша GC по http, с/без сохранением тайлов в кэш SAS.

Мудрить с zmp нужно только для варианта 2. Для остальных вариантов zmp идут в комплекте с SAS.

Цитата:
Насколько я понимаю, планете уже не нужен ни "TileStorage_GC.dll", ни "TileStorage_GЕ.dll", верно? Только "libge.dll"?

Не верно, не нужна только TileStorage_GЕ.dll. Остальные dll нужны для вариантов просмотра снимков 1 и 3.

Цитата:
по http не работает история GE. А это критично.

Работает, но не очень удобно - нужно в параметры запроса вписывать дату снимка в бинарном виде. Если вам критична История, то для вас будет оптимальный вариант просмотра снимков - 3. Для этого режима нужна TileStorage_GC.dll и f1ct.dll (опционально, если хотите ещё видеть и высоты в строке состояния).

Автор: gen4gen
Дата сообщения: 10.11.2014 20:07
zedxxx,

Задача смотреть исторические снимки из планеты с возможностью склеивания листов.

1. Из кеша GE напрямую работает. Но ограничение на размер в 2048Мб в GE дает знать. Для маленьких кусочков еще можно использовать, но для больших регионов кеш, видимо, перезаписывается и часть уже скачанных данных вновь становятся недоступны.

2. Этот вариант видится мне наиболее приемлемым ибо отпадает лимит размера кеша и сохраняется возможность просмотра истории. Но он то как раз и не работает.

3. Распакованный кешмастером кеш GE в формате GC это разве не то же самое, что кеш GC, который он сохраняет, когда работает, как прокся? На самом деле ни один из этих видов кешей у меня в планете не видны. Пробовал прописывать разные пути и к кешу GC и к распакованному. Сборка ночная.

4. Этот вариант, по http, работает, но только один раз после первого запуска планеты. После этого спасает только удаление папки и установка планеты заново. К тому же в нем не очень удобно работать с историей GE.

Страницы: 123456

Предыдущая тема: SQL 2000


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