WP7で円の扇形を作りたいです。楕円クラスでこれをやろうとしたところ、ゲージや円グラフなどを作成する多くの解決策が見つかりましたが、本質だけが必要です。誰でも助けてもらえますか?
目的は、円 (または楕円) の一部だけを表示することです。写真の黄色い部分のように:
ありがとう、ラシ
WP7で円の扇形を作りたいです。楕円クラスでこれをやろうとしたところ、ゲージや円グラフなどを作成する多くの解決策が見つかりましたが、本質だけが必要です。誰でも助けてもらえますか?
目的は、円 (または楕円) の一部だけを表示することです。写真の黄色い部分のように:
ありがとう、ラシ
これは問題に対するかなり単純な解決策ですが、これは を使用せずEllipse
、少し三角法が必要です。
<Path Fill="Black"
Data="M0,0 L0,-100 A100,100 0 0 1 70.7,-70.7 z" />
Data
プロパティはPath Markup Syntaxを使用します。
RotationAngle
、、、、(時計回りの場合は 1、反時計回りの場合は 0))。IsLargeArc
SweepDirection
70.7 はどこから来たのですか? さて、この特定の円弧は、半径 100 の円から 45 度の角度をスイープするため、座標 70.7,-70.7 は と によって決定され100 * sin(45)
ます100 * cos(45)
。
次のようなことをする必要があります:
キャンバス (クリップ) の表示部分を定義します。この部分では、 PathGeometryをクリップとして使用して、表示する円のスライスを定義する必要があります。(リンクを参照)
<Canvas>
<Canvas.Clip>
<PathGeometry>
// define your path here (see link above)
</PathGeometry>
<Ellipse Background="Yellow" Width="200" Height="200" />
</Canvas.Clip>
</Canvas>
または、 CombinedGeometryを使用してPathGeometry
とを組み合わせEllipseGeometry
てスライスを形成することもできます。(リンクは の良い例ですCombinedGeometry
)