Flat-Earth: Finding the curvature of the Earth

Thursday, August 10, 2017 - 01:24 | Author: wabis | Topics: FlatEarth, Knowlegde, Animation, Interactive | Comments(21)
For us living beings on the surface of the earth, the earth looks flat. For this reason the so-called Flat-Earther (FE) claim that the earth is a flat plane rather than a globe.

With the help of a simulation, I show, up to what altitudes the earth appears flat, although it actually has a spherical shape. Using some animations, you can learn how to recognize the curvature of the earth, or in what circumstances it appears flat. The simulation can also simulate refraction. I prove by means of photos, how the simulation depicts reality, by superimposing the simulation results onto photos.

 Deutsche Version: Wie stark ist die Krümmung der Erde?

Curvature App: Simulation of Globe-Earth and Flat-Earth

The blue grid in the following Curvature App shows the curvature of the earth at a certain altitude as it appears at a certain Angle of view. The Angle of View, or Field of View (FoV), can also be set as a 35 mm focal length.

  • Curve
  • Causeway
  • TrnsmLine
  • Grace
  • Chicago
  • Canigou
  • Bedford
  • Tensas
  • Soundly
  • Reset

Click a Button to Start an Animation. Click again to stop it anytime.

  • Views
  • Objects 1
  • Objects 2
  • Refraction
  • Units-Calculator
  • Save/Restore

Please read the paragraph on Refraction to get familiar with this panel.

Use this Formular to convert between different lengh units. You can Copy/Paste the results into input fields in the other Forms.

Get App State Get App Url Set App State Clear

Use this panel to save a certain App state by Get App State and use Copy/Paste to save the state in an external text file. Use Copy/Paste to copy a saved state from an external text file into this panel and click Set App State to activate this state. You can change the Parameters in this panel and apply them by pressing the RETURN button on the keyboard.

Use Get App Url to get an URL containing the current App State. Click Set App State oder copy the URL into any browser address field to go to this page and display the current App State.

Computed Values

(Click: Zoom)
ZoomImage-InformationsBerechnete Werte
(Click: Zoom)
ZoomImage-InformationsÜbersichtsplan zur Simulation

 Run the Curvature App alone in a separate Window.
 Source Code: Curvature App
 Download Standalone Curvature App

Simulation Parameters

The simulation parameters are grouped into the Panels Views, Objects 1, Onjects 2, and Refraction.

Views Panel

The Curvature App can be used to compare a spherical earth (Globe) with the Flat-Earth. You can select the desired model with the radio buttons labeled Model.

For comparison with the Flat-Earth model, a red grid can be displayed with the Grid setting Projected. The red grid shows the projection of the blue grid onto the plane of the Flat-Earth. For low altitudes, the deviations between the blue ball grid and the red flat grid are minimal. So small indeed that by turning off the red grid the curvature can barely be noticed.

Note that the globe grid does not have a constant spacing. Instead, a certain number of grid lines are displayed, adjustable with the parameter Lines. This corresponds to the natural seeing, because on the earth we have no fixed grid which shows the relative distances either. As a result the distance between the grid lines varies with the distance to the Globe-Earth horizon. The actual distance between the lines is displayed at LineSpacing under Computed Values.

You can choose with CenterHoriz which horizon (Globe or Flat-Earth Equator FE-Eq) or which reference line (Betwn: line between Globe- and FE-Horizon, or Eye-Lvl) should stay at the center of the graphic, if Nick = 0.

View∠ (View Angle θ) = Field of View FoV and f (Focal Length = Zoom) are linked together via the formula:

f = { 43{,}2\ \mathrm{mm} \over 2 \cdot \tan( \theta / 2 ) }

You can enter a View∠ between 0,1° and 160° or a focal length f between 3,81 mm and 24 800 mm. The range of the sliders is narrower.

Eye-Level shows a line at infinity that is the distance Height obove the Flat-Earth plane at the observer. So this line is at the height of the eye of the observer.

Tangent shows the tangent line to the Globe horizon. This is handy to recognize small curvatures of the horizon.

Data displays diverse computed values on the graphics.

Objects Panels

There are two identical-looking Object Panels. You can combine two different sets of objects in a simulation scene. Some objects of the same type may look different in the two panels, e.g. the T-Tower. Use Panel Objects 1 for object in the foreground, and Objects 2 for background objects. The objects can not be mixed in the distance because the drawing algorithm combines all the objects of a group. The representation of mixed objects is optically incorrect.

To display objects in the graphic, a value greater than 0 must be set at NObjects. The type of the object is selected in the lower area of the panel with ObjType. If then no object is visible, it is probably outside the visual range. Change the view area in the Views panel or move the objects with the other parameters in this panel into the view area.

Most of the parameters in this tab are self-explanatory. Note that rows with the same background color are related to each other. With the SideVar radio buttons you can select the mode for lateral movement of the objects, and the slider SideVar can be used to set the magnitude of the displacement. The same applies to SizeVar.

Refraction Panel

All Refraction settings of are made in this panel. For a detailed description, see Refraction.

Units-Calculator Panel

Here you can convert lengths into different units. Once a value is entered into a field, all other units are calculated. You can copy a value from one of these fields by copy/paste to a field in another panel. Press the Esc key (applies to all fields of all panels) to reset the field.

Computed Values Panel

The data displayed by these fields can be looked up on the graphics displayed below the panel. The data not specified there are:

AngDiameter (angular diameter) is the angular measurement describing how large the Globe-Earth appears from the distance Height.

LineSpacing is the grid spacing of the blue grid of the globe representation. The distance can be specified in the 4 steps in the Views panel with the Lines option.

DisplHorWidth specifies the horizontal distance between the black frame at the distance of the horizon. If the horizon is not curved and not rotated, this corresponds to the length of the horizon lying within the black frame. The calculation of the length of the effectively visible curved horizon line is too complicated to be packaged into a formula. But this value can be used as a good guess.


The Curvature App can simulate how Refraction affects the Globe Model. For this purpose, the desired Refraction can be adjusted in the Panel Refraction with the red slider. If the App applies Refraction, the corresponding value is displayed at the bottom of the graph. A Refraction of zero is not displayed.

Refraction of the App can be set A) by one of the parameters Coeff. k, Factor a, Radius R' or with the red slider. Or Refraction can be computed B) from the atmospheric parameters Pressure Press. P, Temperature Temp. T and Temperature-Gradient dT/dh. In case B), Refraction is calculated as soon as the value in dT/dh is changed.

The parameters P, T and dT/dh can also be taken over from the Std-Atmosphere Barometer at the lower part of the panel by choosing BaroLink other than off. The Barometer calculates the parameters for the Standard-Atmosphere on the basis of the observer's altitude Height h.

Attention: Refraction simulation only makes sense below approx. 40 km altitude. When Refraction is coupled to the Standard-Atmosphere (BaroLink = Std-Atm), Refraction automatically decreases with increasing altitude. However, you can enter any values into the fields, but you may get unrealistic Refractions and/or Temperature-Gradients dT/dh.

What is Refraction?

The density of the atmosphere generally decreases exponentially with increasing altitude. Any density change causes a refraction. If the density change is not abrupt but continuous as in the atmosphere, the light is not refracted but bent, but we call it Refraction anyway. Light is always bent in the direction of the higher density, and in the atmosphere that is usually downwards. This means that objects in the distance appear higher than with a straight line of sight. This effect increases with the distance of the observed object, since the light beam travels a larger distance.

Graph: Refraction angle und Measures 
(Click: Zoom)

Refraction is not a constant phenomenon. It depends strongly on the current atmospheric conditions along the light path and therefore fluctuates on the way to the observer. Since it is impossible to measure the actual refraction from the object to the observer, an average value is obtained which can be calculated from the atmospheric conditions at the observer's location, at least for shorter distances of only some km. But these values can be used for longer distances too, if there are similar conditions along the light path. The average value corresponds to a light beam following an arc with the constant radius RR.

Further usefull readings: Introduction to Superior-Mirage Simulations


Refraction can be expressed by various parameters:

  1. Refraction-Coefficient kCoeff. k
  2. Refraction-Factor aFactor a
  3. Refraction-Radius R'Radius R'
  4. Refraction-Angle ρObjRefr∠

The values 1 to 3 are directly linked to each other. As soon as one of these values is specified, the other two are calculated.

Refraction-Coefficient k

The Refraction-Coefficient k is the ratio of the radius of the earth R to the radius of the line of sight RR:

k = { R \over R_\mathrm{R} }
k ' =' 'Refraction-Coefficient
R ' =' '6371 km = Radius of the earth
R_\mathrm{R} ' =' 'Radius of the curved line of sight from the object to the observer in km

If the line of sight is not curved, its Radius RR is infinite. This means that for a non-curved line of sight the Refraction-Coefficient is k = 0. If the line of sight follows the earth's curvature, which is quite possible, then k = 1. The earth appears completely flat in this case.

A standard value of k = 0,13 is often used in the survey. Another frequently used value assumes a radius of curvature of RR = 7 · R, which corresponds to a coefficient of k = 0,142 or a Refraction-Factor a = 7/6. The difference is small: for an altitude determination on a distance of 1000 m the difference is only about 1 mm.

The Refraction-Coefficient can be calculated from the atmospheric conditions as follows (Source: Atmospheric refraction):

k = 503 \cdot { P \over T^2 } \cdot \left( 0.0343 + { \mathrm{d} T \over \mathrm{d} h } \right)
k ' =' 'Refraction-Coefficient
P ' =' 'Air pressure at the observer in mBar, Standard = 1013,25 mBar
T ' =' 'Temperature at the observer in Kelvin, Standard = 288,15 K = 15°C
\mathrm{d} T/\mathrm{d} h ' =' 'Temperature-Gradient at the observer, Standard = −0,0065°C/m

