SASGIS

Веб-картография и навигация


View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000152SACS.Планета[All Projects] Хотелкаpublic13-10-2010 07:4409-08-2013 15:00
Reporterbigba2 
Assigned Tovasketsov 
PrioritynoneSeverityminorReproducibilityhave not tried
StatusclosedResolutionfixed 
PlatformWindowsOSXPOS VersionSP3
Product Version 
Target VersionFixed in Version130803 
Summary0000152: Сохранение фотографий в кэш с panoramio
Descriptionсобственно сабж
Tagspanoramio, кэш, прокси
Attached Filesrar file icon SASPlanet_180212.rar [^] (1,674,008 bytes) 19-02-2012 14:18
rar file icon измененные файлы_180212.rar [^] (113,770 bytes) 19-02-2012 15:05
rar file icon SAS_With_Panoramio_Photos_Info.rar [^] (3,063 bytes) 21-02-2012 20:06
rar file icon ParseAttachmentScript_NEW.rar [^] (972 bytes) 14-10-2012 23:48

- Relationships
has duplicate 0000548closedvdemidov SAS.Планета Сохранение фотографий Panoramio 
related to 0000535confirmed SAS.Планета Сохранение описаний в кэш с Викимапии 
related to 0000401closedvasketsov SACS.Планета При открытии объекта Викимапии или фотографии Panoramio они открываются в мини-окне IE 

-  Notes
(0004003)
vasketsov (manager)
29-09-2011 13:53

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

зовётся dll и подменяется текст html как угодно (нет dll - ничего не меняется).
сохраняются картинки medium и original в разные папки.
работает локально (доступно всё то, что хоть раз открывалось по клику мыши).

НО.
для красоты надо замутить что-нибудь типа плагинов.
на худой конец просто поюзать "стандартные" возможности программы.
ибо сейчас в этой dll есть 2 фенечки, которые по идее неплохо бы заставить делать программу (то есть передать обратно вызов). это выделение памяти (и убийство её потом) и скачка файла (пока без всяких проксей, что тоже некошерно).
впрочем, если устроит реализация не в виде плагинов, а просто в виде dll с 2-мя экспортируемыми функциями stdcall - можно и так оставить (хотя бы пока плагины не сформируются окончательно, собственно требования я описал, надо в плагине уметь выделять и убивать память + скачивать файл с урла в папку, плагин подменяет текст в InternalBrowser-е, тривиальнейшая реализация внутри showmessage).
(0004004)
zOn (reporter)
29-09-2011 17:39

vasketsov
почти нифига не понял, но:
куда будут сохраняться фотки? в общий кэш панорамио или в отдельную папку? как настраивается путь к папке? какая структура кэша фоток - по зумам, т.е. дублируют ли они друг друга?
(0004005)
vasketsov (manager)
29-09-2011 17:52

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

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

пока что в отладочном полуручном режиме складывается ровно в 2 папки (пока что вообще не уверен, что надо делить по нескольким папкам, переполнить их конечно можно, но фотки туда не автоматом валятся, а только если их открывать по клику).
настройку сделал в виде ini-шки рядом с dll.

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

в общем какая-то промежуточная хрень получается, есть общее с "картой" (в смысле работы с zmp), но не совсем "карта".
(0004006)
zOn (reporter)
29-09-2011 18:09

делай сразу деление по папкам, что бы потом не переделывать.
1024 файла в одной папке, а дальше начинаются проблемы.
(0004007)
vasketsov (manager)
29-09-2011 18:26
edited on: 29-09-2011 18:28

>что бы потом не переделывать
угу, сразу охота нормально сделать.

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

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

так что хрен поймёшь как делить по папкам. там же просто число (номер фотки). можно конечно попробовать и на 1024 делить с остатком (частное дальше делим, остаток берём в папку - так и сооружаем имя папок и файла).

(0004008)
zOn (reporter)
29-09-2011 18:45

сохраняй структуру общего кэша и не изобретай велосипед. но складывать всё сразу в нижний слой, а верхние папки и не создавать.
или ограничиться например шагом в 5 зумов. 1-5-10-15-19, т.к. от зума к зуму наполняемость растет, а отображать на 10-м все фотки 19-го - убийство.
хотя...
ведь отображать будет zmp панорамио, а длл только перехватывать запрос отображения/загрузки и отдавать САС контент? если так, то за кашу-малашу отвечает zmp, а dll надо только найти картинку по ID и вернуть САС? тогда оставляй только структуру кэша 19-го слоя.
(0004009)
vasketsov (manager)
29-09-2011 19:12

>длл только перехватывать запрос отображения/загрузки и отдавать САС контент?
не так.

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

в этом смысле запрос отображения и загрузки картинок никак не перехватывается, его тупо нету, грузятся jpg-и по номеру внутри dll.
и раньше сас тоже не сам грузил картинки, а отдавал html в броузер. сейчас просто отдаётся другой html.

вот и представь себе, что грузится картинка с номером 7549986. и ничего больше. ни координат, ни зума.

я не знаю откуда взялось магическое число 19 и не изменится ли оно когда-нибудь и имеет ли использование его какое-либо обоснование.

