Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > [OpenGL] полигон в экранных координатах.


Автор: Elfet 10.2.2010, 16:18
Всем привет!

У меня такая есть задача, нарисовать псевдосечение 3-д сетки. Для этого я перевожу все координаты из мировых в экранные:
Код

QPoint GLWidget::project(const Stereometry::Point& p) const
{
  // We'll need the matrices that define the projection
  GLdouble modelview[16];
  GLdouble projection[16];
  GLint viewport[4];
  glGetDoublev(GL_MODELVIEW_MATRIX, modelview);
  glGetDoublev(GL_PROJECTION_MATRIX, projection);
  glGetIntegerv(GL_VIEWPORT, viewport);
  GLdouble x, y, z;
  gluProject(p.x(), p.y(), p.z(), modelview, projection, viewport, &x, &y, &z);
  return QPoint(int(x), int(viewport[3] - y));
}


И после этого ищу все пересечений моих граней с плоскостью сечение.  

Так вот как мне теперь их добавить на граф конв? 

Если заново в glVertex - то они заново будут перемножены на эти матрицы, но мне этого уже делать н нужно, так как я уже сделал. Как мне теперь быть?

Заранее спасибо!

Автор: AterCattus 11.2.2010, 15:56
glDrawPixels ну или просто задавать Z по передней плоскости отсечения.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)