Transformation between ellipsoids function
显示 更早的评论
Hi,
is there any function for transformation between ellipsoids in MATLAB?
6 个评论
John D'Errico
2022-3-4
编辑:John D'Errico
2022-3-4
What does a transformation between ellipsoids mean to you? Why do you need some special function anyway?
An ellipsoid is defined in any number of dimensions by a simple quadratic form, thus essentially:
(X-X0)' * H * (X-X0) == 1
where H is an nxn non-negative definite matrix. (If H is singular, then the ellipsoid has zero volume, and it lies contained in some lower dimensional planar subspace. But it is still technically an ellipsoid.) X0 is a vector that defines the center of the ellipsoid, and X is an nx1 vector. That completely defines the surface of the ellipsoid. If you want to include the points contained inside the ellipsoid, then the equality becomes an inequality.
If you have multiple ellipsoids, then you just have different center points and different matrices H. You know everything about an ellipsoid that you need to know, if you know the matrix H and the vector X0. At least, you can compute anything from those two variables.
So in that context, what do you want to know about a "transformation" between ellipsoids? What might you hope some function would do for you in that context?
Jakub Snopl
2022-3-4
Does that help?
If not, try to google "transformation between ellipsoids & matlab"
Jakub Snopl
2022-3-4
Torsten
2022-3-4
This requires expert knowledge.
If you have a licence for this toolbox, you should contact MATLAB support for clarification.
回答(1 个)
Anshuman
2024-1-31
Hi Jakub,
MATLAB provides functions to perform transformations between different reference ellipsoids, which are typically used in geodetic computations. The transformations can involve converting geodetic coordinates (latitude, longitude, height) from one ellipsoid to another.
Mapping Toolbox includes functions like "geodetic2ecef" and "ecef2geodetic" to convert between geodetic coordinates and Earth-Centered Earth-Fixed (ECEF) coordinates, based on a specified reference ellipsoid. It can be done in the following way:
% Convert geodetic coordinates on ellipsoid A to ECEF coordinates
[xA, yA, zA] = geodetic2ecef(ellipsoidA, latA, lonA, hA);
% Convert ECEF coordinates to geodetic coordinates on ellipsoid B
[latB, lonB, hB] = ecef2geodetic(ellipsoidB, xA, yA, zA);
类别
在 帮助中心 和 File Exchange 中查找有关 Coordinate Reference Systems 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!