я знаю что если число делится на 1024, то разных остатков может быть не более чем 1024 - соответственно остаток от деления - имя папки первого уровня, полученное частное проверяем, меньше ли оно 1024, если меньше - значит больше дополнительных уровней папок не надо, если нет - снова делим с остатком. и так далее. имя файла jpg всегда оригинальное, чтобы можно было найти поиском. 19 вообще ни при чём.

меня больше волнует возможная реализация загрузки и удаления фоток для выделенной области. потому что нормальных мыслей пока нет, только очень страшные.
(0004010)
zed (manager)
29-09-2011 19:26

Значит надо как-то научить САС отдавать координаты точки, по которой кликнули и как-то привязывать загруженные фотки к этим координатам. Тогда можно будет и по зумам сортировать и с удалением для выделенной области проблем не будет.
Но это всё вопросы второго плана. Вопрос первого плана - как это вообще нормально прикрутить к САС? Чтоб без dll и инишников всяких левых. Т.е. либо сделать частью функционала, либо подкрутить функционал и сделать в виде плагина. А в виде временного костыля маловероятно что оно пройдёт.
(0004011)
zOn (reporter)
29-09-2011 19:26

19 - вроде как максимальный зумм для постСССР пространства.
складывать картинки по координатам и никак более - никаких делений на 1024.

т.е. dll перехватывает ответ, а не запрос? а в ответе разве не приходит инфо о координатах? сейчас не могу проверить. может быть вообще заменить собой вызываемый браузер?

> меня больше волнует возможная реализация загрузки и удаления фоток для выделенной области. потому что нормальных мыслей пока нет, только очень страшные.
загрузка и удаление слоя панорамио работает же. вот и надо от этого плясать.
скорей всего к этой dll надо прикручивать zmp что бы САС работала с кэшем как с любым другим сервисом.
(0004012)
vasketsov (manager)
29-09-2011 20:48

>либо сделать частью функционала
придётся сильно пописать zmp для panoramio.

>сделать в виде плагина
это был бы идеальный вариант. впрочем, это та же самая "левая dll", только вид сбоку.

>19 - вроде как максимальный зумм для постСССР пространства
даже если и так, то можно и заранее 20 взять.

>никаких делений на 1024
гы. смысл в структуре кэша - ограничение числа файлов в одной папке. в случае сохранения фоток в одном тайле (значит заведомо в одной папке кэша) может быть сколько угодно много файлов (скажем, для 18-го зума). то есть исключительно стандартная структура кэша в данной ситуации не решает свою основную задачу - ограничение числа файлов в одной папке. безусловно бонус будет - стандартная структура кэша позволит выполнять операции с выделенной областью. но бонус при отказе от основного смысла - это занятно.
а ещё не понятно, почему нельзя юзать кэш panoramio kml для этого. ведь если точку на карте видно (пусть и на текущем зуме) - значит где-то в кэше panoramio kml есть данные об этой фотке и её координатах. без кэша panoramio kml всё равно глупо юзать картинки, это будет уже не сас.

>dll перехватывает ответ, а не запрос?
ни то и ни другое. dll подменяет body у html-я. в этот момент уже никаких запросов сас не выполняет.

>может быть вообще заменить собой вызываемый браузер?
бессмысленно, проблемы все те же остаются, от браузера они не зависят.

>к этой dll надо прикручивать zmp что бы САС работала с кэшем как с любым другим сервисом
эта dll - временная затычка, исключительно ради простоты отладки без перезапуска программы, загрузилась, отпарсила и выгрузилась. Её в идеале быть не должно вообще.
А должен быть некий плагин (или zmp с кодом внутри), настроенный на:
а) сохранение открытых фоток вручную (это основное)
б) на разбор существующего кэша panoramio kml и загрузку фоток для выделенной области в кэш panoramio photos (это полезный бонус);
в) на удаление из кэша panoramio photos для выделенной области (это полезный бонус);
(0004014)
zOn (reporter)
30-09-2011 05:46

>а ещё не понятно, почему нельзя юзать кэш panoramio kml для этого.
так если сможешь сделать внедрение локальной ссылки в него, то будет супер решение.
(0004015)
bigbambr (reporter)
30-09-2011 06:19
edited on: 30-09-2011 07:10

Мне кажется, что нужно просто скачивать каждое просмотренное фото в папку (при заполнении папки 1024 фотками создавать следующую) а в панорамио, к просмотренной/счачаной метке нужно добавлять путь к этому файлу. И цвет метки менять. чтобы было видно, какие файлы закачены. И пусть все файлы будут в одной папке. Главное чтобы метки в панорамио их видели и всё. В конце концов это же не географические данные а медиа, прикрученная к координатам.

и в просмотренной части kml просто заменить пути расположения файла.
например

 <a href="http://www.panoramio.com/photo/46249177">
 <img src="http://mw2.google.com/mw-panoramio/photos/medium/46249177.jpg" width="500" height="375">
 </a>

на

"
<a href="33/17.jpg">
 <img src="33/17.jpg" width="500" height="375">
 </a>
"

