how to get horizontal coordinates a few mile from given coordinates?

2 次查看(过去 30 天)
hello! I'm trying to find the coordinates a few miles horizontally away from given coordinates.
It's like find (38, y) which is 5 nm right side of (38, 125).
I tried drawing 5nm radius circle from (38,125) with scircle1, but as the circle is comprised of
given points. It;s hard to get exact 38.
Is there any trick to find exact coordinates?
  3 个评论
Adam Danz
Adam Danz 2021-2-26
If you have the mapping toolbox you can convert nm to km using nm2km() and then convert km to miles using m=km*1.609344.
hye wook Kim
hye wook Kim 2021-2-27
As the figure shows, I tried to find the coordinates 5mile horizontaly(same latitude) away from [30, 124].
But with drawing circle method, it's hard to get exact same latitude as you can see 30.0004
+
I have no problem with converting mile between km, but thanks a lot!

请先登录,再进行评论。

采纳的回答

William Rose
William Rose 2021-2-26
I assume that 38,135 are the latitude and longitude of the center, and that you want the latitude and longitude for a point on a circle of radius 5 nm about that center. Let d=circle radius, R=Earth radius (same units as d), δ=d/R, ()=latitude, longitude of center, and ()=latitude, longitude of points on the circle. Then
If the distance d is small compared to the Earth radius R, then the following approximation (flat-Earth approximation) is quite accurate:
  2 个评论
William Rose
William Rose 2021-2-26
For a 5 n.mi. circle at 38 degrees latitude, the positions by flat Earth approximation differ from the true great circle by 2 meters or less, i.e. radial error is < (1/4500)*circle radius.
hye wook Kim
hye wook Kim 2021-3-1
sorry for unkindful explannation. 38, 135 are the lat and lon as you said:)
I'm trying what you've told! Thanks for help!

请先登录,再进行评论。

更多回答(1 个)

William Rose
William Rose 2021-2-27
d=5 n.mi., R=earth radius=3440.1 n.mi, =30, =124, =30, δ=d/R.
So the code is
>> d=5; R=3440.1; lat0=30*pi/180; latc=30*pi/180; long0=124*pi/180;
>> longc=long0+sqrt((d/R)^2-(latc-lat0)^2)/cos(lat0);
>> longc=longc*180/pi; fprintf('%.7f\n',longc);
124.0961592
Which is the longitude on the 5 mile circle, at latc=30.00000 degrees.
  1 个评论
hye wook Kim
hye wook Kim 2021-3-1
As I tried with the code you wrote. It gave me the coordiation with 0.0002 mile error with distance measure function 'haversine'.
But this is the error that I can deal with. Thank you for help:)

请先登录,再进行评论。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by