SASGIS - SAS.Планета
View Issue Details
0002718SAS.Планета[All Projects] Хотелкаpublic13-05-2015 03:5020-06-2016 17:08
Parasite 
vdemidov 
normalminoralways
resolvedfixed 
141212 
160707160707 
0002718: При склейке в файл с alpha - делать дырки в кэше прозрачными
Лично мне нужно в составе склейки в RAW - но если сие глобально, то сделать соответственно везде:

- если сводим слой и разрешена альфа: пишем альфу со слоя если подлежащий пиксель есть, и alpha=0 там если пикселя нет (дырка в кэше, или вне выделения но в пределах описанного прямоугольника, DefaultFill).
- если сводим карту и разрешена альфа: пишем альфа=FF где подлежащий пиксель есть, и alpha=0 там где пикселя нет.
Возникло тут: http://www.sasgis.org/forum/viewtopic.php?p=39512#p39512
No tags attached.
related to 0001676resolved zed Попиксельная склейка растров при полигональном выделении 
Issue History
13-05-2015 03:50ParasiteNew Issue
14-05-2015 09:00vdemidovNote Added: 0015897
14-05-2015 09:00vdemidovStatusnew => feedback
14-05-2015 09:01vdemidovProduct Version => 141212
14-05-2015 09:01vdemidovTarget Version => 151010
15-05-2015 19:18ParasiteNote Added: 0015925
15-05-2015 19:18ParasiteStatusfeedback => new
15-05-2015 19:19ParasiteNote View State: 0015925: public
15-05-2015 19:54vdemidovNote Added: 0015926
15-05-2015 19:54vdemidovStatusnew => confirmed
15-05-2015 19:54vdemidovTarget Version151010 => 150915
16-05-2015 08:22ParasiteNote Added: 0015932
18-05-2015 07:54vdemidovRelationship addedrelated to 0001676
16-09-2015 14:52vdemidovTarget Version150915 => 151010
10-10-2015 15:33vdemidovTarget Version151010 => 151111
06-11-2015 08:19vdemidovTarget Version151111 => 191221
17-06-2016 07:14vdemidovTarget Version191221 => 160707
17-06-2016 07:16vdemidovNote Added: 0017389
20-06-2016 17:03vdemidovStatusconfirmed => resolved
20-06-2016 17:03vdemidovFixed in Version => 160707
20-06-2016 17:03vdemidovResolutionopen => fixed
20-06-2016 17:03vdemidovAssigned To => vdemidov
20-06-2016 17:08vdemidovSummaryПри сведении в файл с alpha - делать дырки в кэше прозрачными => При склейке в файл с alpha - делать дырки в кэше прозрачными
20-06-2016 17:08vdemidovDescription Updatedbug_revision_view_page.php?rev_id=7001#r7001

Notes
(0015897)
vdemidov   
14-05-2015 09:00   
Не совсем понял, что ты имеешь в виду под "подлежащий пиксель есть". Сам тайл, к которому принадлежит пиксель есть? То есть предлагаешь для мест, где тайл присутствует оставить все как есть, а для мест где тайла нет вообще писать с нулевой альфой?
(0015925)
Parasite   
15-05-2015 19:18   
>что ты имеешь в виду под "подлежащий пиксель есть"
Пиксель, который берется "из тайлов" (в отличие от пикселя, который тупо заливается дефолтным цветом - если попадает на дырку или вне выделения, но еще в пределах описанного прямоугольником выделения пользователя).
Оно же "пиксель, несущий полезную инфу" :)

>предлагаешь для мест, где тайл присутствует оставить все как есть, а для мест где тайла нет вообще писать с нулевой альфой?
Не тайл (целиком), а пиксели из оного попадающие в выделение (ибо выделение хомяка не обязательно пойдет по границе тайла). В этом случае - писать непрозрачную альфу, если сводим с альфой.
Если же на этом месте дырка, либо пиксели есть но уже не попадают в выделение - заливать дефолтным цветом (вместо картинки) ПЛЮС писать прозрачную альфу, если сводим с альфой.

То есть, дырки и области НЕ попадающие в выделение - будут прозрачными, а несущие полезную инфу (попавшие в выделение+есть кэш) - непрозрачными. Это в случае карты.
В случае слоя: (попавшее в выделение+есть кэш) = берем альфу с кэша какая там есть, не попавшие и\или дырка - ставим альфу прозрачной.

То есть, отталкиваться в любом случае надо от факта "пиксель берется с тайла (= альфа непрозрачна в случае карты\альфа с тайла в случае слоя), или заливается дефолтным цветом (=дырка или вне выделения, альфа прозрачна)".

Иллюстрация: круг (выделение пользователя), описанный вокруг него квадрат (сводимый снимок), внутри круга - дырка в кэше (непрокачан) =
- внутри круга пишем непрозрачную альфу (исключая дырку);
- дырку заливаем дефолтным цветом ПЛЮС прозрачной альфой (ибо дырка);
- участки между внешней границей круга и внутренней квадрата - заливаем дефолтным цветом ПЛЮС прозрачной альфой (ибо вне выделения пользователя).

В результате альфа = реально несущие полезную инфу пиксели в сведенном изображении, ака "карта заполнения в пределах выделения, попиксельно".
(0015926)
vdemidov   
15-05-2015 19:54   
>Не тайл (целиком), а пиксели из оного попадающие в выделение (ибо выделение хомяка не обязательно пойдет по границе тайла).
Это только после реализации хотелки о точном полигональном склеивании, сейчас - максимум с точностью до тайла, то есть тайл лежаший на границе полигона всегда попадает целиком (ну если не обрезается описанным прямоугольником).
(0015932)
Parasite   
16-05-2015 08:22   
>Это только после реализации хотелки о точном полигональном склеивании
Ок. Пускай. Главное - чтобы не забыть. Для начала пускай будет по-тайлово.
Свяжи ту хотелку с этой? Я не в курсе, где она тут у тебя валяется.
(0017389)
vdemidov   
17-06-2016 07:16   
В общем, при склейке в формат с поддержкой альфы и включенной альфой, фон вообще не будет подкладываться, а вместо дырок в покрытии будет 0x00000000