где 33 имя папки, 17 имя файла
ну в конце концов имя файла могут составлять и координаты. тогда легче будет показывать его из разных зумов. И не надо париться с множеством папок. все равно никто не будет качать фотографии кило-штуками! а в пяти-пятидесяти папках не так долго просмотреть имена файлов с подходящими координатами.
Или же предлагаю разграничить файлы как в 4 зуме на 64 папки. а вот в них можно создавать подпапки с порядковыми именами в каждой по 1024 картинки.

(0004016)
zOn (reporter)
30-09-2011 06:31

1. структура кэша должна быть. иначе потом замучаетесь прикручивать работу к программе.
2. фотки должны быть привязаны к координатам. ониж не просто так набросаны в панорамио.
остальное - полёт фантазии.
это всё ИМХО
(0004017)
vasketsov (manager)
30-09-2011 09:47

>если сможешь сделать внедрение локальной ссылки в него, то будет супер решение
это будет идиотизм по ряду очевидных причин. основная из них - невозможность разрулить, какую фотку грузить, а какую нет, в итоге на 14-м зуме по РФ я даже считать не хочу сколько места нужно, при том что почти все фотки ни разу не посмотришь и не откроешь. Я наверное всего в жизни с панорамио (кроме своих) открывал и смотрел фоток 200-300, заведомо меньше 1000. Кроме того, будет необходимо повторно грузить уже существующий кэш kml, чтобы залетели картинки, кэшем нельзя будет обмениваться. Беда с новым кэшем яндекса при переходе в png покажется просто детской забавой, но там деваться некуда, сервер приказал, а тут самому себе придумывать проблемы по меньшей мере странно. В общем лично я категорически отказываюсь лезть внутрь в скачанные тайлы, даже если это тайлы типа kml. Это ещё похлеще, чем править (вкорячивать) дату и геопривязку в тайлах-жпегах.

>почему нельзя юзать кэш panoramio kml для этого
Я имел в виду следующее.
Если абстрагироваться от безосновательных в данном случае желаний распихать фотки в стандартную структуру кэша (ибо никакой связи с тайлами фотки как таковые не имеют), использование стандартной структуры кэша решает исключительно задачу возможности работы с фотками в выделенной области.
Но эту задачу отлично решит и кэш panoramio kml. Сам по себе он достаточен, чтобы определить, какие фотки подпадают под удаление. Точно также можно грузануть все новые фотки внутри определённой области, достаточно пройти по кэшу panoramio kml и грузануть внутрение ссылки. Но нафига это грузить в тот же кэш? И зачем портить совершенно нормальный кэш panoramio kml? Я может вообще хочу на другой сетевой лиск фотки грузить, прикажете туда же kml отправлять? Даже при копировании кэша panoramio photos сас совершенно спокойно пройдётся по кэшу kml и будет иметь список номеров фоток. В общем-то все операции с выделенной областью будут работать. Тонкость ровно одна. Кэш kml должен быть. То есть, если грузануть kml на 12-м зуме, а потом грузануть photos по этой области на 18-м, то будут только фотки из 12-го, явно не все. Но это небольшая забота, ибо если нет kml, то и посмотреть photos в сасе принципиально нельзя. Удалил кэш kml - ну значит сам виноват, грузи по новой.
В принципе в особенно критичный случаях даже координату фотки при наличии интернета можно определить запросом на сайт panoramio.

>иначе потом замучаетесь прикручивать работу к программе
разве? никаких мучений.
1. При открытии фотки по клику не надо знать её координату, чтобы показать её и оригинальный снимок из локального источника. При показе фотка кладётся (при её отсутствии) в локальный кэш и подсовывается внутреннему броузеру совершенно тривиально.
2. При операциях с областью юзается кэш kml.
3. В принципе даже плагин писать не надо. Достаточно ввести понятие аттача для тайла (наверняка в викимапии тоже есть что интересное у векторов, осм тот же наверняка, в общем любые "векторные" тайлы), с соответствующей настройкой своих папок и запроса для скачки, и в "операциях" появится в комбобоксе рядом с panoramio kml пункт panoramio photos.

>фотки должны быть привязаны к координатам. ониж не просто так набросаны в панорамио
они и будут привязаны. только в кэше kml - именно он и отвечает за привязку фоток. зачем дублировать привязку (заведомо огрубляя её, с точностью до тайла) ещё в одном кэше?

>нужно просто скачивать каждое просмотренное фото в папку
оно именно так сейчас у меня и сделано. никакой привязки к координатам, только загрузка отсутствующих фоток в 2 папки (для разных размеров своя папка) при показе.
НО за публичное решение это не прокатит.
я-то конечно обойдусь и таким: в том файле, что я поправил, изменения очень локальные, и даже если он будет изменён в основном репозитории, я с лёгкостью вкорячу туда свою dll. НО желание было поиметь нормальное решение (вплоть до тиражируемости), а не единоличный костыль.

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

>а в пяти-пятидесяти папках не так долго просмотреть имена файлов
недолго - понятие относительное. если хочется разный цвет для скачанных и нескачанных - о поиске по куче папок придётся забыть.
(0004018)
bigbambr (reporter)
30-09-2011 10:26

