Avatar
了解です。 format: の方向で、もう少し色んな API を調べてみてから変更したいと思います。
1:21 AM
--- あと、もう一つ困ってるのが画像を 90 度単位で回転させるメソッドで、任意角度で回転させるメソッドは func rotated(by angle: Double) -> Image<Pixel>CGAffineTransform の↓に倣ってるんですが、 func rotated(by angle: CGFloat) -> CGAffineTransform 90 度単位で n 回回転させたいって times を後ろに付けることができないし、 API Design Guidelines にもそんな例はないしどうしたらいいものかと。 (edited)
1:23 AM
今は↓で誤魔化してるんですが、気に入らないので修正したいなと考えてます。 func rotated(_ times: Int) -> Image<Pixel>
1:27 AM
rotatedOrthogonally(_) に変えるとか、 ratated(n, .times) で呼び出せるようにするとか、 rotated(byDegrees angle: Int) にして 90 の倍数のときだけ特殊処理をするとかあるかなとも思うんですが(ラジアンではなく度で受ける byDegreesNSView のメソッドで見られます)、最後のパターンは 90 度以外のときに余白を埋める必要があり、デフォルトの Pixel の値がわからない任意の型では使えなくなってしまいます( 90 度単位では余白が存在しないので問題ない)。引数が Int 版は 90 度単位でない場合は実行時エラーにすることもできますが、 times ならエラーがないのに微妙だなと。 (edited)