![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Линия в ОpenGL [Delphi, Windows]
Navi © (2004-09-11 15:08:00)Здравствуйте!
Как рисовать линии в ОpenGL, так, что бы юзер указал первую точку и таща мышь видел свою линию и указав вторую точку закончил рисовать? Вобщем как в CAD-системах.
Спасибо.
XProger (2004-09-11 17:28:00) [1]Стирать нужно всё... а затем рисовать...
glClear(GL_COLOR_BUFFER_BIT); // чистишь всё
// рисуешь
SwapBufers(DC); // вывод нарисованного
P.S.
Писа по памяти, могут быть синтаксические ошибки...
Navi (2004-09-11 17:06:00) [2]А стирать линию в старой позиции курсора не надо?
XProger (2004-09-11 16:20:00) [3]Записывай позицию первого клика(указание точки)
в
// onMouseDown
mDrag := true;
sX := X;
sY := Y;
// onMouseMove
if MDrag then
begin
dX := X;
dY := Y;
end;
// onMouseUP
MDrag := false;
// рисуешь
glBegin(GL_LINES);
glVertex2f(sX, sY);
glVertex2f(dX, dY);
glEnd;
Должно работать, если ты вьюпорт правильно выставляешь...