True north-based azimuths

3 ビュー (過去 30 日間)
Cristian Martin
Cristian Martin 2022 年 5 月 22 日
コメント済み: Cristian Martin 2022 年 5 月 22 日
Can I automatically find True north-based azimuths based on certain value of an azimuth from a refference point ?
Let's say if I have a value of 90 the result will be East, I have a value of 25 the result will be North-northeast.
I could do a function but maybe there's more easier methodes.
Thank you!

採用された回答

Bjorn Gustavsson
Bjorn Gustavsson 2022 年 5 月 22 日
Your question doesn't make much sense, sure you can do that - but that would be more of "establishing" your azimuth-convention. If you are thinking of calculating the azimuth clockwise from North to a point [x,y] from a point [x0,y0]. Then atan2 should be your friend:
phi = atan2(x0-x,y0-y);
Or atan2d if you directly want the angle in degrees - which I've found to be a dangerous habit to use, it is in my experience strongly preferable to have all angles in radians and convert to degrees when displaying.
HTH
  5 件のコメント
Bjorn Gustavsson
Bjorn Gustavsson 2022 年 5 月 22 日
If you want to display the label from directionNames with the directionValues closest to an arbitrary angle, phi, you only have to determine the "best matching direction". You can for example do this:
dl2 = ((cosd(phi)-cosd(directionValues)).^2 + ...
(sind(phi)-sind(directionValues)).^2); % should be robust to wrap-arounds
[dl,idx_best] = min(dl2);
disp(directionNames);
HTH
Cristian Martin
Cristian Martin 2022 年 5 月 22 日
Thanks Bjorn !

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

製品


リリース

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by