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