-
UID:135523
-
- 注册时间2012-08-22
- 最后登录2021-02-23
- 在线时间113小时
-
- 发帖13
- 搜Ta的帖子
- 精华0
- 金钱145
- 威望24
- 贡献值0
- 好评度14
-
访问TA的空间加好友用道具
|
我在Qt中使用OpenGL画图,显示文字的部分是用贴图的方式实现的,窗口侧面的文字能够显示,但是底部的不显示,必须缩放窗口或者缩放图形,甚至打开另外一个窗口显示一下,底部的文字就可以显示了刚画图时: 打开另外一个窗口: 创建图形QPixmap pm = QPixmap(w, h);pm_.fill(Qt::transparent);QPainter p(&pm); p.setFont( font );p.setPen( Qt::SolidLine );p.setPen( GL2Qt(color.r, color.g, color.b) ); p.drawText(1, 1, text);p.end(); return QGLWidget::convertToGLFormat(pm_.toImage()); 画到窗口GLboolean b;GLint func;GLdouble v;glGetBooleanv(GL_ALPHA_TEST, &b);glGetIntegerv(GL_ALPHA_TEST_FUNC, &func);glGetDoublev(GL_ALPHA_TEST_REF, &v); glEnable (GL_ALPHA_TEST);glAlphaFunc (GL_NOTEQUAL, 0.0); glRasterPos3d(beg.x, beg.y, beg.z); QImage t = createImage(angle);glDrawPixels(t.width(), t.height(), GL_RGBA, GL_UNSIGNED_BYTE, t.bits());glAlphaFunc(func,v);Enable(GL_ALPHA_TEST, b);
|