Convert geodetic coordinate to local ENU
8 次查看(过去 30 天)
显示 更早的评论
Hi, I have two point which are expressed with (latitude, longitude, altitude). Actually the distance between these two point is about 80 meters. However when I tried using the geodetic2enu function, the outputs of xEast and yNorth is about 10^-4, much smaller than the truth. I expressed in this way: [xEast, yNorth, zUp] = geodetic2enu(43.26185395,-79.9301443,46.91869818,43.26184161,-79.93117397, 44.43355895,referenceEllipsoid) Could you please help me figure out where is wrong? is the wrong use of referenceEllipsoid?
Besides, with the same two points, I tried using the lla2ecef, and ecef2enu, the outputs were different from the the geodetic2enu method.
Thanks very much!
1 个评论
David Young
2015-2-4
Presumably the LengthUnit property of referenceEllipsoid is metres? (I can't check because I don't have the mapping toolbox. I can confirm your measurement - my own code estimates the separation at 83.65 m.)
回答(1 个)
Amy Haskins
2015-2-13
编辑:Amy Haskins
2015-2-13
The default reference ellipsoid is a unit sphere. Instead, try using a wgs84 earth model and you will get a result much closer to what you were expecting:
[xEast, yNorth, zUp] = geodetic2enu(43.26185395,-79.9301443,46.91869818,43.26184161,-79.93117397, 44.43355895,wgs84Ellipsoid)
xEast =
83.6035
yNorth =
1.3715
zUp =
2.4846
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 3-D Coordinate and Vector Transformations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!