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

Вниз

Графика   Найти похожие ветки 

 
Shnabs   (2005-03-02 01:07) [0]

Маленький вопросик можно? :) Как создать движение линии от одной то чки к другой? Например известно X1,Y1, X2,Y2. Рисуем: canvas.moveto(x1,y1), canvas.lineto(x2,y). Он сразу нарисует линию. А мне нужно чтобы линия начала свое движение из точки X1,Y1, и закончило в точки X2,Y2. Проблем нет, если рисовать только горизонтально, вертикально или по диагонали. Тут просто наращиваещь X или Y, или сразу вместе, если по диоганали. А вот когда нет соотношения, то тут туганчик. Может где-нибудь, есть что-нибудь подобное, буду благодарен если поможете. Спасибо.


 
PKT   (2005-03-02 02:03) [1]

Вообще-то школьный курс...
 k := (Y2 - Y1) / (X2 - X1);
 A := Y1 - k * X1;
 Inc(X);
 Y := Round(k * X + A);


 
ЮЮ ©   (2005-03-02 05:01) [2]

>А вот когда нет соотношения, то тут туганчик

Рисовать надо по принципу:
 нарисовал (X1, y1) - (x2, y2)
 цикл
   нашел новые (x1new, y1new), (x2new, y2new)
   "затер" старую линию (x1, y1) - (x2, y2)    
   присвоил новые координаты
   нарисовал новую (x1, y1) - (x2, y2)
 конец цикла

Для этого, Canvas.Pen.Mode = pmXor, кажется.



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

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

Наверх




Память: 0.47 MB
Время: 0.051 c
3-1108477912
}|{yk
2005-02-15 17:31
2005.03.13
Работа с нулем в FB 1.5


14-1108983701
ST
2005-02-21 14:01
2005.03.13
Русификация программы


9-1102832958
GURU-ru
2004-12-12 09:29
2005.03.13
Как сделать, чтобы в GLScene не проходить сквозь стены


14-1108739597
}|{yk
2005-02-18 18:13
2005.03.13
Может и баян, но смешно


14-1109088492
}|{yk
2005-02-22 19:08
2005.03.13
Тестирование кода