Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.036 c
1-1109409678
Saint-Virus
2005-02-26 12:21
2005.03.13
Если из буфера вставить текст в Tedit, появляются знаки вопроса


3-1108449573
Гость
2005-02-15 09:39
2005.03.13
Как перейти на 500-ю запись таблицы?


1-1108454202
BPK
2005-02-15 10:56
2005.03.13
Пошаговая отладка: как не входить в системные unit ы?


1-1108919240
Sicilla
2005-02-20 20:07
2005.03.13
XP Manifest


14-1109064619
Holy
2005-02-22 12:30
2005.03.13
Упала 2000-я. Помогите...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский