void Image::draw() { glBegin(GL_POINTS); int ximg, yimg; for(int xwin=0 ; xwin < m_width ; ++xwin) for(int ywin=0 ; ywin < m_height; ++ywin) { _windowToImage(this, xwin, ywin, &ximg, &yimg); Color c; if((ximg >= 0) && (ximg < m_width) && (yimg >= 0) && (yimg < m_height)) c = m_buffer[ximg][yimg]; else c = Color(0,0,0); glColor3f(c.red(),c.green(),c.blue()); glVertex2i(xwin,ywin); } glEnd(); }
void I_draw(Image *img) { glBegin(GL_POINTS); int xwin, ywin, ximg, yimg; for(xwin=0;xwin<img->_width;xwin++) for(ywin=0;ywin<img->_height;ywin++) { _windowToImage(img, xwin, ywin, &ximg, &yimg); Color c; if((ximg>=0)&&(ximg<img->_width)&& (yimg>=0)&&(yimg<img->_height)) c = img->_buffer[ximg][yimg]; else c = C_new(0,0,0); glColor3f(c._red,c._green,c._blue); glVertex2i(xwin,ywin); } glEnd(); }