
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
当たりを判定する対象物の座標が、四角なり円の領域に含有されているかどうかということだと思いますが……。
現実にはこの対象物も大きさがあるから判定する座標が複数集まった集合だと見なしますが、理屈を考える上では単一の座標点と考えます。回転する図形は、回転中心と回転角度によって定まります。回転角度は回転角速度×時間なので、時間によって変化する量です。回転中心が移動している場合は、これも時間に依存する量となります。
四角の場合は4つの頂点を結ぶ4本の線分で囲まれた領域が判定領域となります。ある時点での各頂点の座標はそれぞれ回転中心と回転角度によって決まります。頂点の座標が決まれば線分の方程式も決まるので、判定対象の座標がその四角に囲まれた領域内にあるかどうかも判定出来ます。
円の場合はもう少し簡単です。判定領域は円の中心から半径距離の範囲です。ある時点での円の中心は同様に回転中心と回転角度によって決まります。円の中心が決まれば、あとは判定対象の座標が半径距離内にあるかどうかを判定するだけです。
回転中心が固定(x0,y0)、回転角速度一定ω、時間tの時、回転図形上の点(x,y)はt=0の時に(x1,y1)にあるとすると、
回転半径rは
r = √((x1-x0)^2 + (y1-y0)^2)
初期角度θは
sinθ = (y1-y0)/r
cosθ = (x1-x0)/r
この時、(x,y)は
x = x0 + r・cos(θ+ωt)
y = y0 + r・sin(θ+ωt)
(PC上の座標系は数学の座標系とはy方向が逆なので、回転方向の正は時計回り)
以上の式を四角形の頂点や円の中心に用いて計算していけば良いはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
18マスの左の方3×3のマス目を自...
-
マインクラフト(pc版)で座標...
-
シーケンサー(PLC?)で制...
-
ピクセルの座標を取得するには
-
C言語 配列で座標
-
OpenGL
-
3次元空間上の2つの座標から...
-
最小二乗平面
-
MATLABの射影変換についての質...
-
エクセルシート上のマウスポイ...
-
直線上にある点の座標の求め方
-
エクセルで作った新しいウイン...
-
「アイテムは収集されました」...
-
検索の画面がでなくなってしま...
-
コントロールの書式設定で、“コ...
-
Sendkeysのタイミング
-
ダイアログボックスのボタンコ...
-
コンボボックス内の文字サイズ変更
-
[VB.net] DataGridViewの列ヘッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
グラフの交点の求め方(Excel)
-
マインクラフト(pc版)で座標...
-
始点、終点の二つの座標と半径...
-
3次元空間上の2つの座標から...
-
エクセルで回転する座標の出し方
-
C言語 配列で座標
-
エクセルである点からの距離で...
-
シーケンサー(PLC?)で制...
-
多角形の内部かどうか判定する方法
-
Excel VBA で自在に図形を変化...
-
最小二乗平面
-
回転する矩形同士の当たり判定...
-
VBで、開いているExcelシートの...
-
ワード上Shapeの位置情報を統一...
-
図形が重なりあっているかどうか
-
C言語で制作するピラミッドアー...
-
ガウシアンフィルタのCプログラム
-
Excel関数で指定範囲内に有るか...
-
3次元座標上の2直線の交点判...
-
ダイアログ内コントロールの位...
おすすめ情報