Softanza
StartFrançais
Softanza
The library documents itself · Geo & cartography

stzGeoEllipsoid

45 own methods · 0 forms written with extensions, listed under their method

the source: base/geo/stzGeoEllipsoid.ring(opens in a new tab) · All classes · The area reference: Geo & cartography

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

Examples: 0 come from the library's tests; 42 were composed from each method's signature and run for this page, on a fresh object, for example o1 = new stzGeoEllipsoid(:WGS84). 3 methods have none yet. Examples run on 2026-10-03 20:23 inside the library at commit 0e72e2e2c.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
Name
what it IS
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.Name()
#--> WGS84
composed from the signature, run for this page
no extension
Content
(no comment in the source: the name reads as a sentence) contentno extension
EquatorialRadius
the equatorial radius, metres -- the one number every other follows from
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.EquatorialRadius()
#--> 6378137
composed from the signature, run for this page
no extension
PolarRadius
(no comment in the source: the name reads as a sentence) polar radius
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.PolarRadius()
#--> 6356752.31
composed from the signature, run for this page
no extension
Flattening
(no comment in the source: the name reads as a sentence) flattening
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.Flattening()
#--> 0.00
composed from the signature, run for this page
no extension
InverseFlattening
(no comment in the source: the name reads as a sentence) inverse flattening
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.InverseFlattening()
#--> 298.26
composed from the signature, run for this page
no extension
Eccentricity
(no comment in the source: the name reads as a sentence) eccentricity
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.Eccentricity()
#--> 0.08
composed from the signature, run for this page
no extension
EccentricitySquared
(no comment in the source: the name reads as a sentence) eccentricity squared
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.EccentricitySquared()
#--> 0.01
composed from the signature, run for this page
no extension
SecondEccentricitySquared
(no comment in the source: the name reads as a sentence) second eccentricity squared
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.SecondEccentricitySquared()
#--> 0.01
composed from the signature, run for this page
no extension
ThirdFlattening
(no comment in the source: the name reads as a sentence) third flattening
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.ThirdFlattening()
#--> 0.00
composed from the signature, run for this page
no extension
IsSphere
(no comment in the source: the name reads as a sentence) is sphere
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.IsSphere()
#--> 0
composed from the signature, run for this page
no extension
SurfaceAreaKm2
(no comment in the source: the name reads as a sentence) surface area km2
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.SurfaceAreaKm2()
#--> 510065621.72
composed from the signature, run for this page
no extension
AuthalicRadiusKm
THE SPHERE THAT HAS THE SAME SURFACE AREA. It is the right radius to use when a spherical formula must be used for an AREA -- and it is 6371.007 km, which is why the figure looks so like the sphere this plane used and is not the same number.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.AuthalicRadiusKm()
#--> 6371.01
composed from the signature, run for this page
no extension
QuarterMeridianKm
THE DISTANCE FROM THE EQUATOR TO THE POLE, 10001.966 km on WGS84. The metre was defined in 1793 as a ten-millionth of exactly this, so the figure says how far out that first survey was: 1966 metres, about two hundredths of one per cent, over a length nobody had ever walked.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.QuarterMeridianKm()
#--> 10001.97
composed from the signature, run for this page
no extension
Between
:km, :metres how far :azimuth the bearing you leave point 1 on, degrees from north :finalAzimuth the bearing you are on when you ARRIVE, which on any long path is a different number -- this is why a great-circle course has to be re-steered, and why a flight from London to Tokyo starts out heading north :reducedLength how far apart two paths leaving a degree apart are when they arrive; where it reaches zero the shortest path has stopped being shortest :arcDegrees the arc on the auxiliary sphere -- the engine's own parameter, exposed because a caller sampling a path may want to step it evenly in arc rather than length
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.Between(2, 5, 2, 2) )
#--> [ [ "metres", 333756.35 ], [ "km", 333.76 ], [ "azimuth", -89.95 ], [ "finalazimuth", -90.05 ], [ "reducedlength", 333603.03 ], [ "arcdegrees", 3.01 ] ]
composed from the signature, run for this page
no extension
DistanceKm
(no comment in the source: the name reads as a sentence) distance km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.DistanceKm(2, 5, 2, 2)
#--> 333.76
composed from the signature, run for this page
no extension
DistanceM
(no comment in the source: the name reads as a sentence) distance m
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.DistanceM(2, 5, 2, 2)
#--> 333756.35
composed from the signature, run for this page
no extension
Azimuth
THE BEARING YOU LEAVE ON, degrees clockwise from north. It is NOT the bearing you arrive on and it is NOT constant along the way; see RhumbAzimuth for the one that is.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.Azimuth(2, 5, 2, 2)
#--> -89.95
composed from the signature, run for this page
no extension
FinalAzimuth
(no comment in the source: the name reads as a sentence) final azimuth
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.FinalAzimuth(2, 5, 2, 2)
#--> -90.05
composed from the signature, run for this page
no extension
DestinationKm
WHERE YOU ARRIVE, going a distance on a bearing. Answers [ lat, lon ].
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.DestinationKm(2, 5, 2, 2) )
#--> [ 2.02, 5.00 ]
composed from the signature, run for this page
no extension
DestinationM
(no comment in the source: the name reads as a sentence) destination m
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.DestinationM(2, 5, 2, 2) )
#--> [ 2.00, 5.00 ]
composed from the signature, run for this page
no extension
DestinationXT
(no comment in the source: the name reads as a sentence) destination xt
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.DestinationXT(2, 5, 2, 2) )
#--> [ [ "lat", 2.02 ], [ "lon", 5.00 ], [ "finalazimuth", 2.00 ], [ "reducedlength", 2000.00 ], [ "arcdegrees", 0.02 ] ]
composed from the signature, run for this page
no extension
GeodesicBetween
THE PATH ITSELF, as lon/lat pairs ready for a projection. A geodesic drawn as a straight line between its endpoints is a lie on every projection but the gnomonic, and this is how a flight path or a boundary gets drawn honestly: sample the curve on the sphere, then let the projection bend it. The endpoints come back EXACTLY as given, so two segments that share a point still meet.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.GeodesicBetween(2, 5, 2, 2, 2) )
#--> [ [ 5, 2 ], [ 2, 2 ] ]
composed from the signature, run for this page
no extension
GeodesicFlat
the same as ONE flat list of lon,lat -- what the projection takes
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.GeodesicFlat(2, 5, 2, 2, 2) )
#--> [ 5, 2, 2, 2 ]
composed from the signature, run for this page
no extension
MidpointOf
(no comment in the source: the name reads as a sentence) midpoint of
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.MidpointOf(2, 5, 2, 2) )
#--> [ 2.00, 3.50 ]
composed from the signature, run for this page
no extension
RhumbBetween
the rhumb line ------------------------------------------------------ THE PATH OF CONSTANT BEARING -- longer than the geodesic, and the one a ship or a small aircraft can actually hold. Before satellite navigation this WAS the route: you set a compass course and kept it. New York to London is 5554.9 km by geodesic and 5774.2 km by rhumb, and the 219 km is what a great-circle course buys at the price of re-steering all the way.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.RhumbBetween(2, 5, 2, 2) )
#--> [ [ "metres", 333756.39 ], [ "km", 333.76 ], [ "azimuth", -90 ] ]
composed from the signature, run for this page
no extension
RhumbDistanceKm
(no comment in the source: the name reads as a sentence) rhumb distance km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.RhumbDistanceKm(2, 5, 2, 2)
#--> 333.76
composed from the signature, run for this page
no extension
RhumbAzimuth
THE ONE BEARING THAT DOES NOT CHANGE along the way, which is what makes this line steerable at all.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.RhumbAzimuth(2, 5, 2, 2)
#--> -90
composed from the signature, run for this page
no extension
RhumbDestinationKm
(no comment in the source: the name reads as a sentence) rhumb destination km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.RhumbDestinationKm(2, 5, 2, 2) )
#--> [ 2.02, 5.00 ]
composed from the signature, run for this page
no extension
RhumbLineBetween
(no comment in the source: the name reads as a sentence) rhumb line between
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.RhumbLineBetween(2, 5, 2, 2, 2) )
#--> [ [ 5, 2 ], [ 2, 2 ] ]
composed from the signature, run for this page
no extension
RhumbFlat
(no comment in the source: the name reads as a sentence) rhumb flat
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.RhumbFlat(2, 5, 2, 2, 2) )
#--> [ 5, 2, 2, 2 ]
composed from the signature, run for this page
no extension
MeridianArcKm
the meridian and the parallel --------------------------------------- HOW FAR NORTH A LATITUDE IS, in km from the equator along the meridian. On a sphere this is just R times the angle; on an ellipsoid it is not, and the gap is why a degree of latitude is 110.57 km at the equator and 111.69 km at the pole -- the ground is flatter there, so the same angular change of the vertical covers more of it.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.MeridianArcKm(2)
#--> 221.15
composed from the signature, run for this page
no extension
LatitudeAtArcKm
(no comment in the source: the name reads as a sentence) latitude at arc km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.LatitudeAtArcKm(2)
#--> 0.02
composed from the signature, run for this page
no extension
ParallelLengthKm
the whole way round a parallel of latitude, km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.ParallelLengthKm(2)
#--> 40050.77
composed from the signature, run for this page
no extension
DegreeOfLatitudeKm
a degree of latitude, and a degree of longitude, AT a latitude -- the two numbers anybody converting a tolerance into degrees needs
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.DegreeOfLatitudeKm(2)
#--> 110.58
composed from the signature, run for this page
no extension
DegreeOfLongitudeKm
(no comment in the source: the name reads as a sentence) degree of longitude km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.DegreeOfLongitudeKm(2)
#--> 111.25
composed from the signature, run for this page
no extension
ToEcef
the frames ---------------------------------------------------------- ECEF: ONE CARTESIAN FRAME, metres on all three axes, origin at the Earth's centre, Z through the pole, X through where the equator meets the prime meridian. It exists because latitude and longitude cannot be subtracted: near a pole the same ground is a hundred times more degrees of longitude than at the equator, so an average of two coordinates, a difference, or anything handed to a linear-algebra routine is wrong. Height is metres ABOVE THE ELLIPSOID, which is not height above sea level -- the two differ by up to a hundred metres and the difference needs a geoid model this plane does not carry.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.ToEcef(2, 5, 2) )
#--> [ 6350023.54, 555555.07, 221104.62 ]
composed from the signature, run for this page
no extension
FromEcef
(no comment in the source: the name reads as a sentence) from ecef
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.FromEcef(2, 5, 2) )
#--> [ 180.00, 68.20, -6378142.39 ]
composed from the signature, run for this page
no extension
ToEnu
ENU: THE LOCAL FRAME A PERSON LIVES IN -- east, north and up in metres about a chosen origin. A radar bearing, a survey offset, a drone's position or a robot's odometry is naturally in this frame, and the trip back out through ECEF is how such a thing lands on a globe.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.ToEnu(2, 5, 2, 2, 2, 2) )
#--> [ -333604.02, 304.87, -8730.41 ]
composed from the signature, run for this page
no extension
FromEnu
(no comment in the source: the name reads as a sentence) from enu
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.FromEnu(2, 5, 2, 2, 2, 2) )
#--> [ 2.00, 5.00, 4.00 ]
composed from the signature, run for this page
no extension
AreaKm2
The ring need not be closed -- the last point joins the first -- and its winding does not matter, since an area is not signed. A ring that swallows a pole comes back as the region it encloses and not as the rest of the world, which is the one case where a boundary integral needs to be told what it measured.
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.AreaKm2([ 2, 3 ])
#--> 0
composed from the signature, run for this page
no extension
PerimeterKm
(no comment in the source: the name reads as a sentence) perimeter km
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? o1.PerimeterKm([ 2, 3 ])
#--> 0
composed from the signature, run for this page
no extension
AreaXT
(no comment in the source: the name reads as a sentence) area xt
composed example
o1 = new stzGeoEllipsoid(:WGS84)
? @@( o1.AreaXT([ 2, 3 ]) )
#--> [ [ "km2", 0 ], [ "m2", 0 ], [ "perimeterkm", 0 ], [ "perimeterm", 0 ] ]
composed from the signature, run for this page
no extension
PathLengthKm
the length of an open path along geodesics, km -- a river, a route, a flight plan with waypointsno extension