私は Mac アプリを開発しています。レーダーのようなビューを描画したいのですが、円弧に沿ってグラデーション カラーを描画する方法が見つかりません。既存の方法では、グラデーションは一方向にのみ描画されます。
2 に答える
5
あなたが望むのは角度のグラデーションです。角度勾配を生成する Core Image フィルターを作成しました。開始色に不透明な色 (たとえば、緑) を指定し、中間色と終了色にその色の完全に透明なバージョンを指定します。
(フィルターの出力は実際には範囲が無限で、原点を中心としているため、円にマスクして、適切な位置に配置するために、あるレベルまたは別のレベルでアフィン変換を使用する必要があります。)
追加クレジット: そのフィルターのカーネル コード (.m の先頭付近) には、グラデーションを右からではなく上から (90°) 開始する行があります。フィルターとカーネルの両方のコードを変更しinputStartColor
て、CABasicAnimation などを使用して、時間の経過とともに変化するパラメーター (et al など) にすることができます。
于 2013-06-01T21:53:47.887 に答える