- ベストアンサー
2つの座標と角度から交点座標の求め方
(X1, Y1)と(X2, Y2)の2点の座標と角度θがあります。 この情報から交点座標(XX, YY)を求めたいと思っています。 どのような計算式になるのでしょうか? VB6にて作成しております。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
Windowsで閉図形の内外の点の判定をしたのであれば WinAPIで使われるのRegionを使ってみるのも一つの方法ですよ CreatePolygonRgn,PtInRegion,CloseHandleの3つのAPI関数とPOINTAPI構造体を定義すれば使えます dim pts(20) as POINTAPI ' ptsの配列に各頂点の座標を設定 dim hRng as Long ' 15の頂点の場合は 2番目の引数の20を 15に変更 ' 3番目は定数なので APIビューアで探してください ' 設定できる値は ALTERNATE=1、WINDING=2 です hRng = CreatePolygonrng( pts(0), 20, WINDING ) if hRng<> 0 then if PtInRegion( hRng, x, y ) then ' ここに来れば内部 else ' ここに来れば外部 end if end if CloseHandle hRng といった具合です API宣言は VB6付属の APIビューアで定義を探してみてください # 関連質問があるならそれも明記したほうがいいように思います # http://oshiete1.goo.ne.jp/qa5330333.html
その他の回答 (4)
- うぃず(@Wizard_Zero)
- ベストアンサー率69% (344/495)
> A(aX,aY), B(bX,bY)が分かっていて、ACとBCとが交わるときのACBの角度がθとして分かっています。 これでは点Cを求めることはできないでしょぅ。何かもうひとつ条件がないと・・・。ACの長さとかCABの角度とか・・・。
- imogasi
- ベストアンサー率27% (4737/17070)
確度はなんと何の角度ですか。しつもんで言うことを忘れていることがあるのでは。 △ABCのBC辺を質問では(X1, Y1)と(X2, Y2)の2点と言っていて、その対角(角A)がθ?それだと円周角の定理の応用か?
- Sinogi
- ベストアンサー率27% (72/260)
2点A,Bで求まるのは直線ですよね。 その直線と角度θで交差する別直線Lがあるとして、その直線Lが通過する1点Cがわかったとしても、線分ABの延長線上で角度θで交差する直線Lは2本考えられます。 もう少し条件を詰めて考えたらいかがでしょうか。
- nag0720
- ベストアンサー率58% (1093/1860)
何と何とが交差する座標なんでしょうか? 2点と角度だけじゃ分かりません。
補足
みなさん、説明が悪くてすみません。 A(aX,aY), B(bX,bY)が分かっていて、ACとBCとが交わるときのACBの角度がθとして分かっています。その条件で交差するC(cX,cY)を求めたいと思っています。 よろしくお願いします。