プロが教える店舗&オフィスのセキュリティ対策術

何度も質問させていただいて申し訳ないです。
教えてください。
VB6にて、中心点と始点の座標、弧の長さが与えられています。
中心点(488,-680)、始点(510,-682)、弧の長さが478というような
感じです。
弧の回転方向はこの場合は反時計周りです。
このような条件で終点となるX,Y座標を求める場合はどのような計算式
となるのでしょうか?
ご教授下さい。

A 回答 (4件)

>始点が(510,682)で中心点が(488,-639)です


始点、中心が変わっているのに 半径や回転角が変化していないのは変ですよね

最終的な加法定理で回転座標を求めるx,yだけ変えても意味がありませんよ

半径は1321.183になりますよね 回転角は0.36179となりますよ
最初の手順から確認してみましょう

それと 少し訂正ですが
Y座標を求める際に 最後で -680 としていますが 本来は + (-680)です
これは 終点を本来の位置に戻すための移動量です

一般式で書くと
x1 = x * cos(θ) - y * sin(θ) + Xo
y1 = x * sin(θ) + y * cos(θ) + Yo
x1,y1が回転後の座標
x,yが回転移動する前の点
Xo、Yoが中心への平行移動量
となります
    • good
    • 0

(1) 座標平行移動(中心点を原点とする座標に)


(2) 極座標に変換
(3) (弧長/半径)を角度として回転
(4) 直角座標に戻す (2)の逆
(5) 座標平行移動(1)の逆
の手順です。
    • good
    • 0

円弧の長さ=半径*角度(角度はただしラジアン)


という公式(というよりラジアンの概念定義)があったように思う。
ですから
1.半径を出す=中心点ー視点の距離 ピタゴラスの定理の応用で距離公式はでる。
2.割り算 角度=弧の長さ/半径
360度角度がいるなら、ラジアンー>角度変換(パイ値で割る)
質問するまでも無い課題では。
ーーー
ウイキから
定義から、扇形の中心角の大きさを θ ラジアン、半径を r とすると、その扇形の弧の長さ l と面積Sは l = rθ
    • good
    • 0

1)このデータから半径Rを求めます


2)円周の長さLを求めます
3)弧/円周が回転角になります
4)加法定理使って回転後の座標を求めます

Rは X成分の差の2乗とY成分の差の2乗の和の平方根
R = SQRT( (510-488)*(510-488) + (-682-(-680))*(-682-(-680))) )
 = SQRT( 22*22 + (-2)*(-2) )
 = 22.0907220343745
円周率PIは ATN(1)*4 で算出 ... 45度のアークタンジェント
円周長は2*PI*R
回転角は (478/(2*PI*R)) ... ラジアン
加法定理を使うために中心を(0,0)に移動したときの始点座標を求めます
(510-488, -682+680) = (22, -2) ... 原点へ移動したときの始点
x = 22 * cos( 回転角 ) - (-2) * sin( 回転角 ) + 488
y = 22 * sin( 回転角 ) + (-2) * cos( 回転角 ) - 680
となります

この回答への補足

ありがとうございます。
やってみたのですが、思った答えになってくれません。
チェックしていただけませんでしょうか?
始点が(510,682)で中心点が(488,-639)です。
で、上の式にあてはめてみました。
(510-488,682-(-639)) = (22,1321)となりました。
X = 22*cos(回転角=20.7) - (1321)*sin(20.7) +488
Y = 22*cos(20.7) +(1321)*cos(20.7) - (-639)
でよろしいでしょうか?
しかし、結果はX=-789,Y=-1759という答えになってしまいました。
おおよそですが、X=41 Y=605あたりになるはずなのですが、
どこが間違っているのでしょうか?
ご教授お願いします。

補足日時:2007/11/13 16:04
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!