For Standard-Atmosphere this results in a maximum value of approx. k = 0,17 which decreases continuously with increasing altitude of the observer and is practically zero at an altitude greater than 40 km.

The Temperature-Gradient, i.e. the Temperature Change with increasing altitude, can fluctuate considerably near the surface. While a decrease of Temperature of 0,65°C per 100 m is established under Standard-Atmosphere to an altitude of 11 km, i.e. dT/dh = −0,0065°C/m, a few meters above the surface very different values can be measured. Correspondingly, Rrefraction is then very different too.

Over cool water or ice, the Temperature-Gradient dT/dh is often positive in a layer above the surface, i.e. the Temperature in the lowest layer of the atmosphere increases with increasing altitude. Such a condition is called an Inversion. If the temperature gradient is greater than −0,01°C/m, in particular in the case of an Inversion, the air is stable (stabile Inversion). If the temperature gradient is less than −0,01°C/m, which is the case with warm soil over cool air, compensating air flows emerge and the air is fluctuating, unstable.

On an Inversion, the down bending of the light beam is the most extreme and can be so strong that the light beam follows the curvature of the earth: k1. In this case, the earth appears flat.

If the Temperature-Gradient is more negative than Standard, that is, dT/dh < −0,0065°C/m, which often is the case over a warm surface with a layer of cool air, the light beam is bent less. Refraction k is then smaller than Standard. In the case of a very strong negative Gradient, when the ground is hot, the light beam can even be curved upwards, i.e. the Refraction-Coefficient k is then negative. This results in a fatamorgana or mirage, so layers above the surface appear mirrored. Negative Refraction is not simulated by the Curvature App.

Note that even if the observer is at a higher elevation, where the ground effect at the observer is negligible, the light rays to distant objects can propagate a great distance along a cool surface like the sea, and are accordingly strongly curved. Therefore on observations over the sea, or a large lake, cities, islands, or mountains can appear, which, according to the formulas, which do not take Refraction into account, must be hidden behind the earth's curvature, see Animations Chicago and Canigou.

Refraction Classification

To get a feel for the impact of Refraction, I have assigned the following classification to the values:

Coefficient k 0 to 0,12 0,12 to 0,18 0,18 to 0,38 0,38 to 0,58 0,58 to 0,78 0,78 to 1
Classification weak standard moderate strong severe extrem

Correspondingly, I have assigned the following classification to the Temperature-Gradient:

dT/dh less than −0,01°C/m −0,01 to 0°C/m greater than 0°C/m
Classification instable Layer stable Layer stable Layer; Inversion
Comment warm surface, cold air cold surface, warm air

If a nonzero refraction is set, the value k and dT/dh and their classifications are displayed at the bottom of the graph. If Refraction is calculated from the values for Standard-Atmosphere by setting BaroLink = Std-Atm, this is indicated with the classification Standard Atmosphere.

If the surface temperature is colder than the overlying layer of the atmosphere, the air is very stable. Stable layers suppress convection and turbulent mixing of the air and thus retain their structure. In Standard-Atmosphere, the Temperature-Gradient is only −0,0065°C/m. It is therefore weakly stable.

Source: Atmospheric Temperature Profiles

The more positive the Temperature-Gradient, i.e. the colder the surface is compared to the lowest layer of the atmosphere, the greater Refraction. This explains why, in laser experiments over a frozen lake, no curvature of the earth can be detected because the strong Refraction bends the laser light along the earth's curvature.

Linking Refraction to Standard-Atmonsphäre

The Refraction-Coefficient k can be calculated from the empirically found formula (3) from the current atmospheric conditions at the observer.

In the panel Refraction, the values for pressure P, temperature T and Temperature-Gradient dT/dh for the Standard-Atmosphere are displayed. These values are defined up to a height of approx. 85 km, from then they are displayed as NaN.

If you want to use these values to calculate Refraction, you can select the setting Std-Atm with the option BaroLink. Then the barometer values of the standard atmosphere are linked to Refraction calculations. If you want to set a different Temperature-Gradient but want to use Pressure and Temperature of the Standard-Atmosphere, you can use the option T, P. With off the link is deactivated and you can use any values for Temperature and Pressure, even those that make no sense.

For the other BaroLink options, Temperature and Pressure are linked with the Baro values, but a fixed refraction can be selected. The corresponding Temperature-Gradient is then calculated therefrom. Refraction can also be adjusted with the red slider. Note that these settings are useful only in the lower part of the atmosphere up to approx. 20 km, since Refraction decreases in nature with increasing altitude and does not remain constant.

Refraction-Factor a

In order to be able to use the formulas for the calculation of the obscuration of objects by the curvature of the earth also with consideration of Refraction, there is a trick: simply replace the radius of the earth R by a reduced Refraction-Radius R', which can be calculated from the Refraction-Coefficient k. I denote the conversion factor as Refraction-Factor a:

a = { 1 \over 1 - k }
a ' =' 'Refraction-Factor
k ' =' 'Refraction-Coefficient, see (3)

Refraction-Radius R'

The Refraction-Radius R', which can be used in the formulas for the calculation of the hidden part of an object, is thus:

R' = a \cdot R
R' ' =' 'Refraction-Radius
R ' =' '6371 km = radius of the earth
a ' =' 'Refraction-Factor

If Refraction k is nonzero, the Curvature-App uses R' instead of the radius of the earth R for the globe model to simulate the optical effect of Refraction.

Note that the Refraction-Radius R' is not the radius of curvature of the light ray RR. The relationship between the radii is:

R' = { R \over 1 - R/R_\mathrm{R} }
R' ' =' 'Refraction-Radius
R ' =' '6371 km = radius of the earth
R_\mathrm{R} ' =' 'Radius of curvature of the light ray

Refraction-Angle ρ

Similarly, as the size of an object can be expressed as an angular size α, the amount an object appears to be raised due to Refraction can be expressed as a Refraction-Angle ρ. The magnitude of the elevation depends on Refraction k and the distance of the object from the observer. The further away an object is, the more it appears raised because the light beam is longer and thus is curved over a longer distance.

The angular size α of an object in degrees is given by its size s and its distance to the observer d. A good approximation for larger distances when d is practically equal to the view distance from the observer to the object is:

\alpha = 2 \cdot arctan\left( { s \over 2 \cdot d } \right) \cdot { 180 \over \pi }

The calculation of the Refraction-Angle ρ is complex and is calculated by means of vector geometry. Essentially, the position of the highest point of the nearest object is calculated on a sphere with radius R and on a sphere with radius R'. Then a vector from the observer to each of these two points is calculated. The Refraction-Angle ρ is the angle between these two vectors.

If the size s of the object and its angular size α is known, the Refraction-Angle ρ can be used to compute the absolute magnitude labs of how much an object is raised with respect to Eye-Level.

l_\mathrm{abs} = { \rho \over \alpha } \cdot s

Since the angular size α of an object decreases with an increase in distance d, but its Refraction-Angle ρ increases with distance, the absolute magnitude of the raising of an object labs with increasing distance to the viewer increases considerably. If the object lies far behind the horizon, the magnitude of its relative raising lrel with respect to the horizon also increases accordingly, although not so strongly, as the nearer horizon also raises with respect to Eye-Level, but to a less extend corresponding to the shorter distance from the observer.

Grafik: Refraktions Winkel und Masse 
(Click: Zoom)

For example, if a mountain is 2000 m high and appears at an angular size of 0,5°, and the Refraction-Angle is 0,25°, the mountain apprears raised an amount of 1000 m. Note that this calculation can be performed without knowing the distance to the object. The distance to the object is contained in the Refraction-Angle. If the mountain is only 1000 m high, its angle size is only half as large: 0,25°. We again obtain the same amount of raising of 1000 m as for the higher mountain, which proves that the raising depends only on the distance, not on the size of the object.

Since the horizon also raises due to Refraction, the raising of an object that lies behind the horizon appears correspondingly less with respect to the horizon. If the object is in front of the horizon, it even lowers with respect to the horizon, although it is raised in absolute terms. This is because the distant horizon appears to be raised more than the object. The greater the distance of the object from the horizon, the greater the relative increase/decrease with respect to the horizon. Very distant Mountains can therefore be raised a considerable proportion of their size beyond the horizon. Thus, Refraction can make mountains, hidden behind the curvature of the earth, visible again to a large extent.

The Refraction-Angle, the angular size and the relative and absolute raising of the object is displayed in the graphic of the App if the option Show: Data on the Views panel is activated. Or they can be read in panel Refraction.


The earth is huge in comparison to us humans, 12 742 000 m compared to 2 m. So huge, indeed, that we are not able to see their spherical shape with the naked eyes from the surface of the earth. We can measure the distance to the horizon and its lowering due to the spherical shape only with precise technical instruments. Only from high altitudes or from space can we clearly see the ball shape of the earth.

Even at altitudes of several kilometers, such as the cruise altitudes of airliners, the spherical shape can not always be clearly identified. A slight curvature can only be detected on wide angle images. It must be taken into account, however, that wide-angle lenses can distort the scene. On cheap cameras or smartphones the curvature can therefore only be observed to a limited extent.

The visibility of the curvature is therefore dependent on the altitude and the angle of view respective the focal length, i.e. zooming!

The fact that the horizon is lower than Eye-Level can not be recognized by the naked eye, since in nature there is no eye-level line above the horizon. However, this drop can be seen with appropriate instruments such as an Overhead Display of an Aircraft.

Superimpose the Grid onto Photos

In order to prove that the calculated blue grid actually reflects reality correctly, the grid can be matched with a real photo.

To superimpose a grid onto a real photo the right way, the following information is required:

  • Altitude in which the photo of the earth was taken
  • 35mm Focal Length or Angle of view used on taking the image
  • Aspect ratio of the image
  • The lens must not be distorting, fish-eye lenses are excluded or a lens correction must be applied, which removes the distortion.

Use particularly shootings from high altitudes, for example from an airplane or from space. At lower altitudes, no curvature is clearly visible.


