Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: serega-5508 от Сентябрь 20, 2012, 21:36



Название: Вызов метода класса, унаследованного от QGLWidget
Отправлено: serega-5508 от Сентябрь 20, 2012, 21:36
добрый день. подскажите, пожалуйста такую вещь: вот у меня есть окно MainWindow в котором как центральный виджет я устанавливаю класс, унаследованный от QGLWidget.

Код:
MainWindow::MainWindow(){
...
mGL = new WidgetGL();
setCentralWidget(mGL);
...
}

в классе WidgetGL я переопределил методы initializeGL(), resizeGL(), paintGL().

и теперь, допустим у меня есть метод drawPoint() в классе WidgetGL который предсавляет из себя рисование точки (или чего-нибудь ещё), типа такого:

Код:
void WidgetGL::drawPoint()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glLoadIdentity();
    glColor3f(0, 0, 0);
    glPushMatrix();
    glTranslated(17, 17, 0);

    glBegin(GL_POINTS);
    glVertex2d(1.5, 1.5);
    glEnd();
}

как мне вызвать этот метод из MainWindow при нажатии на Button, чтобы осуществилась прорировка точки?? Обычным вызовом не прокатывает. UpdateGl() тоже ничего не дал. э

если запихну этот метод в paintGL(), всё работает, рисует точку. Но paintGL() делал сразу прорисовку, а мне нужно по нажатии клавиши или пункта меню.

спасибо за помощь!