Transformation between ellipsoids function
Mostra commenti meno recenti
Hi,
is there any function for transformation between ellipsoids in MATLAB?
6 Commenti
John D'Errico
il 4 Mar 2022
Modificato: John D'Errico
il 4 Mar 2022
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
il 4 Mar 2022
Does that help?
If not, try to google "transformation between ellipsoids & matlab"
Jakub Snopl
il 4 Mar 2022
Torsten
il 4 Mar 2022
This requires expert knowledge.
If you have a licence for this toolbox, you should contact MATLAB support for clarification.
Risposte (1)
Anshuman
il 31 Gen 2024
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);
Categorie
Scopri di più su Coordinate Reference Systems in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!