|
|
Hi(gh)!
Finally, I managed to re-code Melody's smooth triangle macro in a way
that avoids the abysmally slow double nested loop (details and code see
p.t.s-f) - now generating a 3601 by 3601 mesh2 takes 2 hours instead of
200 days!
The origin of the elevation data is the Advanced Spaceborne Thermal
Emission and Reflection Radiometer (ASTER) aboard the US-Japanese
"Terra" satellite, which conducted an Earth surveying missions in 2009.
The basic link is https://asterweb.jpl.nasa.gov/gdem.asp, however, the
set-up of the data archive has changed much since I downloaded the data
ten years ago. Meanwhile, an improved dataset (less artifacts) has been
published, but I have no clue how to access it...
Back then, elevation data tiles came as GeoTIFF files, each one covered
an area of 1 square degree at a resolution of 3601 by 3601 measuring
points counted from south to north and from west to east. The
northernmost row and the easternmost column of values are identical to
the first row and column of the respective adjacent tile.
As this is the first version of the dataset, some gaps were still
present; the 3DEM visualization software (download:
https://freegeographytools.com/3dem_setup.exe) comes with an
interpolation tool to fill these gaps. Be warned: only with small gaps
up to a few dozens of missing points this works really satisfactory,
larger gaps will result in artifacts like north-east trending terrain
structures. Probably I'll still have to download the newer dataset in
the future...
Using the 3DEM software, I generated ASCII data matrices from them.
These text files contain elevation data rounded to 1 metre (in the very
most cases), with two digits accuracy (which is mostly just .00), each
separated by (mostly) one blank space.
To get these files readable with POV-Ray, I had to replace all these
decimal points, zeroes and black spaces by a single comma. As a Linux
user, I did this using a sequence of several sed commands:
swcorner=$1
sed 's/.[0-9][0-9] /,/g' $swcorner".txt" > $swcorner"_pov.txt"
sed 's/ //g' $swcorner"_pov.txt" > $swcorner".txt"
sed 's/,,/,/g' $swcorner".txt" > $swcorner"_pov.txt"
mv -f $swcorner"_pov.txt" $swcorner".txt"
with $swcorner being the geographic coordinates of the south-western
corner of each ASCII data tile, such as n80e014, being also the file
name of the tile.
From these ASCII tiles processed for use with POV-Ray, I generated
red/green 16bit heightfields using a POV-Ray script (see p.t.s-f).
Originally, I did the conversion directly from ASCII text matrix to
mesh2 object, but I as also want to produce mesh2s from joined and cut
ASTER tiles, I resorted to this graphic step inbetween.
The next step is to generate the mesh2 object, readily with smoothed
triangles (also see details on p.t.s-f), which results in huge .inc
files of 1.5 to 3 gigabytes.
Finally, the scene proper is rendered with my standard "POVEarth" script
from 2013. Textures are gleaned from the highest-resolution NASA Blue
Marble mosaics (July 2004 version), each one 240 by 240 pixels (in the
future, this may change, as nowadays LANDSAT tiles at 1200 by 1200
pixels per square degree are available), however, as Blue Marble does
not cover areas beyond 80°N properly, I have to improvise.
Much later on, there may more detailed bitmap textures even for these
high Arctic regions derived from ground photos...
For the time being, neither bathymetry (the ocean is just an uniform
basin some 500 metres deep) nor sea ice cover is taken into account -
this also may change in the future.
Also at the moment, the sky is a simple blue sky_sphere; real atmosphere
and night sky will be added in the not-too-distant future, later on also
cloud cover derived from real current data.
I now start rendering all 8000+ terrain tiles and presenting them here,
tile by tile, simultaneously, I'll set up a new 2-terabyte webspace
under the domain www.povearth.de to make the mesh2 "earth slices" and
textures available to the international POV-Ray community - as I want to
see POVEarth GROW and FLOURISH! I want to see you populating these
barren terrain slices with vegetation, rivers, roads and buildings, also
people, animals, vehicles, just literally everything that belongs to
real Earth!
After this intial stage of generating and rendering terrain slices in
the first place is through, I'll focus on detailing my favourite places
on Earth - Afghanistan (i. e. POVghanistan) and Cologne.
A later development also could be a real-time interactive version of
POVEarth, programmed in X3D...
###
Here now my first rendered terrain tile: Moffen Island, a tiny speck of
land north of Spitsbergen (n80e014), due to its lowness, it is not
glaciated, but contains a huge lagoon which makes it look somewhat like
an Arctic atoll. The lagoon with its inner island was not really visible
in the original ASTER data, so I had to manually cut it out after a
schematic map of Moffen Island on Wikipedia.
More on Moffen Island: https://en.wikipedia.org/wiki/Moffen, see also
the Wikimedia Commons entries for photos.
The first image attached here shows Moffen in an overhead view from 17
kms altitude; the second one shows the island in an oblique view from
south, at 1.7 kms above the sea; the third one is the same, but with a
"sailor's view" only 5 metres above sea level; in the fourth one, the
camera is placed at "pedestrian height" (1.7 metres) on the eastern rim
of the lagoon, looking west; the fifth one is a view from the northern
of two hills on the island to the southern one, also at "pedestrian height".
Each rendering took about 5 minutes on an AMD FX-6200 six-core machine
with 24 GiB of RAM.
Any suggestions for improvements are welcome!
...er, any walrus model ready?
See you in Khyberspace!
Yadgar
Post a reply to this message
Attachments:
Download '2020-04-02 povearth, svalbard, moffen island, take 21 - view from 17 km above ground.jpg' (18 KB)
Download '2020-04-02 povearth, svalbard, moffen island, take 22 - view from south, 1.7 km above ground.jpg' (101 KB)
Download '2020-04-02 povearth, svalbard, moffen island, take 23 - 'sailor's view' from south, 5 metres above ground.jpg' (111 KB)
Download '2020-04-02 povearth, svalbard, moffen island, take 24 - view from east across lagoon, 1.7 metres above ground.jpg' (88 KB)
Download '2020-04-02 povearth, svalbard, moffen island, take 25 - view from northern hill to southern hill, 1.7 metres above groun' (17 KB)
Preview of image '2020-04-02 povearth, svalbard, moffen island, take 21 - view from 17 km above ground.jpg'
Preview of image '2020-04-02 povearth, svalbard, moffen island, take 22 - view from south, 1.7 km above ground.jpg'
Preview of image '2020-04-02 povearth, svalbard, moffen island, take 23 - 'sailor's view' from south, 5 metres above ground.jpg'
Preview of image '2020-04-02 povearth, svalbard, moffen island, take 24 - view from east across lagoon, 1.7 metres above ground.jpg'
Preview of image '2020-04-02 povearth, svalbard, moffen island, take 25 - view from northern hill to southern hill, 1.7 metres above groun'
|
|