[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2007/02/05(Mon) 09:48
投稿者名:おじん
Eメール:
URL :
タイトル:
円弧の描き方
開始点、終了点がゼロ度をまたがる場合の円弧の描き方は
ゼロ度を境に2度描くしか方法はないのでしょうか。

Private Sub Form_Click()    'これは扇形を描いています
const pi=3.141592
Picture1.Cls
Picture1.FillStyle = vbFSSolid
Picture1.FillColor = QBColor(9)
Picture1.Circle (200, 200), 100, , 0.000000001, -2 * pi * 0.1
Picture1.Circle (200, 200), 100, , -2 * pi * 0.8, 2 * pi
End Sub

またここにある「円を描く」サンプルにおいて90度から時計回りに
グラフを描くとしたら動揺の問題が起こります。

よろしくご指導ください。

投稿時間:2007/02/05(Mon) 10:38
投稿者名:K・今川
Eメール:
URL :
タイトル:
Re: 円弧の描き方
> Private Sub Form_Click()    'これは扇形を描いています
> const pi=3.141592
> Picture1.Cls
> Picture1.FillStyle = vbFSSolid
> Picture1.FillColor = QBColor(9)
> Picture1.Circle (200, 200), 100, , 0.000000001, -2 * pi * 0.1
> Picture1.Circle (200, 200), 100, , -2 * pi * 0.8, 2 * pi
> End Sub

上記、Picture1.Circle 2行を次のものに変えてください。
    Picture1.Circle (200, 200), 100, , -2 * pi * 0.8, -2 * pi * 0.1


> またここにある「円を描く」サンプルにおいて90度から時計回りに
> グラフを描くとしたら動揺の問題が起こります。

MSDNライブラリ Circleメソッド の解説に
Circle メソッドは、常に円弧を反時計回り (正の方向) に描画します。
と書かれています。

投稿時間:2007/02/05(Mon) 11:13
投稿者名:おじん
Eメール:
URL :
タイトル:
Re^2: 円弧の描き方
描けたました。ありがとうございました。
>     Picture1.Circle (200, 200), 100, , -2 * pi * 0.8, -2 * pi * 0.1
開始点、終了点の角度に大小関係、即ち開始点<終了点と思い込んでいました。
遊びのプルグラムで、開始点・終了点が360度を超えるケースがあり、その対処
に思案していての質問でした。そんな場合360度を引けばよいということ。
ただしサンプルにある「ゼロ」になることがないように注意して。

> MSDNライブラリ Circleメソッド の解説に
>  Circle メソッドは、常に円弧を反時計回り (正の方向) に描画します。
早速読みに行きます。