2013-06-01 72 views
1

我正在開發一個Mac應用程序,我想繪製一個像雷達一樣的視圖,我找不到沿着弧線繪製漸變色的方法。現有方法僅向一個方向繪製漸變。如何繪製沿弧的漸變

+0

漸變圖總是一件昂貴的事情,它會被用於一個目的。在你的情況下,你可以使用圖像。 –

+1

如何在photoshop中創建圖像,看起來像您的雷達,並簡單地旋轉它? – pmk

+0

我不想使用圖像,因爲雷達視圖的大小會發生變化 –

回答

5

你想要的是一個角度漸變。我寫了a Core Image filter that generates an angle gradient;爲其開始顏色賦予不透明顏色(例如綠色),併爲中間和終止顏色賦予該顏色的完全透明版本。

Angle gradient with green, transparent green, and transparent green.

(該濾波器的輸出是範圍實際上無限的,以原點爲中心,所以你需要來掩蓋它出去一圈,利用仿射變換在一個級別或其他它進入)

額外的功勞:在該過濾器的內核代碼中(靠近.m的開始處),有一條線以直線向上(90°)開始漸變,而不是直向右。您可以更改過濾器和內核的代碼,使其成爲一個參數(如inputStartColor等),您可以使用CABasicAnimation或類似的工具隨時間變化。

+0

+1超級解決方案。 –

0

您需要使用軸向和徑向漸變的組合,並且可能還需要一些剪切路徑。你可以找到所有這些文件here

您還可以使用colorWithPatternImage:筆劃您正在繪製的任何線條。