>недолго - понятие относительное. если хочется разный цвет для скачанных и нескачанных - о поиске по куче папок придётся забыть.

разный цвет по моему очень не трудно сделать. если в ссылке есть http:// то белый, если нет (локальный адрес) то, например, синий.
(0004020)
gpsMax (reporter)
01-10-2011 07:31

> 1024 файла в одной папке, а дальше начинаются проблемы.

Да, примерно так. Велосипеды только изобретать не нужно, есть вполне себе замечательный метод. Всё просто - например, файл 37622112.jpg должен лежать в папке 037\622\112. Тогда в каждой папке не будет более тысячи элементов (вложенных папок или же самих фоток).
(0004021)
vasketsov (manager)
01-10-2011 11:10

>файл 37622112.jpg должен лежать в папке 037\622\112
Сам уже пока ковырялся допёр, что смысла нет конвертить в int, а просто поделить по три символа.
Тем более что никто не гарантирует, что идентифицирующая часть имени файла фотки останется целочисленной. Не говоря уже о других сервисах.
(0004022)
zed (manager)
01-10-2011 12:33

А как на счёт БД или на худой конец контейнера какого самопального?
(0004023)
vasketsov (manager)
01-10-2011 13:42

Давай я сначала сделаю через zmp нормально без dll и залью, ссылку дам, а потом обсудим тонкости и архитектурные ошибки.
Пока что сделал zmp + парсер скрипта для подмены html + удаление фоток по выделенной области.
Сейчас скачку по выделенной области делаю.
зы. Где реализация 'function DoRequest(const AHost, ADoc, ARequestHeader...' ?
(0004024)
zed (manager)
01-10-2011 13:54

>Где реализация 'function DoRequest(const AHost, ADoc, ARequestHeader...'
Наброски в ревизии 3348, позже ещё был даже класс SimpleDownloader (3748), тоже для целей выполнения единичных запросов как внутрях сас, так и для скриптов.
(0004025)
vasketsov (manager)
01-10-2011 16:22

>файл 37622112.jpg должен лежать в папке 037\622\112
Может лучше сделать не 037\622\112 а 622\112?
Понятно, что в будущем число папок и файлов в этом случае в сумме может быть и больше 1000, но во-первых, для этого надо грузануть всё без исключения, а во-вторых, это будет ещё очень нескоро, и будет равно 1001.
Пока что получается так что в каждой папке хранится ровно один файл, и ждать новых подпапок в этой папке можно не раньше чем число фоток увеличится на три порядка.
(0004026)
vasketsov (manager)
01-10-2011 19:48

вот собрал EXE-ху для поиграться.
в архиве ещё и поправленные файлики для zmp к panoramio.
все подробности в архиве в инфофайлике.
как будет понятно что больших багов и недодумок нету - оформлю реквест (думаю что завтра).
на вопросы отвечу.
Название: SAS_With_Panoramio_Photos.rar
Размер: 1.70 Мб
Доступен до: 2011-10-31 22:45:54
Ссылка для скачивания файла: http://ifolder.ru/26090889
(0004027)
zOn (reporter)
01-10-2011 19:53

vasketsov, красава! ты первый, кто реализовал "открытие исходников".
а почему на япапку? в атач не влазит?
(0004028)
vasketsov (manager)
01-10-2011 20:04

да фиг его знает с аттачем тут что, даже не подумал.
мне туда проще было.
забыл добавить, если фоток в тайле много, они скачиваются долго. не пугайтесь.
из темы ссылки прошу не выносить.
(0004029)
vasketsov (manager)
01-10-2011 21:18

залил сюда
SAS_With_Panoramio_Photos_V2.rar
более корректно работает с галочкой перекачки существующих файлов (галочка работает по kml) + корректно считается и отображается размер скачанных картинок.
зы. ступил и не сложил в этот архив остальные файлики. так что с япапки всё равно качать, а эта версия поверх, тут только exeха.
(0004030)
zed (manager)
02-10-2011 04:45

1. Ругается: ZylGPSReceiver - Demo version runs only whith Delphi IDE.
2. Не получилось отменить загрузку выделенной области
3. Загрузка не информативна: не понятно, сколько загрузилось (и загрузилось ли) и сколько ещё ждать
4. Аналогично и при просмотре - пока не будет окончена загрузка висят часики и мы даже карту подвинуть не можем (не говоря уже об отмене загрузки). В идеале, тут надо открывать окошко браузера и вместо фотки показывать крутящиеся часики, чтоб было видно, что идёт загрузка. Плюс, если закрыть этот браузер - загрузка отменится.
5. Сохраняет снимки и маленькие и большие, но большие из программы просмотреть никак не получается.
(0004031)
vasketsov (manager)
02-10-2011 08:08

