📱

【SwiftUI】(Path)扇形を組み合わせてカラフルな円を作る

2023/01/22に公開

カラフルな円を作る機会があったのでプログラムを残しておこうと思います。以下の記事を参考にしました。
https://qiita.com/imchino/items/5fc2e5a221847f4456a8

作りたいもの

赤青緑の3色円

プログラム

扇形を三つ作成し、合計360度一周するようにZStackで重ねることで実現しました。
他にいいやり方あればコメントもらえると嬉しいです。

import SwiftUI

struct SwiftUIView: View {
   var body: some View {
       ZStack{
           Pie(startAngle:Angle(degrees:-90),endAngle: Angle(degrees:30))
               .fill(Color.red)
           Pie(startAngle:Angle(degrees:30),endAngle: Angle(degrees:150))
               .fill(Color.blue)
           Pie(startAngle:Angle(degrees:150),endAngle: Angle(degrees:270))
               .fill(Color.green)
       }
   }
}

struct Pie: Shape {
   var startAngle = Angle(degrees:-90)
   var endAngle   = Angle(degrees: 30)

   〜参考記事参照〜
   }
}

struct SwiftUIView_Previews: PreviewProvider {
   static var previews: some View {
       SwiftUIView()
   }
}

Discussion