
こんにちは、Matlabの初心者ですがよろしくお願いします。
ある座標、たとえば、A(x1, y1) B(x2, y2)があったとして、
この二点間の距離は、
sqrt((x2-x1)^2 + (y2-y1)^2)
だと思いますが、もっと簡潔に求めることができる関数とかが導入されていたりしないかと思いました。AやBを定義しておいて、AとBだけを使うことができないかと思いました。
また、この二点を通る直線とX軸とがなす角度は、
atan(sqrt((y2-y1)^2)/sqrt((y2-y1)^2))
で求められるかと思いますが、これも同様にもっと簡潔な方法がないかと思いました。
いかがでしょうか。よろしくお願いします。
No.1ベストアンサー
- 回答日時:
# Mathlabに関しては知識がありません m(__)m
距離に関しては一般的にはそのsqrtでやる式でしょう
X軸との角度についてはお示しの式では求まりません
atanの引数が常に1になってしまいます
たぶん分母が sqrt((x2-x1)^2) としたかったのでしょうが
この場合の sqrtは必要ないと思います
なぜなら (x2-x1)の2乗の平方根とはつまり(x2-x1)と等価になります
# 符号は考慮する必要があるでしょうが
Mathlabにatan2といった組み込み関数があるならこちらを使ったほうがいいように思います
atanですと除算が入るため 0除算の例外を自前で処理しないといけません
atan2ですとその点を考慮した値を戻します
ただしatan2の取りうる値域が -90から90といった場合もあるので
360度に拡張するのでしたら引数に与える垂直/水平成分の符号を加味して加減算してください
No.2
- 回答日時:
# ちょっと検索したくらいで、Matlabの知識はほとんどありません。
二点間のユークリッド距離を求めるなら、
hypot や pdist が使えると思います。
角度計算は No.1 の通りatan2がより適切でしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ドラゴン曲線を再帰で書く
-
二点の座標から距離や角度を求...
-
検索結果の指定列をリストボッ...
-
VBA public変数はどのようなこ...
-
レコードセットにnullの場合
-
String型の値にスラッシュをつ...
-
他のフォームから別のフォーム...
-
チェックボックスを操作できな...
-
VBAで入力数値について
-
【VB.NET】テキストボックスに...
-
【VB6.0】 あるフォームから他...
-
VB.NETでのイベントの途中終了
-
演奏記号の・・・・
-
ユーザーフォームへのデータ入...
-
texで図と表を並べたい
-
TextBoxの内容を右寄せ
-
GetNextWindowがDLLファイルUse...
-
C言語のサフィックスについて
-
アクセスできない保護レベルエ...
-
VBAのユーザーフォームで、テキ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
二点の座標から距離や角度を求...
-
C#を勉強していて、指定したフ...
-
エクセルのVBAでの7×7の魔方陣...
-
IsNumeric 配列条件
-
VB.NET)コンボボックスの連動に...
-
VC++ (byte)(col & 0xFF) の意味
-
2次元配列を返す関数について
-
ドラゴン曲線を再帰で書く
-
エクセル・VBAでテキストボック...
-
このプログラムがうまく作動し...
-
教えてください。マクロでの罫...
-
エクセル ユーザーフォーム ...
-
カラーの16進表記の足し算
-
検索結果の指定列をリストボッ...
-
C#のaxWebBrowsrでエンコードを...
-
VBAにおけるニュートン法
-
線の太さ
-
テキストファイルの読み込みと...
-
for文の質問です。
-
エクセルVBAでテキストボッ...
おすすめ情報