Playing with projections.
This commit is contained in:
parent
be94bf0185
commit
71b5e8d4b1
2 changed files with 25 additions and 14 deletions
|
@ -18,15 +18,20 @@ void OpenGlPainter::paint(DrawingContext* context)
|
|||
auto surface = context->getSurface();
|
||||
const auto width = double(surface->getWidth());
|
||||
const auto height = double(surface->getHeight());
|
||||
|
||||
std::cout << "Painting into width " << width << " and height " << height << std::endl;
|
||||
|
||||
const auto num_mesh = context->getScene()->getNumMeshes();
|
||||
|
||||
glClearColor(1.0, 1.0, 1.0, 0.0);
|
||||
glClear(GL_COLOR_BUFFER_BIT);
|
||||
|
||||
//glOrtho(-1.0, 1.0, -1.0, 1.0, -1.0, 1.0);
|
||||
glViewport(0, 0, width, height);
|
||||
glOrtho(0, width, 0, height, -1.0, 1.0);
|
||||
glMatrixMode(GL_PROJECTION);
|
||||
glLoadIdentity();
|
||||
|
||||
//glMatrixMode(GL_MODELVIEW);
|
||||
//glLoadIdentity();
|
||||
|
||||
std::cout << "Bounds are : " << width << " | " << height << std::endl;
|
||||
|
||||
for (std::size_t idx=0; idx<num_mesh; idx++)
|
||||
{
|
||||
|
@ -44,23 +49,23 @@ void OpenGlPainter::paint(DrawingContext* context)
|
|||
glColor3f(r, g, b);
|
||||
|
||||
glBegin(GL_TRIANGLES);
|
||||
double x0 = 2.0*face[0].getX() / width - 1.0;
|
||||
double y0 = 1.0 - 2.0*face[0].getY() / height;
|
||||
double x0 = face[0].getX();
|
||||
double y0 = height -face[0].getY();
|
||||
|
||||
double x1 = 2.0*face[1].getX() / width - 1.0;
|
||||
double y1 = 1.0 - 2.0*face[1].getY() / height;
|
||||
double x1 = face[1].getX();
|
||||
double y1 = height -face[1].getY();
|
||||
|
||||
double x2 = 2.0*face[2].getX() / width - 1.0;
|
||||
double y2 = 1.0 - 2.0*face[2].getY() / height;
|
||||
double x2 = face[2].getX();
|
||||
double y2 = height -face[2].getY();
|
||||
|
||||
glVertex3f(x0, y0, 0);
|
||||
glVertex3f(x1, y1, 0);
|
||||
glVertex3f(x2, y2, 0);
|
||||
|
||||
// std::cout << "Verts0| " << x0 << " | " << y0 << " | "<< std::endl;
|
||||
// std::cout << "Verts1| " << x1 << " | " << y1 << " | "<< std::endl;
|
||||
// std::cout << "Verts2| " << x2 << " | " << y2 << " | "<< std::endl;
|
||||
// std::cout << "****************" << std::endl;
|
||||
std::cout << "Verts0| " << x0 << " | " << y0 << " | "<< std::endl;
|
||||
std::cout << "Verts1| " << x1 << " | " << y1 << " | "<< std::endl;
|
||||
std::cout << "Verts2| " << x2 << " | " << y2 << " | "<< std::endl;
|
||||
std::cout << "****************" << std::endl;
|
||||
|
||||
glEnd();
|
||||
|
||||
|
|
|
@ -60,6 +60,12 @@ bool XcbGlWindowInterface::initialize(xcb_window_t window)
|
|||
void XcbGlWindowInterface::resizeViewPort(unsigned width, unsigned height)
|
||||
{
|
||||
glViewport(0, 0, width, height);
|
||||
glOrtho(0, width, 0, height, -1.0, 1.0);
|
||||
glMatrixMode(GL_PROJECTION);
|
||||
glLoadIdentity();
|
||||
|
||||
//glMatrixMode(GL_MODELVIEW);
|
||||
|
||||
}
|
||||
|
||||
void XcbGlWindowInterface::destroyWindow()
|
||||
|
|
Loading…
Reference in a new issue