2015-10-24 4 views
0

Есть ли способ, которым я могу определить положение мыши, не используя glutMouseFunc()?обнаружить щелчки мыши в OpenGL в C

Все примеры, которые я нашел онлайн, с помощью мыши, используя glutMouseFunc(). Тем не менее, я не хочу, чтобы функция click mouse click всегда была активной. Я хочу записать позицию щелчка мыши только после того, как пользователь выберет определенную опцию в меню. Если быть точным, я хочу записать 4 позиции мыши, после того как пользователь выберет опцию в меню.

+3

Написать условие, которое вы хотели into'glutMouseFunc'. FYI нет реальных вычислительных затрат на 'glutMouseFunc'. – Mikhail

ответ

1

Прежде всего, OpenGL не имеет ничего общего с обратным вызовом мыши. Это графическая библиотека. Для вашей конечной цели, в основном, как предложил @Mikhail, вставить условный оператор внутри вашего glutMouseFunc, поэтому

void mouse_callback(){ 

if (command_seleteced == true) 
    store mouse position 

} 
0

Я прочитал документацию о glutMouseFunc()here. Если вы хотите обработать событие мыши с 4 различными функциями в другое время, вы можете позвонить glutMouseFunc с NULL, а затем позвонить glutMouseFunc с другой функцией. Из документации:

Передача NULL в glutMouseFunc отключает генерацию обратных вызовов мыши.

Если вы хотите обрабатывать различные события мыши в одно и то же время, тогда вы должны написать одну функцию со всеми этими условиями.

 Смежные вопросы

  • Нет связанных вопросов^_^