1. Ну, другого нету у меня. Если и правда без дельфы не работает - ну извиняйте.
2. Как это? Вот я выделил пару тыщ тайлов на 14-м зуме вокруг своей деревни, начал грузить - пргрузилось тайлов 800 - приостановил, после остановки продолжил, потом остановил совсем. Просто когда останавливается, надо ждать догрузки всех аттачей для тайла, сас же потайлово грузит (признак перехода к следующему тайлу атомарный), а тайлы у kml, на один тайл приходится может сотня фоток. Подумалось, что лучше догрузить всё для тайла, чем бросить половину и потом начать со следующего (текущий тайл как-никак догрузился).
4. Да, самому не очень с часиками понравилось, но без их вообще беда была. Перенесу без часиков на послеоткрытие окошка (собственно туда где Text и подставляется в броузер, там же кстати Caption надо переделать нормально*).
>Плюс, если закрыть этот браузер - загрузка отменится
А вот сейчас как раз не отменится. Потому что броузер только показывает, отменяется показ картинок. А раз они грузятся ДО того как в браузер попадёт html с локальными фотками - закрытие браузера приведёт только к отказу от показа локальных фоток.
5. Да, пока что это косяк, но косяк html-я, непосредственно к программе отношения не имеет. В принципе можно вообще обе фотки сразу загружать, сделать типа 2 "закладки", и на каждой по фотке.

По пункту 3 (неинформативной загрузке):
а) сейчас размер картинок плюсуется к размеру скачанного, то есть, сас на общих основаниях пытается прогнозировать потенциальный объём скачанного.
б) прибавлять количество скачанных картинок к скачанным тайлам не рискнул.
в) видимо придётся после каждого обработанного тайла писать, сколько аттачей скачанно, сколько пропущено, сколько ошибок скачки. И в конце закачки итог подбивать. Будет мегаинформативно. А сейчас конечно, если галка "обновлять существующие" сброшена, kml-ки не перекачиваются, а фотки всё равно пытаются скачаться, хотя это никак не отражается в логе. В общем, если нет противопоказаний, так и сделаю.

*) в коде есть кусок, котрый переведёт в читаемый текст весь html-понос (правда тоже с ошибкой, там амперсанда в одном месте нет), вот его выделю отдельно и позову.
(0004032)
T_Im (reporter)
02-10-2011 17:02

Вставлю свои 5 копеек.

Я вижу процесс скачивания фоток с панорамии так:

1) SAS качает kml-тайл, после скачивания отдает его путь плагину
2) плагин обрабатывает kml-тайл:
 выдирает ссылки и координаты фотографий, проверяет присутствие фотографий в кеше, качает недостающие фотографии, сортирует их по папкам (на основании KML-файла: имя полигона=имени папки, куда будет положена фотография если ее координаты попадают внутрь полигона), локализует в тайле ссылки на локальные
3) после отработки плагина передается управление на SAS для скачки следующего тайла.

Скрипты отсюда
http://forum.ru-board.com/topic.cgi?forum=5&topic=29416
у меня есть, могу их собрать и скомпилировать в консольную программу, которой надо будет передавать в параметрах из SAS при загрузке каждого kml-тайла только путь к нему и (опционально) прокси.
(0004033)
vasketsov (manager)
02-10-2011 17:37

залил сюда SAS_With_Panoramio_Photos_V3.rar
все нужные для игр файлики есть в архиве
включая информационный (обязательный для чтения)
поправлено всё кроме непоказа оригинальной фотки.

SAS_With_Panoramio_Photos_V2.rar можно удалить
(0004034)
vasketsov (manager)
02-10-2011 18:28

хрен его знает, что мешает показываться оригинальной фотке
сделал показ через javascript )))))
(0004036)
zed (manager)
03-10-2011 05:05

>поправлено всё кроме непоказа оригинальной фотки.
Ещё в известные недоделки:
В режиме загрузки выделенной области, при нажатии Пауза, загрузка не останавливается до тех пор, пока не будут загружены все аттачменты для текущего тайла. При нажатии Отмена, загрузка тут же не прерывается, а программа перестаёт реагировать на действия пользователя до тех пор, пока текущая фотка не загрузится. Что при размерах фоток в 5Мб уже критично, тем более, что юзер никак не информирован о том, что сейчас делает прога. Не знаю, это так задумано или нет (кода не вижу), но как-то нужно эти моменты разрулить? Т.е. чтобы САС реагировал на действия пользователя в тот же момент, как ему была отдана команда, а не пока он там что-то докачает.
(0004037)
vasketsov (manager)
03-10-2011 06:32

>программа перестаёт реагировать на действия пользователя до тех пор, пока текущая фотка не загрузится
всё ещё хуже. если pause - скачка фоток для тайла продолжалась до конца. сделаю проверку как для terminated, чтобы сваливало при pause и не переходило на следующий тайл.
(0004038)
vasketsov (manager)
03-10-2011 07:45
edited on: 03-10-2011 07:50

Загрузил SAS_With_Panoramio_Photos_V4.rar.

Файлики настроек panoramio соответствуют тому, что поведение программы не меняется, кому надо - включает нужное сам. впрочем, это как пожелаете.
в файле info.txt более подробно описал параметры и как что именно править для включения.

Кроме этого поправлено:
а) при отмене скачки, если есть оставшиеся фотки, они не скачиваются, переход на следующий тайл не выполняется.
б) показ большой фотки сделан через javascript.

