Вопросы по исходному коду

Форум для обсуждения деталей разработки программы SAS.Планета

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

Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

Спасибо. Залью исправление. Но в следующий раз желательно сделать пулл-реквест на битбукете самостоятельно.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
adandara
Новичок
Сообщения: 7
Зарегистрирован: 02 фев 2014, 00:31

Re: Вопросы по исходному коду

Сообщение adandara »

vdemidov писал(а):Спасибо. Залью исправление. Но в следующий раз желательно сделать пулл-реквест на битбукете самостоятельно.
А там отдельная регистрация или логин от форума подходит? Изначально так и планировал, но не смог найти, как от Анонима добавить реквест. А выбирая, где регистрироваться - остановил свой выбор на форуме. :)
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

Битбукет это совершенно отдельный сайт. Но даже у нас на сайте у форума, багтрекера и вики имеют каждый свою независимую регистрацию. Увы :(
PS: А еще есть торрент-трекер также со своей собственной регистрацией.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Аватара пользователя
Parasite
Администратор
Сообщения: 5646
Зарегистрирован: 23 окт 2008, 17:38
Благодарил (а): 124 раза
Поблагодарили: 508 раз

Re: Вопросы по исходному коду

Сообщение Parasite »

vdemidov писал(а):у нас на сайте у форума, багтрекера и вики имеют каждый свою независимую регистрацию. Увы :(
PS: А еще есть торрент-трекер также со своей собственной регистрацией.
Потому что части проекта собраны на совершенно разных движках (коих сейчас аж 5, пересекающихся лишь в пределах верхнего меню в шапке - Вордпресс, phpBB, Wiki, Mantis, vBulletin), и разбираться в тонкостях валидации юзеров в каждом и делать сквозную аутентификацию - увольте. Причем в каждом зоопарке - еще и свой набор админов\юзеров...
Но если кто пришлет патч - то всегда пжалста. :)
The only difference between me and a mad man is that I am not mad. /Salvador Dali/
Изображение
zed
Гуру
Сообщения: 2888
Зарегистрирован: 16 авг 2008, 20:21
Благодарил (а): 89 раз
Поблагодарили: 568 раз

Re: Вопросы по исходному коду

Сообщение zed »

Зачем при загрузке меток в память, происходит предварительное копирование их в буфер, когда используемый датасет имеет метод LoadFromStream и можно загружать напрямую? Аналогично и с сохранением: вначале выгружаются из датасета в буфер, а только потом буфер сохраняется в файл.

Сейчас логика сделана таким образом, что отдельно обрабатываются ошибки чтения меток из файла и их парсинг, причём ошибка чтения считается более критической и с метками не разрешается работать вообще, в то время как при ошибке парсинга, можно продолжать работать в read-only режиме (но без меток, а с "чистого листа"). Мне не совсем понятна эта логика, но по-моему только из-за этой обработки и сделано лишнее копирование. Мне кажется из-за чего бы не произошёл сбой в загрузке меток, нужно переходить в read-only режим и не усложнять поведение.
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

Насколько помню, очень давно, Фей эксперементировал с разными вариантами и утверждал, что такая загрузка из строки в несколько раз быстрее чем напрямую из файла. Но это было давно и не факт что правда. А я просто не переделывал.
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Alex54
Новичок
Сообщения: 28
Зарегистрирован: 18 фев 2015, 12:14
Благодарил (а): 2 раза

Re: Вопросы по исходному коду

Сообщение Alex54 »

Доброго времени всем, кто участвует в данном проекте или интересуется им. Очень благодарен разработчикам за данную программу и тоже, как и многие здесь, полез разбираться в ней. Скажите пожалуйста, как можно (не нарушая "интерфейсного" подхода к разработке у автора) отображать на карте произвольные объекты средствами Canvas (так понимаю, что требуется создать отдельный слой), либо средствами GDI+ (или каким образом Вы делаете "антиалиасинг").
Буду премного благодарен за внимание
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

Alex54 писал(а):отображать на карте произвольные объекты средствами Canvas (так понимаю, что требуется создать отдельный слой), либо средствами GDI+ (или каким образом Вы делаете "антиалиасинг").
Никак. Нужно делать слой, который генерирует битмапки в формате RGBA по запросу конкретного тайла. Это все должно происходить в отдельном потоке и поэтому Canvas здесь нет места. Только массивы 4-х байтных пикселей. Остальное программа сделает сама.

Простой пример рисования тайловой сетки можно посмотреть в модуле u_BitmapLayerProviderGridTiles.pas
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Alex54
Новичок
Сообщения: 28
Зарегистрирован: 18 фев 2015, 12:14
Благодарил (а): 2 раза

Re: Вопросы по исходному коду

Сообщение Alex54 »

Спасибо Вам за быстрый ответ, буду разбираться.
Подскажите пожалуйста, Вы здесь ранее говорили, что программа как бы поделена на логические блоки по функционалу, не могли бы Вы привести список юнитов/интерфейсов, "ответственных" именно за загрузку и отрисовку тайлов (т. е. только карта, без модулей GPS, GSM, геокодинга, маршрутизации и др.) и "косвенных" зависимостей для загрузки/рисования (Bitmap32 и другие) ? Очень хочу разобраться в программе (есть мысль даже сделать совместимость со своим ГИС-сервером). Думаю, будет полезно не только мне...
P.S. Как сейчас у Вас обстановка в Киеве ?
Аватара пользователя
vdemidov
Гуру
Сообщения: 1687
Зарегистрирован: 12 дек 2008, 13:10
Откуда: Киев
Благодарил (а): 191 раз
Поблагодарили: 157 раз

Re: Вопросы по исходному коду

Сообщение vdemidov »

Alex54 писал(а):не могли бы Вы привести список юнитов/интерфейсов, "ответственных" именно за загрузку и отрисовку тайлов (т. е. только карта, без модулей GPS, GSM, геокодинга, маршрутизации и др.) и "косвенных" зависимостей для загрузки/рисования (Bitmap32 и другие)
Сейчас это папка BitmapLayerProvider, в ближайшем будущем, от этих интерфейсов буду избавляться и переходить на провайдеры тайлов, что бы получить в итоге, то что описано вот здесь Конвейеры подготовки изображения
Чтобы понять программу, вы должны стать одновременно и машиной, и программой.
Ответить

Вернуться в «Раздел для разработчиков программы SAS.Планета»