Форум: "Media";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];
ВнизАлгоритм заливки Найти похожие ветки
← →
hgd (2006-07-10 19:59) [0]Подскажите, алгоритм для заливки области с пороговым значением слоя. Как в Photoshop-е выделение волшебной палочкой!
← →
antonn © (2006-07-10 20:44) [1]что такое пороговое значение?
по каналам (Lr,Lg,Lb - каналы RGB, _b - куда заливать, ниже уровня или выше):procedure PrepareBitmapLevel(_B_out:Tbitmap; Lr,Lg,Lb:byte; _b:boolean);
const Pixels = MaxInt div SizeOf(TRGBTriple);
type PRGBArray = ^TRGBArray;
TRGBArray = array[0..Pixels-1] of TRGBTriple;
var x, y: Integer; RowOut: PRGBArray;
begin
_B_out.PixelFormat:=pf24bit;
for y:=0 to _B_out.Height-1 do begin
RowOut:= _B_out.ScanLine[y];
for x:=0 to _B_out.Width-1 do begin
if (RowOut[x].rgbtRed>Lr)and(RowOut[x].rgbtGreen>Lg)and(RowOut[x].rgbtBlue>Lb)and(_ b) then begin
RowOut[x].rgbtRed:=255;
RowOut[x].rgbtGreen:=255;
RowOut[x].rgbtBlue:=255;
end else
if (RowOut[x].rgbtRed<Lr)and(RowOut[x].rgbtGreen<Lg)and(RowOut[x].rgbtBlue<Lb)and not(_b) then begin
RowOut[x].rgbtRed:=255;
RowOut[x].rgbtGreen:=255;
RowOut[x].rgbtBlue:=255;
end;
end;
end
end;
← →
hgd (2006-07-10 21:47) [2]Ну имеется ввиду пороговое значение заливки, как в Photoshop. Например нажимаем на пиксель X,Y и затем закрашивается связная область от X,Y по заданному порогу.
← →
antonn © (2006-07-11 05:31) [3]связная - это как в пайнте заливка?
← →
miek © (2006-07-11 08:04) [4]Обычный алгоритм flood fill, только с проверкой каждого пиксела не на цвет, а на пороговое правило...
← →
hgd (2006-07-11 16:20) [5]А что это за алгоритм flood fill?
← →
grouzd)ev © (2006-07-11 19:09) [6]думаю обычный волновой. хотя можно не парится и сделать за 3 минуты через рекурсию =) впрочем, может я ошибаюсь
---
... we are walking on a thin line and you better avoid the risk ...
← →
hgd (2006-07-11 20:30) [7]А пример есть или его суть?
← →
grouzd)ev © (2006-07-11 20:49) [8]http://algolist.manual.ru/maths/graphs/shortpath/ или "волновой алгоритм" в поисковике
ну а рекурсию проходят еще в школе =)
---
... we are walking on a thin line and you better avoid the risk ...
Страницы: 1 вся ветка
Форум: "Media";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c