Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: CL | DM;

Вниз

Окружности   Найти похожие ветки 

 
ЧупаЧупс   (2004-04-13 22:30) [0]

Здравствуйте! Как можно определить резкий переход от одного цвета к черному, к примеру у меня есть черный круг, внутри него окружность, которую понемногу постепенно увеличиваю, так вот как можно определить, что цвет резко сменился, т.е. окружнасть вышла за черный круг?


 
Jack128 ©   (2004-04-13 22:38) [1]

пусть у тебя есть окружность радиуса R, все точки этотй окружности имеют цвет Цвет1. Есть ты увеличил R на 1, R := R + 1 и все точки новой окружности имели цвет Цвет2, тоо вот тебе твой резкий переход..


 
ЧупаЧупс   (2004-04-13 22:42) [2]

Ну к примеру вот я проверяю, если текущая точка является черным цветом, то я  увеличиваю радиус, а как узнать какого цвета точки окружности? (sin, cos?)
if Canvas.Pixels[i,k]=clBlack then inc(r);


 
panov ©   (2004-04-13 22:46) [3]

Если ты точно знаешь, что у тебя окружность и известен центр, то незачем проверять всю окружность, достаточно проверять точки на любом отрезке-радиусе...


 
Jack128 ©   (2004-04-13 22:49) [4]

for x := -R to R do
begin
 y := Round(sqrt(R*R - x*x));
 y1 := y; // точка в верхней полуплоскости
 y2 := -y; // точка в нижней полуплоскости
end;


 
ЧупаЧупс   (2004-04-13 22:49) [5]

Нет, так не полуится, т.к. в моем случае может оказаться, что не все точки являются определнного цвета, мне нужно выяснить какого цвета большинство из них :)


 
ЧупаЧупс   (2004-04-13 22:50) [6]

Спасибо :)



Страницы: 1 вся ветка

Текущий архив: 2004.05.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
1-1081927015
Viktor
2004-04-14 11:16
2004.05.02
exit;


1-1082264464
garry79
2004-04-18 09:01
2004.05.02
Как правильно сделать форму-заставку в отдельном потоке?


1-1081940111
clover
2004-04-14 14:55
2004.05.02
ScrollBars в MDI Form


1-1082013961
Yanis
2004-04-15 11:26
2004.05.02
Cursors


6-1078830973
S@shka
2004-03-09 14:16
2004.05.02
Передача буфера 8к по сетке