Вопрос № 20913: Доброго времени суток всем!
Вопрос касается программированию на языке с++ (winAPI) в среде Visual Studio .NET с использованием OpenGL.
Нахожусь в полном стопоре и мне видимо не хватает знаний в программировании.
Трабла такая:
Мне надо...
Вопрос № 20913
Доброго времени суток всем!
Вопрос касается программированию на языке с++ (winAPI) в среде Visual Studio .NET с использованием OpenGL.
Нахожусь в полном стопоре и мне видимо не хватает знаний в программировании.
Трабла такая:
Мне надо сделать так, чтобы нарисовалась линия по двум точкам, взятым от нажатия мыши. Лучший вариант, когда линия является резиновой, т.е. я двигаю мышь после первого нажатия и линия прорисовывается по текущему положению курсора мыши от точки первого нажатия мыши, а после второго клика мыши линия нарисуется и не будет больше зависить от положения курсора мыши, но подойдет и вариант когда надо 2 раза кликнуть мышью сначала в одной точке потом в другой и только после второго клика - линия будет нарисована.
PS
Заранее всем спасибо.
PSS
Если нужен исходник, то могу выслать.
мое мыло gatonegro-public@yandex.ru
Отправлен: 15.05.2005, 20:41
Вопрос задал: И И И (статус: Посетитель)
Всего ответов отправлено: 1
Отвечает: Jadd
Здравствуйте, И И И!
Не знаю как в OpenGL, но в GDI можно делать так: 1) Ввести две глобальные переменные, одна из которых будет булевого значения для индикации, что событие инициировано (первый клик сделали), а вторая будет хранить первую точку (ее координаты); 2) На событие WM_MOUSEMOVE сделать обработчик, который будет отрисовывать линию исходя из исходных координат и текущих координат, при условии, что клавиша нажата. Кстати, нажатие клавиши передается с этим событием в wParam. Так что, как видите, у Вас широкий выбор. Удачи.
Ответ отправил: Jadd (статус: 4-ый класс)
Отправлен: 15.05.2005, 21:33