Set the altitude with the blue slider or enter the value in the Height input field. Select the focal length or the corresponding angle of view with one of the black sliders. Select the aspect ratio of the image at AspectRatio. With the green sliders Nick and Roll the viewpoint and the banking angle can be adapted to the photo.

Cut out the area inside the black frame with a program like the Sniping Tool from Windows. Open the photo in any image editing program. Place the cut out area of the grid in a new layer above the photo. Scale the grid plane so that the aspect ratio is maintained and the grid layer becomes the same size as the photo. Set the blending mode of the layer to multiply (or something like that). It may be necessary to move the grid layer slightly and rotate it if the settings of Nick and Roll do not match exactly.

If everything was done correctly, the grid would now match exactly with the image of the earth's surface. The following photographs show how the results can look like:

Pictures taken from the ISS

The International Space Station ISS orbits the earth at an altitude of 400 km. From this altitude, the earth clearly shows itself as a sphere. I now wanted to check if the calculated grids match with photos taken from the ISS. For this I searched original photos, in which data about the camera and lens used is stored in the images in the EXIF-Format. The reason is, in order to get the correct perspective representation, I have to enter the focal length of the used camera in the Curvature App.

I have found several such images on NASA's website. Below are two such examples with and without superimposed grid:

(Click: Zoom)
ZoomImage-InformationsTest whether the graphics of the simulation matches a real image taken from the ISS:
Height = 400 km; 35mm focal lengt f = 28 mm; Aspect Ratio 3:2; Line Spacing 48,91 km
Date of recording: 16.09.2016 20:55; Source: NASA; Original image with EXIF Informations
(Click: Zoom)
ZoomImage-InformationsTest whether the graphics of the simulation matches a real image taken from the ISS:
Height = 400 km; 35mm focal lengt f = 28 mm; Aspect Ratio 3:2; Line Spacing 48,91 km
Date of recording: 16.09.2016 20:55; Source: NASA; Original image with EXIF Informations
  • Swap images
  • With Grid
  • Without Grid

For the above picture, I used an original photo from NASA. The image was edited according to EXIF data with Photoshop, probably only converted to a JPG. I can't find traces of a composit procedure or any other manipulation and the noise is as expected from a camera with the selected settings.

I have set Height = 400 km and 35mm focal length f = 28 mm in the Curvature App. With Nick and Roll, I rotated and moved the graphics according to the photo, because the photographer did not aim at the horizon. Then I created a screen copy of the graphics and opened it together with the photo in Photoshop. I have placed the graphics on top of the photo on a new layer and inverted the colors. The graphics and the photo have the same aspect ratio of 3:2. I had to scale the graphics, however, so that it got the same size as the photo. After that, I superimposed the graphics over the photo with blending mode "negative multiply".

And look, the graphics fits exactly to the photo. The lines have a spacing of LineSpacing = 48,91 km. The Gulf of Suez fits exactly between two lines. In Google Earth measured I get about 50 km. So this also fits perfectly.

Below is another picture of the Earth taken from the ISS photographed with the same camera. The superimposed grid of the simulation fits perfectly also here. The faint gray line corresponds to the eye level, i.e. the horizon of a Flat-Earth.

(Click: Zoom)
ZoomImage-InformationsAnother picture of the Earth photographed from the ISS. .
Height = 400 km; 35mm focal length f = 28 mm; Aspect Ratio 3:2; Line Spacing 48,91 km
Original image with EXIF Informations
(Click: Zoom)
ZoomImage-InformationsAnother picture of the Earth photographed from the ISS. .
Height = 400 km; 35mm focal length f = 28 mm; Aspect Ratio 3:2; Line Spacing 48,91 km
Original image with EXIF Informations
  • Swap Images
  • With Grid
  • Without Grid

Pictures taken from a Rocket Flight

Here are some screen shots taken from the video: GoPro Awards: On a Rocket Launch to Space, which was recorded with a GoPro4 camera with a fish eye lens. I applied the lens correction of Adobe Lightroom to it and after that the images fit perfectly to the calculated grid:

(Click: Zoom)
ZoomImage-InformationsImage 1
(Click: Zoom)
ZoomImage-InformationsImage 2
(Click: Zoom)
ZoomImage-InformationsImage 3

Height = 120 km, Focal Length: f = 18 mm, Camera GoPro4

The horizon has exactly the same curvature on all images at every position after applying the lens correction.

The Horizon is not at Eye Level

Flat-Earther claim that the horizon is always at eye level, which it would be if the earth were flat. The definition of eye-level is that a line from the eye of the observer to a distant point at the same height forms exactly a 90° angle to the vertical at the observer. The distant horizon of a Flat-Earth would apparently reach to the eye-level and thus form a 90° angle.

A dip-angle from eye-level to the real horizon can not be estimated with the naked eye, since a corresponding reference is missing on the horizon. Just looking straight at the horizon and claiming that it is at eye level, so forms exactly a 90° angle to the vertical, is a false claim. This is true approximately for low altitudes only. In an aircraft at an altitude of 11 km, the horizon drops 3,36° (see DipAngle in the Curvature App). This is a clear drop, but not recognisable with the naked eye because there is no reference.