SAS_With_Panoramio_Photos_V3.rar можно удалять.

Если до вечера не будет новых баг - вечерком залью в репо и оформлю реквест.

(0004039)
zed (manager)
03-10-2011 12:27

Новых багов вроде не заметил, так что можешь заливать.

P.S. Чувствую, что реквест будет довольно масштабным, так что решение о его принятии будет за vdemidov'ым или feya.
(0004040)
vasketsov (manager)
03-10-2011 17:24

залил и сделал реквест
зы. с инетом сегодня беда какая-то у меня
(0004045)
gpsMax (reporter)
05-10-2011 05:28

А опция "оставить как было" есть?
(0004046)
zed (manager)
05-10-2011 07:52

Есть.
(0004063)
zOn (reporter)
09-10-2011 13:30

так работает или нет? чего не закрываем?
(0005580)
nvet (reporter)
19-02-2012 14:16

Версия SAS для сохранения фоток Panoramio.
Собрана из исходников от 180212.
Архив с экзешником(больше ни чего не надо)- SASPlanet_180212.rar.
(0005582)
zed (manager)
19-02-2012 14:22

Код покажите?
(0005584)
nvet (reporter)
19-02-2012 15:04

Измененные исходные файлы:измененные файлы_180212.rar
(0005586)
vasketsov (manager)
19-02-2012 15:57
edited on: 19-02-2012 16:40

