Вниз
Скачать: 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.022 c
3-1081319110
lehich
2004-04-07 10:25
2004.05.02
проверка на совпадения


1-1082287187
Андрей Сенченко
2004-04-18 15:19
2004.05.02
Поймать ответ ShellExecute в случае ошибки


7-1078580326
KME
2004-03-06 16:38
2004.05.02
Работа с дискетами


11-1065880939
Hamer1
2003-10-11 18:02
2004.05.02
Как экстрактировать Ресурс


3-1080727303
Goida
2004-03-31 14:01
2004.05.02
Проблемы с ADO...




   Наверх