Question with Rhumb Line Distance from Mapping Toolbox
조회 수: 2 (최근 30일)
이전 댓글 표시
I am having a trouble with the geographical distance between 2 coordinates from Matlab's Mapping Toolbox. When I included the referenceEllipsoid('World Geodetic System 1984') to make my calculation more precise, the difference between the 2 output values is huge.
%Input Coordinates
startLat=29.7833;
startLon=49.35;
latC=30.9679414132727;
lonC=55.6527719032408;
%Distance calculation
arclen_check1 = distance('rh',startLat,startLon,latC,lonC);
arclen_check2 = distance('rh',startLat,startLon,latC,lonC,referenceEllipsoid('World Geodetic System 1984'));
Can anyone please explain why the output value between arclen_check1 and arclen_check2 is significantly different. I visitted the Matlab Reference Help but still confused with that.
Thanks for your time reading this
댓글 수: 0
채택된 답변
Ryan Klots
2019년 5월 22일
편집: Ryan Klots
2019년 5월 22일
When you do not specify a reference ellipsoid, the distance function computes the distance between two points on the sphere and returns the answer as an arclength in degrees (angular units).
arclen_check1 = distance('rh',startLat,startLon,latC,lonC); % Answer in degrees
When you specify a reference ellipsoid, it doesn't make sense to return the answer in angular units. Instead, it returns the distance using the same units as the reference ellipsoid itself.
e = wgs84Ellipsoid
e.LengthUnit % 'meter'
This can be verified by using the deg2km function:
arclen_check2 = distance('rh',startLat,startLon,latC,lonC,e); % Answer in meters
arclen1InMeters = deg2km(arclen_check1) * 1000; % Should be close to "arclen_check2"
댓글 수: 0
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!