No.5ベストアンサー
- 回答日時:
No.1,2です。
外積を習っているかを全く考えていませんでした。
最初の外積の値は
(x2-x1)*(y5-y1)-(y2-y1)*(x5-x1)
となります。
残りも同じような式になります。
No.4の回答と考え方は同じなのですが、割り算がないため鉛直部分を考慮しなくてもよいので、一般的にはこの方法を使います。
先に触れましたように、凸図形の場合に一般的に使える方法です。(全ての内角が180度以下)
凹部(180度以上の内角)がある場合には凸図形に分解すれば同じ論理でできます。三角形に分解すると確実に凸図形に分解できます。
以上ご参考に
No.4
- 回答日時:
質問された方の年齢を存じ上げないのですが、高校生以上の方ですよね?
中学あたりで直線を式で表す問題を解いたと思います。
例えば、図の一番上の一辺を式で表すと、
y-y4=(y4-y1)/(x4-x1)*(x-x4)
です。
移行してy=の式にし、xにx5を代入します。
そして得られたyは直線上のx座標がx5だったときのyの値となります。
この値がy5より小さければ、Eは直線より下ってことですよね。
これを四つの辺に対して調べればOKです。
この方法の弱点は辺が鉛直のとき傾きが無限大(小)となってしまい、計算できなくなることです。
上手く場合わけして回避してください。
私、実はVBを使ったことがないので、もっと簡単な方法があるかもしれません。
分かりにくい説明で申し訳ありませんでした。
No.3
- 回答日時:
方法1
点ABCDEをすべて、点Eが原点になるように平行移動させる。∠AEB+∠BEC+∠CED+∠DEAを計算します。その値が2πまたは-2πに近ければ内部、0に近ければ外部。近いというのは計算誤差が発生するため。
角度は内積を使用して求める。
方法2
点ABCDEをすべて、点Eが原点になるように平行移動させる。線分AB、BC、CD、DAがX軸の正の部分と交差する数を求める。偶数なら外部、奇数なら内部。
No.1
- 回答日時:
ベクトルABと、ベクトルAEの外積
ベクトルBCと、ベクトルBEの外積
ベクトルCDと、ベクトルCEの外積
ベクトルDAと、ベクトルAEの外積
を計算し、全て同じ符号になれば内側にあることが分かります
要するに辺のベクトルの方向に対して同じ方向(この場合は必ず左側)にEがあります。
ただし、二次元ですので、三次元に拡張して(Z=0)とおいて、計算するとX=0, Y=0となりZだけが値を持ちます。
それで判断します。
凸図形の場合には同じ性質があります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
あるあるbotに投稿したけど採用されなかったあるある募集
あるあるbotに投稿したけど採用されなかったあるあるをこちらに投稿してください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
多角形の内部かどうか判定する方法
その他(プログラミング・Web制作)
-
エクセルで出来るのかを教えてください
Excel(エクセル)
-
座標を持った平面範囲に座標を持った線分が入っているかを判断する方法
計算機科学
-
-
4
2次元における外積について
数学
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
EXCELなどで「返す」という表現
-
CとFORTRANの計算速度はどちら...
-
C++ でファイルを消す関数(??)
-
バッチファイルでウインドウを...
-
Javaでのある数の小数点乗に...
-
機械の扱える最も0に近い実数は?
-
連立一次方程式を解くプログラム
-
C言語で、べき乗の計算をするプ...
-
連立方程式を解くプログラムを...
-
c言語でsinx=0(0<x<5)をニュー...
-
Excel VBAの残業時間の合計計算...
-
変化させるセルが変化しない
-
コピーマクロを「値のみコピー...
-
SNRの計算の仕方
-
四則演算プログラム(入力式の...
-
剰余の計算方法
-
引き放し法による除算アルゴリ...
-
科学計算
-
C言語で、べき乗の計算方法につ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
65536は2の何乗なのでしょうか?
-
排他的論理和 BCC(水平パリテ...
-
VBAの再計算が反映されない件に...
-
バッチファイルでウインドウを...
-
変化させるセルが変化しない
-
EXCELなどで「返す」という表現
-
傾いた四角形内の範囲の条件式
-
エクセルで特定のセルのみを任...
-
CとFORTRANの計算速度はどちら...
-
Visual C++でdebugとreleaseで...
-
モジュラス103の計算とは何でし...
-
なぜオーバーフローになるので...
-
VB6で正確なミリ秒を計測したい...
-
VBでReplace
-
引き放し法による除算アルゴリ...
-
matlabで計算終了
-
CRC8を教えてください
-
VBAで関数をつくる
-
Excel VBAの残業時間の合計計算...
-
等高線を計算したい
おすすめ情報