PMG
https://forum.pmg.org.ru/

как присвоить quad-у координаты мыши
https://forum.pmg.org.ru/viewtopic.php?f=1&t=7295
Страница 1 из 1

Автор:  dark elf [ 24 ноя 2009 18:23 ]
Заголовок сообщения:  как присвоить quad-у координаты мыши

Ребят подскажите кто что может

Автор:  bad_duck [ 24 ноя 2009 18:55 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

ну тут смотря что тебе нужно - при нажатии на кнопку мыши, при вращении колесика или просто при движении мыши
Код:
      case WM_MOVE:
      {
         mouse.x = LOWORD(lParam);         
         mouse.y = HIWORD(lParam);                  
         return 0;
      }
      case WM_MOUSEMOVE:
      {
                   mouse.x = LOWORD(lParam);         
         mouse.y = HIWORD(lParam);         
              return 0;
      }      
      case WM_LBUTTONDOWN:
      {              
         mouse.lbut=1;         
         mouse.x0 = LOWORD(lParam);         
         mouse.y0 = HIWORD(lParam);
         mouse.x1 = LOWORD(lParam);         
         mouse.y1 = HIWORD(lParam);               
         return 0;
      }
      case WM_LBUTTONUP:
      {              
         mouse.lbut=0;               
         return 0;
      }
Вот пример, вставлять это нужно туда же где есть обработка клавиш:
Код:
      case WM_KEYUP:
      {
         keys[wParam] = FALSE;
         return 0;
      }
почитай про эти функции в msdn http://msdn.microsoft.com/en-us/library/dd458632(VS.85).aspx

Автор:  dark elf [ 24 ноя 2009 18:57 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

мне надо прицепить к курсору мышы свой полигон

Автор:  bad_duck [ 24 ноя 2009 19:03 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

ну значит находишь отсюда первую координату своего полигона
Код:
      case WM_MOUSEMOVE:
      {
              mouse.x = LOWORD(lParam);         
              mouse.y = HIWORD(lParam);         
              return 0;
      }     
а потом пересчитываешь остальные три с помощь первой

Автор:  dark elf [ 24 ноя 2009 19:04 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

а если не затруднит можна по подробней просто я ток начинаю?

Автор:  bad_duck [ 24 ноя 2009 19:24 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

Код:
glBegin(GL_QUADS);
glVertex2f(mouse.x,  mouse.y);
glVertex2f(mouse.x+W,  mouse.y); //H - высота W - ширина квода
glVertex2f(mouse.x+W,  mouse.y+H);
glVertex2f(mouse.x,  mouse.y+H);
glEnd();

Автор:  dark elf [ 24 ноя 2009 19:26 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

спс

Автор:  dark elf [ 24 ноя 2009 19:30 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

ток я шас попробовал у меня ошибки выдает

Автор:  dark elf [ 26 ноя 2009 18:03 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

я расковырял тут получаеться вот так для начала обьявляем переменную
Код:
float g_mouse_x = 0.0f, g_mouse_y = 0.0f, g_mouse_z = 0.0f;

void RenderScene()
{
     OrthoMode(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
          glBegin(GL_QUADS);
      glTexCoord2f(0.0f, 1.0f);  glVertex2f(g_mouse_x, g_mouse_y);
      glTexCoord2f(0.0f, 0.0f);  glVertex2f(g_mouse_x, g_mouse_y + 60);
      glTexCoord2f(1.0f, 0.0f);  glVertex2f(g_mouse_x + 60, g_mouse_y + 60);
      glTexCoord2f(1.0f, 1.0f);  glVertex2f(g_mouse_x + 60, g_mouse_y);
   glEnd();
}
LRESULT CALLBACK WinProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
     case WM_MOUSEMOVE:
         g_mouse_x = LOWORD(lParam);
         g_mouse_y = HIWORD(lParam);
      break;
}

Автор:  bad_duck [ 27 ноя 2009 15:38 ]
Заголовок сообщения:  Re: как присвоить quad-у координаты мыши

dark elf, если у тебя была ошибка в этом "mouse.x" , то почитай что такое структуры и классы. Очень полезно...

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/