The following photo was taken with the Theodolite App with an iPhone. The aircraft flew at an altitude of 33 709 ft, as noted in the picture at the top/center. The iPhone was aligned so that the crosshair shows eye-level on the horizon. This is the case when the ELEVATION ANGLE shows 0.

Image-InformationsComparison of the effective horizon line with eye-level in an airplane. .
Height = 10,275 km; 35mm focal lengt f = 33,9 mm; Aspect Ratio: 16:9; LineSpacing 8,035 km; Original Image
Image-InformationsComparison of the effective horizon line with eye-level in an airplane. .
Height = 10,275 km; 35mm focal lengt f = 33,9 mm; Aspect Ratio: 16:9; LineSpacing 8,035 km; Original Image
  • Swap Images
  • With Grid
  • Without Grid

The calculation results in a dip angle of 3,252°. The horizon is 20,53 km below Eye-Level and is at a distance of 361,6 km. The overlayed grid lines have a spacing of 8,035 km. These values are all calculated by the Curvature App.

I did not take the picture myself but found it at BlogSpot. There is a copy of it on my website. I own the app Theodolite on my iPhone and I know how it works. I calculated the focal length of the iPhone by measuring the angle of view, which I could do with the app. The calculated angle of view of about 65° for the diagonal coincides with data on the Internet. It corresponds to a 35mm focal length of 33,9 mm.

The values: Height = 10,275 km, angle of view 65° and display aspect ratio 16:9 I entered in the simulation. Then I cut out the simulation image along the black frame, scaled it to the same size as the photo and overlayed them with the blending mode multiply. As you can see, the calculated image fits exactly to the photo and shows exactly where the horizon of the Earth is with respect to Eye-Level. Note that a very slight curvature is barely visible on the grid but because of the haze at the horizon not as visible on the photo.

How to observe the horizon drop with a simple home made tool is shown in the following video: Horizon Drop at Varying Altitudes. Flat-Earth Debunked. from madmelon101.

Overhead Displays show Eye-Level

(Click: Zoom)
ZoomImage-InformationsRockwell Collins’ Head-up Guidance System (HGS™) incorporates critical flight information into the pilot's field of vision and provides flight path support at all stages of the flight. Source: Rockwell Collins; With kind permission

Airplanes can be equipped with overhead displays. These displays are pushed between the pilot and the front window. When the pilot looks out of the window through this glass screen, he can see all critical flight informations like artificial horizon, speed, altitude, vertical speed, heading, even the runway, and also the terrain like on a night vision device. It is remarkable that the displayed graphics moves in sync with the head movement of the pilot. It looks like the graphics are projected onto the terrain.

If the aircraft is now cruising at high altitudes, in the image at 39 000 ft, the real horizon lies about 3,5° below the eye level due to the earths curvature. The display projects a horizontal line at eye-level into the scene. In the picture you can clearly see the distance between the eye-level line and the real horizon.

The stylized airplane in the display shows the effective flight direction. In the picture, the symbol lies on the horizontal eye-level line, which means that the aircraft neither climbs nor descends. It is located to the left of the center, which means that the aircraft does not fly straight ahead but is pushed sideways to the left from the wind (see arrow on the top left). The aircraft must correct for this deviation by pointing the nose into the wind according the arrow, so that it does not miss the destination. The autopilot automatically performs this correction.

 More evidence the Horizon does not remain at eye level as you gain altitude. for an explanation from a pilot.


1wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 3/8/2017 | 17:50

Influence of atmospheric Refraction

The line of sight to the horizon is rarely a straight line as assumed by the simple formulas, but is curved downwards due to the temperature and pressure changes of the atmosphere near the ground (refraction). This means that you can see much further than the calculations with the straight line suggests.

In extreme cases, e.g. if warm air is above cold water the refraction can lead the light hundreds of kilometers along the water surface! The result is that the earth is seemingly flat.

Source Wikipedia: https://en.wikipedia.org/wiki/Horizon#Effect_of_atmospheric_refraction

This fact has been known for centuries among land surveyors and seafarers.

Note: You can trust your eyes only at short distances. Over large distances, the light path through the atmosphere is disturbed in an unpredictable way. It's nothing like it seems!

Occlusion due to earth curvature with refraction

In the excellent video FLAT EARTH - EXPERIMENT - TELESCOPE from 01.08.2016 the author Alex Chertnik shows how to measure and document measurements with the telescope over water the right way. He measures over three similar distances on different days and at different times of the day, how much of 4 about 300 m high chimneys is hidden by the curvature of the earth.

In contrast to all flat-earth videos he considers the refraction in his calculations. His measurements correspond exactly to the calculations for a globe earth with a radius of 6371 km, taking into account the standard refraction.

