3
我需要形象化一个机器人游戏的游戏场。不幸的是,游戏使用右手坐标系,y轴向上。如何转置cairo上下文或更改轴的方向?
有没有办法调整绘图区域的cairo上下文以便它匹配这个坐标系?
我可以缩放,平移和旋转,但我无法找到切换y轴方向的方法,与单独转换所有坐标相比,这样会更方便。
感谢您的任何意见!
我需要形象化一个机器人游戏的游戏场。不幸的是,游戏使用右手坐标系,y轴向上。如何转置cairo上下文或更改轴的方向?
有没有办法调整绘图区域的cairo上下文以便它匹配这个坐标系?
我可以缩放,平移和旋转,但我无法找到切换y轴方向的方法,与单独转换所有坐标相比,这样会更方便。
感谢您的任何意见!
你被允许在cairo_matrix_t
定义各个领域:
cairo_matrix_t flip_y;
cairo_matrix_init(&flip_y, 1, 0, 0, -1, 0, 0);
cairo_set_matrix(cr, &flip_y);
只记得改造中的应用方式:
x_new = xx * x + xy * y + x0;
y_new = yx * x + yy * y + y0;
一些轻松的具有同样的效果:cairo_scale(CR,1, -1); – 2013-02-17 15:25:11
谢谢,这工作! – Daniel 2013-02-19 00:22:14