1
A
回答
5
你将需要做一个规模和翻译。
在paintComponent
方法,你可以这样做:
public void paintComponent(Graphics g)
{
Graphics2D g2d = (Graphics2D) g;
g2d.translate(0, -height);
g2d.scale(1.0, -1.0);
//draw your component with the new coordinates
//you may want to reset the transforms at the end to prevent
//other controls from making incorrect assumptions
g2d.scale(1.0, -1.0);
g2d.translate(0, height);
}
我的挥杆是一个有点生疏,但是这应该完成的任务。
+0
我不喜欢你如何设置比例/翻译回来。在这种特殊情况下,它*应该是可以的,但是一般情况下,当堆叠变换时,您将累积浮点错误。最好调用getTransform,然后setTransform来恢复原始。 – 2010-07-22 03:45:34
0
0
你会想要习惯它。像卢克提到的那样,您技术上可以对图形实例应用转换,但最终会对性能产生负面影响。
只要做一个平移就可以将0,0的位置移动到左下方,但沿着正轴的移动仍然在x方向上是正确的,而在y方向上是下移的,所以你唯一能做的就是从屏幕上绘制一切。你需要做一个旋转来完成你所要求的,这会将弧度计算的开销加到图形实例的变换矩阵上。这不是一个好的折衷。
2
我们可以使用下面的方法可以轻松地解决这个问题,
public void paintComponent(Graphics g)
{
Graphics2D g2d = (Graphics2D) g;
// Flip the sign of the coordinate system
g2d.translate(0.0, getHeight());
g2d.scale(1.0, -1.0);
......
}
相关问题
- 1. JavaScript Canvas翻译y轴
- 2. 如何翻译svg元素沿y轴?
- 3. Raphael svg翻译y轴坐标
- 4. 如何在翻转的Y轴角度处理翻译矩阵
- 5. R:google翻译API(包'翻译'和''translateR')
- 6. 没有谷歌翻译翻译
- 7. 角度翻译:翻译动态值
- 8. Silverstripe可翻译不能创建翻译
- 9. 角度翻译更新翻译表
- 10. Django的翻译,嵌段没有翻译
- 11. Django的翻译:如何翻译语言
- 12. 如何实施“智能”翻译:翻译?
- 13. 翻译等轴测视图中的SVG元素
- 14. 如何同时为两个轴(X,Y)做翻译动画?
- 15. Javascript和翻译
- 16. 翻译软件
- 17. TSQL翻译
- 18. Java翻译API
- 19. 翻译动画
- 20. 翻译错误
- 21. django sql翻译
- 22. 翻译c/C++?
- 23. Json和翻译
- 24. Recaptcha翻译
- 25. Apache“url翻译”
- 26. 翻译不google.API
- 27. AngularJS翻译表
- 28. JOGL - 翻译GL_QUADS
- 29. getText crowdfounded翻译
- 30. XSLT翻译
不幸的是,大多数的GUI系统的标准轴布局,它来自回来时,一切都基于文本的这样左上角是有道理的文本来源。大多数GUI工具包会让你翻转原点和坐标轴,但我的建议是只是习惯它:) – luke 2010-05-14 03:22:58