The video shows clearly how the image wobbles and flickers due to the fluctuations of the refraction, and that the Horzont is not a clear horizontal line, but shows wavy distortions. These waves come only to a small extent from the water itself, but arise through the refraction. The occlusion fluctuates by many meters due to these refraction waves.

Note: the refraction directly above water can be much higher than the standard 7%!

The video proves very clearly that the earth must be a ball.

2Gerard Frensen 6/13/2017 | 23:32

Great site, very informative, very well done! Thanks for this great work


3Kelly White 7/19/2017 | 14:34

YouTube channel Kelly White
Excellent tool and information. I'm just having a comment conversation with someone who doesn't quite understand this, but your tool will really help. Thanks!

4Stephen hansen 7/19/2017 | 21:33

Very interesting Walter. You have a amazing mind.

5Rory 8/13/2017 | 09:40

This is awesome. :-)

6Herr Gnorts 8/14/2017 | 17:09

Super, das!

Aber kann ich irgendwo ablesen, wie *weit* der Horizont ist, links nach rechts?

7Risto 8/15/2017 | 18:34

Excellent work! Could it be possible to adjust the refraction parameter as well?

8Phil Laj 8/16/2017 | 01:33

It's a nice job and it's very impressive but I don't like how the yaw also gets lower and lower as the altitude rises. :'(

Going up in a vertical elevator/balloon in real life wouldn't look like that, re-think about that part because the rest is top notch! :D

9wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 8/17/2017 | 20:42

Phil, choose option HorizView = Eye-Lvl to keep eye-level at the same position.

Herr Gnorts: siehe das neue Feld im Computed Values Panel DisplHorWith.

Risto: Refraction is now implemented, see Refraction Panel and some of the new Animations.

10Everett Anderson 9/4/2017 | 18:37

Refraction can sometimes have the reverse effect of making objects in the distance seem lower than they actually are. The phenomena is called "sinking", and it can sometimes actually cause distant objects to disappear behind the horizon when they actually don't. Flat Earthers have actually cited this as the explanation for ships disappearing beyond the horizon and the towers in Soundly's videos curving downward. How should rational people respond to this claim?

11wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 9/5/2017 | 21:53

@Everett Anderson

Refraction and Sinking

To produce Sinking instead of Raising, compared to Standard-Refraction, the atmosphere must have a steeper lapse rate than normal. Laps rate is the negative Temperature-Gradient dT/dh. However, there isn't much room to play with: the Standard Atmosphere already has a lapse rate of 6,5°C/km, but convection limits lapse rates in the free atmosphere to about 10°C/km. For Refraction to be 0 the lapse rate on Standard Atmosphere should be 34,3°C/km. To bend light upward it has to be even greater, which can only accour in thin layers. To get a temperature decrease of more than 34,4°/km you must have a hot surface with a layer of cold air above. Such conditions produce heavy distortions and mirages of differend kind rather than only Sinking, because the air is instable.

Because the density of undisturbed air increases with decreasing altitude light is generally bent only downwards. Only specific changes of temperature gradients near the surface can locally change the density gradient in such a way that distorted and mirrored layers and some Sinking may appear. On most images we see already streching and mirroring at the lowest layer even when the overall image is still lowered by the average Refraction. These distortions are caused by small layers of cold air above warm surfaces.

More Informations: Looming, Towering, Stooping, and Sinking

12indio007 9/5/2017 | 15:08

This sim has a fundamental flaw.
What you can see is limited to the aperture through which the light passes.
Where is that calculation?

I should also say refraction values is a wild guess at best. For a simple reason. There is an assumption of linearity. This is a misplaced and provably wrong assumption.

13wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 9/5/2017 | 19:31


No Aperture in the Curvature App

Quote: What you can see is limited to the aperture through which the light passes. Where is that calculation?

First, Aperture does not limit or influence which part of a scene is depiced on the sensor. The loss of light when closing the aperture is compensated by longer exposure and higher ISO values. You see the exact same thing. With aperture you can influence the Depth of field.

So Aperture does not change the shapes or even the relative positions of objects in a scene. Look at the Animations and then look at the real images I linked above the App when an animation is choosen. Simulations of the Globe Earth and the images match, but the Flat Earth simulation does not match at all. And the simulated situations are taken from videos Flat Earthers provided, by the way.

Second: The App does not simulate a real camera, only the projection part of 3D objects to the focal plane of a camera, without aperture, exposure times and ISO settings. In such a projection there is no such thing as Aperture, as in a drawing there is no such thing as aperture. But the computed 2D image from 3D objects is accurate.

Refraction derived from linearized Model

Quote: I should also say refraction values is a wild guess at best. For a simple reason. There is an assumption of linearity. This is a misplaced and provably wrong assumption.

It is not assumed that the density gradient of the atmosphere is linear in reality. But on sufficiently small scales, systems can always be approximated as linear (like the globe earth can be approximated as a flat plane on small scales). Linear approximations are the normal way most mathematical models of physical systems are derived. Its an application of calculus and results in differential equations that can than be applied on any (nonlinear) situation, within the limits the model is intended for.

So the math of how atmospheric layers bend light rays can be derived from a linearized model and this math can then also be applied to real nonlinear systems. Why is that so? Because a mathematical model is universal. It maps an input (density gradient) to an output (bending of light). You can derive the mapping function from linearized systems. But you are not restricted to use it only on linear density gradients. It also works on any gradient, because the math model is a representation of the real physical system and can be used to predict the outcome of any input.

That is true for all derived physical laws. E.g. Newtons law of gravity is not only applicable to simple linear systems but are universal, as long as gravity is not too strong and the speeds involved are much slower than the speed of light. Physicists know this limitations and know that Relativity must be applied on those conditions.

Please read my 2. paragraph of What is Refraction?. There I explain why and how average values, derived from many, many real measurments by surveyors, may be applied to get the average overall effect of Refraction. You can always approximate a real physical system by a simplified average version, superimposed by perturbations. The perturbations are often smaller than the simplified part and do only slightly perturbate the outcome. We see that in real images where Refraction takes place. The overall image of an object may be raised by the average part of Refraction but then some parts of it are streched, compressed or mirrored atop of it.

My App simulates only an undisturbed average Refraction, because you would have to provide me with the real atmospheric conditions (which change all the time) from the observer to the object for each light ray, so you can never get this data anyway. But the undisturbed approximation suffice to get the concept. A mountain is raised by the calculated amount of Refraction whether its image is disturbed or not.

If you want see simulations of Refraction with complicated density gradients, see Introduction to Superior-Mirage Simulations.

14Priyadi 9/21/2017 | 21:20

may I suggest a feature request? it would be nice to have the ability to have permalink to the simulation, with all parameters embedded in URL, maybe as a long JSON string in a URL parameter. or if that's not possible, the ability to copy or save all parameters in a JSON string.

15wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 9/26/2017 | 01:32


This features are now implemented. See Save/Restore Panel below the App Window.

  • You can save the App State in Json Format
  • You can create an URL that restores the App State
  • You can restore the App State from Json or Url Format
  • You can auto-start a Demo by appending &demo=Name to the Url, where Name is the Text of a Demo Button, e.g. Curve

Check this out here:



16Grahame Rathbone 10/18/2017 | 23:52

Awesome work, Walter.

I was fumbling around with geogebra just to make simple views and had to give up a few times.
Your interactive model is brilliant.

17Grahame Rathbone 10/19/2017 | 15:01

By the way, an idea: What about another that shows the relative sizes of the Earth and moon using distance and lens focal length, libration, eclipses, INCLUDING the specular aspect of it's surface - phases and the illumination of the moon from an angle almost right behind us...?

18George Hnatiuk 10/24/2017 | 21:44

Just came across your site. Upon first look it appears to be well done. I will look at it more critically in the days to come. I have also engaged in refraction theory and made many measurements / observations with a theodolite total station (Topcon GTS-3C) in varying atmospheric conditions and will check over your work.

Seems like you put together a worthwhile blog.
George Hnatiuk

19Grahame Rathbone 11/16/2017 | 13:13


It would be VERY useful to be able to pass created demonstration diagrams in a url...
So the diagram parameters are ready and presented when someone visits...

20Michael Dunlavey 11/16/2017 | 17:39

This is a beautiful app. Nice job. (Is there a pause button I didn't see?)

Regarding horizon dip angle, it's not necessary to have an eye-level reference if opposite horizons can be seen at the same time. If a straightedge can be pointed at one horizon, it will point above the opposite horizon with twice the dip angle. This could be done with two small mirrors mounted on adjoining faces of a cube, with the whole thing mounted on a ruler. Then you just take a picture looking at the mirrors. I haven't built it. Of course there are plenty of other ways to determine "level", like a line between the tops of opposite windows in an aircraft cabin. (I'm sure the theodolite app is the simplest, but I like low-tech :)

21wabiswalter@bislins.ch (Walter Bislin, Author of this Page) 11/16/2017 | 20:06

Grahame, It would be VERY useful to be able to pass created demonstration diagrams in a url...

You can do this in the panel Save/Restore. Use the button Get App Url. Then copy the generated url into eg YouTube comments. Clicking this url will open the App and restore the corresponding state.

Note: you can also copy such an url into the text field in this panel and click Set App State. The button Get App State gives the currect state in an editable json format. You can change values and add text in DemoText and Description. Than click Set App State to show this state. Use Get App Url again to get the url with added text.

Do start an animation via an url to this page, simply add &demo=xxx where xxx is the name of the demo button.

Your Comment to this Article
Email optional; wird nicht angezeigt
  • Name is displayed on your Comment.
  • Email is only for the Admin, will not be displayed.
  • You can edit or delete your Comment for some Time.
  • You can use Comment Formatings, eg Codes, Formulas...
  • External Links and Pictures will not be displayed, until enabled by the Admin.
Weitere Infos zur Seite
Erzeugt Monday, November 06, 2017
von wabis
Zum Seitenanfang
Geändert Monday, November 13, 2017
von wabis