• 締切済み

VCでの円グラフについて(パート2)

 今回は、VCの円グラフを違う論点から見ていきたいと思います。 例えば、肉50 魚80 野菜100というデータがあったとします。 3つの総合計は、230ですよね? 円の一周は、360度ですから、 肉の部分を、50/230 魚の部分を、80/230 野菜の部分を100/230になるように、描画する方法はないでしょうか? 別の方法でもいいですが、肉とか魚とかのデータは、その都度上限します。

みんなの回答

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

扇形の開き角は分かりますよね これを全周がPI度なのだから 肉 2 * PI * 50 / 230 魚 2 * PI * 80 / 230 野菜 2 * PI * 100 / 230 中心が 0,0で半径300なら 肉の始点は300,0 終点は 300 * cos( 2 * PI * 50 / 230 ), 300 * sin(2 * PI * 50 / 230 ); といった具合です 中心が別の位置ならこの算出結果に中心を加算すればいいのです 魚なら 始点は肉の終点、終点は 300* cos( 2 * pi * ( 50 + 80 ) / 230 ), 300* sin( 2 * pi * ( 50 + 80 ) / 230 ) といった具合でしょう 中学レベルの数学ですよ

xyzxyz11
質問者

お礼

 回答ありがとうございます。 お礼遅れてすいません。 一度この方法で検討してみます(^^)

xyzxyz11
質問者

補足

 今回は、円を書き、ムーブツゥと、ラインツゥで描画しました。 すると、なんと、円の外まで、線がはみ出るのです(;;) どーしたらいいですか? 円は、100,100,400,400です。

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★算数の問題ですか? ・円が360度なのだから全体の230を360になるようにすればよいだけですよ。  計算上では360÷230=約1.56倍すればいいのです。  つまり、  肉  50×1.56=78  魚  80×1.56=125  野菜100×1.56=156  合計=78+125+156=359  となります。 ・以上。

xyzxyz11
質問者

お礼

 ありがとうございます(^^) その点については、そのとおりです(^^) あと、Pieでの描画の場合、座標の取り方がわかりません(;;) Pie(hDC,100,100,400,400,始x,始y,終x,終y)の場合、 始xから終yのところをどう座標とればいいかわからないのです・・・ 野菜・肉・魚の3人で100,100,400,400をうめたいのです。

関連するQ&A