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. Raphael svg翻譯y軸座標
- 3. 沿本地軸翻譯3D物體
- 4. 如何翻譯svg元素沿y軸?
- 5. 角度翻譯 - 翻譯翻譯值attr
- 6. 如何在翻轉的Y軸角度處理翻譯矩陣
- 7. 翻轉Y軸?
- 8. 翻譯頁面與jquery「翻譯」,谷歌翻譯等
- 9. 翻譯
- 10. 翻譯
- 11. CGAffineTransform翻譯垃圾翻譯時
- 12. Silverstripe可翻譯不能創建翻譯
- 13. 角度翻譯:翻譯動態值
- 14. R:google翻譯API(包'翻譯'和''translateR')
- 15. angular-translate在翻譯文件中翻譯
- 16. poedit和zend翻譯數據庫翻譯
- 17. Django的翻譯:如何翻譯語言
- 18. 添加翻譯模型翻譯
- 19. Django的翻譯,嵌段沒有翻譯
- 20. Django翻譯 - 翻譯動態字符串
- 21. 如何從TextBlob檢索翻譯翻譯
- 22. 如何實施「智能」翻譯:翻譯?
- 23. 沒有谷歌翻譯翻譯
- 24. 翻譯If/Else && RegEx - Ruby翻譯爲Python
- 25. CSS翻譯已經翻譯的元素
- 26. 翻譯模塊不會翻譯文檔
- 27. Drupal翻譯只翻譯管理
- 28. 角度翻譯更新翻譯表
- 29. 「谷歌翻譯」vs「翻譯API」
- 30. 翻譯等軸測視圖中的SVG元素
不幸的是,大多數的GUI系統的標準軸佈局,它來自回來時,一切都基於文本的這樣左上角是有道理的文本來源。大多數GUI工具包會讓你翻轉原點和座標軸,但我的建議是隻是習慣它:) – luke 2010-05-14 03:22:58