вот это новости )))
в двух словах можно насчёт реализации?
а то что-то файлов изменёных вроде как маловато будет.
Хм. Файл u_MapLayerWiki не версионирован.
И настройки с параметрами (и уж тем боеле все "магические строки") надо выносить из EXE. И качалки нет ((((
[DCC Error] frm_IntrnalBrowser.pas(333): E2003 Undeclared identifier: 'SetPanoExt'
В сад.

зы. Я так понимаю, это был толстый намёк, что пора бы уже сделать эту доработку до релиза? Там как бы много правок было в качалке да слоях с того момента как я это делал, но сделаю, код у меня остался. Если были какие-то претензии по последней версии EXE-хи - пишите.

(0005588)
nvet (reporter)
19-02-2012 19:22

В класс TVectorDataItemBase добавлена структура FPropExt(расширенные с-ва:наличие на диске - DiskImag,имя фотки - NameImg).При создании точки из FDesc(с помощью TRegExp) получаем имя фотки и если оно есть проверяем наличие на диске файлов квадрата(64*64),медиума,оригинального и сохраняем в битовый флаг
DiskImag.В результате для класса TWikiLayer для слоя Panoramio доступны расширенные с-ва точки.При отрисовке анализируются эти с-ва.
Первоначальная загрузка фоток происходит в TfrmIntrnalBrowser с помощью встроенного TEmbeddedWB.Используются различные события и анализ с помощью TRegExp.Кроме того добавлен TImgView32 для просмотра оригинальных фоток.
Метод SetPanoExt используется для динамического изменения FPropExt.

Магических строк в SAS еще очень много(Placemark т.д.)."Panoramio KML" это name из zmp ,надо же определить что слой Panoramio.URL можно и вынести,но это усложнит реализацию.

Качалка изначально не задумывалась так как 3/4 фоток "отстой" и сразу их грузить не стот.
(0005589)
vasketsov (manager)
19-02-2012 19:38
edited on: 19-02-2012 19:45

>можно и вынести,но это усложнит реализацию
Зато упростит потом поддержку. Не зря я делал это как общий интерфейс для "аттачей" тайлов с параметрами в zmp, а не заведомо одноразовую реализацию "panoramio only". В таком виде конечно это не прокатит.

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

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

Вощем возьми SAS_With_Panoramio_Photos_V4.rar, почитай текстовичок, потести. Комментарии и пожелания приму к сведению. Несмотря на некоторую небрежность (типа проект не билдится), есть грамотные места в коде; хотелось бы понять, чего добавить к моей старой реализации, коли уж сяду завтра её делать.

(0005590)
nvet (reporter)
19-02-2012 19:59

В SAS_With_Panoramio_Photos_V4.rar нет кода.
Без Дельфи не запускается(из за zylgpsrec).
(0005591)
vasketsov (manager)
20-02-2012 03:13

регистрируешься на битбукете - и сюда:
https://bitbucket.org/vasketsov/sasplanetvsa/src
но там сильно старый код, сейчас уже сильно многое поменялось.
(0005594)
nvet (reporter)
21-02-2012 17:27

>регистрируешься на битбукете - и сюда:
Зарегистрировался(nvet),при переходе по ссылке - Error
Access denied.
(0005595)
vasketsov (manager)
21-02-2012 20:10
edited on: 21-02-2012 20:27

Всё, залил эту многострадальную доработку.

Читаем SAS_With_Panoramio_Photos_Info.rar и тестим в нужных режимах.
Хоть делал на основе старого кода, но что-то где-то могло поменяться, мог сам пропустить что-нибудь по ошибке. В общем конечно баги могут быть легко.

В случае критики javascript-а - пишем и предлагаем свой.
Напоминаю, javascript юзается в переписанном броузере panoramio (в случае включения этой фичи) для смены картинок.

зы. Оригинальная картинка не показывается в TImgView32, потому что на это никак нельзя влиять из zmp. Покуда текст страницы формируется скриптом - там можно забацать всё что угодно, со своим блекджеком и шлюхами. А ещё потому что картинок (точнее аттачей) легко может быть больше чем 2 (а не только дефолтная и большая картинки).

ззы. Известные "багофичи":
1. Сохранение сессии скачки аттачей в sls не предусмотрено, восстанавливаться будет скачка карты (то есть если сохранить сессию скачки "panoramio фотографии" в sl и потом открыть этот файл - будет качаться "panoramio kml"). Как бы конечно косяк, но дело в том, что (де)сериализацию сессии скачки надо бы конечно переписывать, там каждый второй раз вылазят "числа чурова" в проценте скачки..... просто лениво с этим ковыряться.
2. Это сложнее концептуально. Непонятно, что выводить в статусбаре, если например скачано 50 пар фоток (из 63 пар фоток) и одна маленькая (на этом скачку прервали) размером 35 мегабайт для двух тайлов panoramio. Как бы ужей с ежами складывать некорректно, хотя с другой стороны размер скачанного хотелось бы и просуммировать.

(0007535)
vdemidov (manager)
19-06-2012 21:10

Сломано
(0008001)
alexey65536 (reporter)
29-07-2012 15:35

А можно ли надеяться, что будет когда-нибудь починено?
(0008006)
vdemidov (manager)
29-07-2012 18:51

Можно. Когда-нибудь обязательно.
(0009542)
vasketsov (manager)
14-10-2012 23:49

Файлик из ParseAttachmentScript_NEW.rar надо засунуть в zmp.
Параметры остались те же.
Восстановлено.

- Users who viewed this issue
User List Anonymous (6637x), OfK (2x), Tolik (1x), zed (1x), Oldest_Yeti (1x)
Total Views 6642
Last View 25-04-2024 20:13

- Issue History
Date Modified Username Field Change
13-10-2010 07:44 bigba2 New Issue
13-10-2010 07:57 vdemidov Status new => acknowledged
13-10-2010 07:57 vdemidov Product Version => 100707
13-10-2010 07:57 vdemidov Target Version => 20xxxx
13-10-2010 11:19 gpsMax Tag Attached: кэш
13-10-2010 11:19 gpsMax Tag Attached: panoramio
07-04-2011 00:33 gpsMax Relationship added related to 0000535
07-04-2011 00:34 gpsMax Tag Attached: прокси
09-04-2011 09:48 vdemidov Relationship added has duplicate 0000548
11-04-2011 07:12 vdemidov Status acknowledged => confirmed
06-06-2011 21:35 gpsMax Priority normal => none
29-09-2011 13:53 vasketsov Note Added: 0004003
29-09-2011 17:39 zOn Note Added: 0004004
29-09-2011 17:52 vasketsov Note Added: 0004005
29-09-2011 18:09 zOn Note Added: 0004006
29-09-2011 18:26 vasketsov Note Added: 0004007
29-09-2011 18:28 vasketsov Note Edited: 0004007 View Revisions
29-09-2011 18:45 zOn Note Added: 0004008
29-09-2011 19:12 vasketsov Note Added: 0004009
29-09-2011 19:26 zed Note Added: 0004010
29-09-2011 19:26 zOn Note Added: 0004011
29-09-2011 20:48 vasketsov Note Added: 0004012
30-09-2011 05:46 zOn Note Added: 0004014
30-09-2011 06:19 bigbambr Note Added: 0004015
30-09-2011 06:31 zOn Note Added: 0004016
30-09-2011 06:36 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 06:55 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 06:56 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 06:57 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 06:58 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 06:59 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 07:09 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 07:09 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 07:10 bigbambr Note Edited: 0004015 View Revisions
30-09-2011 09:47 vasketsov Note Added: 0004017
30-09-2011 10:26 bigbambr Note Added: 0004018
01-10-2011 07:31 gpsMax Note Added: 0004020
01-10-2011 11:10 vasketsov Note Added: 0004021
01-10-2011 12:33 zed Note Added: 0004022
01-10-2011 13:42 vasketsov Note Added: 0004023
01-10-2011 13:54 zed Note Added: 0004024
01-10-2011 16:22 vasketsov Note Added: 0004025
01-10-2011 19:48 vasketsov Note Added: 0004026
01-10-2011 19:53 zOn Note Added: 0004027
01-10-2011 20:04 vasketsov Note Added: 0004028
01-10-2011 21:15 vasketsov File Added: SAS_With_Panoramio_Photos_V2.rar
01-10-2011 21:18 vasketsov Note Added: 0004029
02-10-2011 04:45 zed Note Added: 0004030
02-10-2011 08:08 vasketsov Note Added: 0004031
02-10-2011 17:02 T_Im Note Added: 0004032
02-10-2011 17:35 vasketsov File Added: SAS_With_Panoramio_Photos_V3.rar
02-10-2011 17:37 vasketsov Note Added: 0004033
02-10-2011 17:55 zed File Deleted: SAS_With_Panoramio_Photos_V2.rar
02-10-2011 18:28 vasketsov Note Added: 0004034
03-10-2011 05:05 zed Note Added: 0004036
03-10-2011 06:32 vasketsov Note Added: 0004037
03-10-2011 07:40 vasketsov File Added: SAS_With_Panoramio_Photos_V4.rar
03-10-2011 07:45 vasketsov Note Added: 0004038
03-10-2011 07:50 vasketsov Note Edited: 0004038 View Revisions
03-10-2011 11:48 zed File Deleted: SAS_With_Panoramio_Photos_V3.rar
03-10-2011 12:27 zed Note Added: 0004039
03-10-2011 17:24 vasketsov Note Added: 0004040
05-10-2011 05:28 gpsMax Note Added: 0004045
05-10-2011 07:52 zed Note Added: 0004046
09-10-2011 13:30 zOn Note Added: 0004063
19-02-2012 14:16 nvet Note Added: 0005580
19-02-2012 14:18 nvet File Added: SASPlanet_180212.rar
19-02-2012 14:18 zed Note Added: 0005581
19-02-2012 14:19 zed Note Deleted: 0005581
19-02-2012 14:22 zed Note Added: 0005582
19-02-2012 15:04 nvet Note Added: 0005584
19-02-2012 15:05 nvet File Added: измененные файлы_180212.rar
19-02-2012 15:57 vasketsov Note Added: 0005586
19-02-2012 16:00 vasketsov Note Edited: 0005586 View Revisions
19-02-2012 16:04 vasketsov Note Edited: 0005586 View Revisions
19-02-2012 16:15 vasketsov Note Edited: 0005586 View Revisions
19-02-2012 16:40 vasketsov Note Edited: 0005586 View Revisions
19-02-2012 19:22 nvet Note Added: 0005588
19-02-2012 19:38 vasketsov Note Added: 0005589
19-02-2012 19:45 vasketsov Note Edited: 0005589 View Revisions
19-02-2012 19:59 nvet Note Added: 0005590
20-02-2012 03:13 vasketsov Note Added: 0005591
20-02-2012 03:14 vasketsov Assigned To => vasketsov
20-02-2012 03:14 vasketsov Status confirmed => assigned
21-02-2012 17:27 nvet Note Added: 0005594
21-02-2012 20:06 vasketsov File Added: SAS_With_Panoramio_Photos_Info.rar
21-02-2012 20:10 vasketsov Note Added: 0005595
21-02-2012 20:25 vasketsov Note Edited: 0005595 View Revisions
21-02-2012 20:26 vasketsov Note Edited: 0005595 View Revisions
21-02-2012 20:27 vasketsov Note Edited: 0005595 View Revisions
21-02-2012 20:50 vasketsov Status assigned => resolved
21-02-2012 20:50 vasketsov Fixed in Version => 120808
21-02-2012 20:50 vasketsov Resolution open => fixed
01-03-2012 06:08 vdemidov Target Version 20xxxx => 120808
06-05-2012 17:47 vasketsov Relationship added related to 0000401
19-06-2012 21:10 vdemidov Note Added: 0007535
19-06-2012 21:10 vdemidov Assigned To vasketsov =>
19-06-2012 21:10 vdemidov Status resolved => confirmed
19-06-2012 21:11 vdemidov Resolution fixed => reopened
19-06-2012 21:11 vdemidov Fixed in Version 120808 =>
19-06-2012 21:11 vdemidov Target Version 120808 => 1304xx
29-07-2012 15:35 alexey65536 Note Added: 0008001
29-07-2012 18:51 vdemidov Note Added: 0008006
14-10-2012 23:47 vasketsov Assigned To => vasketsov
14-10-2012 23:47 vasketsov Status confirmed => assigned
14-10-2012 23:47 vasketsov File Deleted: SAS_With_Panoramio_Photos_V4.rar
14-10-2012 23:48 vasketsov File Added: ParseAttachmentScript_NEW.rar
14-10-2012 23:49 vasketsov Note Added: 0009542
14-10-2012 23:50 vasketsov Status assigned => resolved
14-10-2012 23:50 vasketsov Fixed in Version => 1302xx
14-10-2012 23:50 vasketsov Resolution reopened => fixed
15-10-2012 12:45 vdemidov Assigned To vasketsov =>
15-10-2012 12:45 vdemidov Status resolved => confirmed
15-10-2012 12:45 vdemidov Resolution fixed => open
15-10-2012 12:45 vdemidov Fixed in Version 1302xx =>
13-02-2013 11:06 vasketsov Project SAS.Планета => SACS.Планета
13-02-2013 11:08 vasketsov Status confirmed => resolved
13-02-2013 11:08 vasketsov Resolution open => fixed
13-02-2013 11:08 vasketsov Assigned To => vasketsov
13-02-2013 11:08 vasketsov Status resolved => closed
09-08-2013 15:00 vasketsov Fixed in Version => 130803



Copyright © 2007 - 2024 SAS.Planet Team