开罗矩阵与 GlOrtho 矩阵等效?
鉴于我做了这样的事情:
void glOrtho( GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble nearVal,
GLdouble farVal);
结果是: http:// /www.opengl.org/sdk/docs/man/xhtml/glOrtho.xml我可以实现这样的矩阵:
http://cairgraphics.org/manual/cairo-matrix.html
我尝试了这个:
cairo_matrix_t mat;
mat.xx = 2 / (right - left);
mat.yx = 0;
mat.xy = 2 / (top - bottom);
mat.yy = 0;
mat.x0 = 0;
mat.y0 = 0;
cairo_set_matrix(cr,&mat);
但它不起作用。我怎样才能获得与 GlOrtho 在开罗制作的相同的矩阵? 谢谢
Given that I do something like this:
void glOrtho( GLdouble left,
GLdouble right,
GLdouble bottom,
GLdouble top,
GLdouble nearVal,
GLdouble farVal);
and the result is: http://www.opengl.org/sdk/docs/man/xhtml/glOrtho.xmlw could I achieve a matrix like this:
http://cairographics.org/manual/cairo-matrix.html
I tried this:
cairo_matrix_t mat;
mat.xx = 2 / (right - left);
mat.yx = 0;
mat.xy = 2 / (top - bottom);
mat.yy = 0;
mat.x0 = 0;
mat.y0 = 0;
cairo_set_matrix(cr,&mat);
But it did not work. How could I acheive the same matrix that GlOrtho makes in Cairo?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不了解开罗,所以如果有更好的答案,我会删除我的答案。
根据开罗的文档:
当您使用OpenGL时,公式如下:(
m
是矩阵)(请注意,为了简单起见,我没有提到第四个坐标)
所以你有什么要做的就是简单地匹配两个公式:
请尝试这个
I don't know Cairo so I'll delete my answer if a better one comes.
According to the docs of Cairo:
When you use OpenGL, the formula is like: (
m
being the matrix)(note that for the sake of simplicity I did not mention the fourth coordinate)
So what you have to do is simply match the two formulas:
Please try this