0
Q
翻轉Y軸?
A
回答
1
您問了關於「Cocoa」的問題,但事實上,Cocoa很長一段時間在翻轉視圖和未翻轉視圖之間有很明顯的區別。在可可,你只需要override a method。 (和Cocoa中的「翻轉」意味着Cocoa Touch的做法。默認的「未翻轉」在Cocoa中是左下角的原點。)
但是你不編程Cocoa;你正在編程Cocoa Touch。
所以,你有一個翻轉的上下文,大概是因爲你從UIKit中獲得了它(沒有經過UIKit創建的CGContexts沒有翻轉),你需要解開它。 (或者你有一個unflipped背景和想翻頁吧)
無論哪種方式,該解決方案是相同的:
- 轉換向上/向下(正y)上下文/視圖的整個高度。
- 將y軸縮放-1。
翻譯移動原點;由整個高度翻譯將原點移動到對面角落。
縮放改變軸;通過負值1縮放y軸將其翻轉爲相反方向,所以現在是下降,反之亦然。
這就是您如何翻轉(或取消翻譯)從左上角到左下角的上下文,反之亦然。
東西,將無法正常工作或不應該嘗試一下:
- 層上設置
geometryFlipped
。它影響子圖層,但不影響自定義繪圖。 (當然,如果所有的「繪圖」都是形狀圖層和文本圖層以及普通圖層,那麼您可以只設置此屬性而不用擔心變換。) - 在CALayer子類中重寫
contentsAreFlipped
。文件說不要這樣做。 - 設置視圖或其圖層的
transform
。該文檔說明transform
適用的座標空間的起點位於中心(或anchorPoint
),而不是在角落。這很誘人,但我會期待隨之而來的快樂。
相關問題
- 1. 在vtk中翻轉Y軸
- 2. 在OpenGL ES中翻轉Y軸?
- 3. QQuickFramebufferObject在QML中翻轉Y軸
- 4. 如何翻轉CALayer圍繞其Y軸?
- 5. JavaScript Canvas翻譯y軸
- 6. 如何在翻轉的Y軸角度處理翻譯矩陣
- 7. AVMutableComposition y軸反轉
- 8. Raphael svg翻譯y軸座標
- 9. 如何翻譯svg元素沿y軸?
- 10. 爲什麼某些語言使用翻轉的Y軸?
- 11. 使用窗口/視口翻轉QPainter y軸
- 12. 如何在GLSL着色器中翻轉Y軸之前gl_FragColor = texture2D(*,*);
- 13. 如何在X或Y軸上翻轉一個精靈cocos2d-python
- 14. 如何翻轉一個遊戲物體繞Y軸團結
- 15. 在Excel自定義圖表上翻轉X和Y軸
- 16. ggplot2翻轉Y軸不顯示正確設置的限制
- 17. 爲什麼DirectX使用翻轉的Y軸?
- 18. Highcharts - 以編程方式「翻轉」(反向)Y軸
- 19. 沿着x軸和y軸旋轉
- 20. 在D3中反轉Y軸
- 21. 在PyQtGraph中反轉Y軸
- 22. Y軸與錯旋轉
- 23. 圍繞Y軸旋轉
- 24. 使用jQuery.flot反轉Y軸
- 25. 在Highcharts中反轉Y軸
- 26. Z軸何時翻轉? (OpenGL)
- 27. 沿任一軸翻轉UIImage
- 28. Excel圖表:將Y軸值轉換爲Y軸類別
- 29. 旋轉座標軸時無法旋轉y軸刻度文本
- 30. 多Y軸重疊的Y軸Highchart
請提供更多的上下文:您是否使用CG ...例程繪製自己的內容?輪換應該如何發揮,或者應該考慮輪換? [這個主題可能是相關的](https://developer.apple.com/library/ios/documentation/GraphicsImaging/Reference/CGAffineTransform/Reference/reference.html),取決於你在做什麼。 – dasblinkenlight
我希望它像在Cocos2d中一樣,y 0點在底部而不在屏幕的頂部。爲什麼你會倒下?沒有意識 – Arbitur
是什麼讓你認爲我低估了你的問題?我不認爲這是明確的,但我也認爲這是不夠的,被低估。 – dasblinkenlight