Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
4-1078427268
reel_geek
2004-03-04 22:07
2004.05.02
Событие мыши вне окна вообще...


14-1081250112
Фикус
2004-04-06 15:15
2004.05.02
Подскажите, как решить.


1-1082026447
Dentist
2004-04-15 14:54
2004.05.02
Насчет CoolTrayIcon


1-1082207532
maxz
2004-04-17 17:12
2004.05.02
Как сделать, чтобы программа занимала меньше места в оперативке?


1-1081862283
jiuraf
2004-04-13 17:18
2004.05.02
Удаление картинки из TImage




   Наверх