Edited
helvetiX: An XR guide to Helvetia
The ancient Romans had accurate maps of Europe, but no navigation devices yet. helevetiX now provides one.
4th century Romans travelling to foreign countries had accurate road maps of the Roman Empire. One of those Roman road maps has been preserved and today is known as "Tabula Peutingeriana" (Latin for "The Peutinger Map", from one of its former owners, Konrad Peutinger, a 16th-century German humanist and antiquarian in Augsburg). The map resembles modern bus or subway maps and shows all major settlements and the distances between them, a feature which makes it a predecessor of modern navigation systems.
The Peutinger Map is an illustrated itinerarium (ancient Roman road map) showing the layout of the cursus publicus, the road network of the Roman Empire. The map is a 13th-century parchment copy of a (possible) Roman original and is now conserved at the Austrian National Library in Vienna. It covers Europe (without the Iberian Peninsula and the British Isles), North Africa, and parts of Asia, including the Middle East, Persia, and India.
Tabula Peutingeriana, 1-4th century CE. Facsimile edition by Konrad Miller, 1887/1888
Today, HTML and its geolocation API provide a lightweight, yet powerful tool to precisely locate any device all over the world. Modern maps, open data DEMs (digital elevation models) and Extended Reality frameworks can be combined in order to create virtual worlds (see last year's Swiss Open Cultural Data Hackathon project swissAR) and geographical information systems.
helvetiX aims at providing an immersive Virtual Reality guide for any Roman merchant or legionary when travelling to ancient Helvetia. (In Latin, of course.)
Pratobornum (Zermatt), 1047 double steps away: Screenshot from the helvetiX prototype.
Instructions
Launch helvetix.thomasweibel.ch in your web browser or point your smartphone camera to the QR code.
- Desktop: Navigate by dragging the landscape to the desired direction.
- Smartphone: Confirm both motion sensor access and GPS positioning, then turn around.
Contact author
Back to current position
1000 double steps up/down
1000 double steps forward
Data
opendata.swiss: Digital elevation model
opendata.swiss: Map of Switzerland
opendata.swiss: Official place name directory
opendata.swiss: Toponymy data
Objects
Switzerland in 3D (1:1 scale, low resolution, glb format, 24.3 MB, download)
Switzerland in 3D (1:1 scale, high resolution, glb format, 113.4 MB, download)
3D model of Switzerland, on a 1:1 scale, based on a 200 meter grid, in glb format. (Source: Swiss Federal Office of Topography swisstopo)
Documents
swisstopo.ch: Transformations- und Rechendienste
swisstopo.ch: Näherungsformeln für die Transformation zwischen Schweizer Projektionskoordinaten und WGS84
Wikipedia: Schweizer Landeskoordinaten
Wikipedia: Alte Maße und Gewichte (römische Antike)
Conversions
Decimal degrees to Swiss coordinates
The HTML 5 geolocation API returns user coordinates in decimal degrees. In order to use the Swiss coordinate system (either in the LV03 or the LV95 format) these coordinates have to be converted by
if (navigator.geolocation) { // ask for user permission to retrieve user location
navigator.geolocation.getCurrentPosition(function(position) { // callback function success, set coords to user location
var b1=position.coords.latitude∗3600; // calculate swiss coords
var l1=position.coords.longitude∗3600;
var b2=(b1-169028.66)/10000;
var l2=(l1-26782.5)/10000;
var n=200147.07+308807.95∗b2+3745.25∗Math.pow(l2,2)+76.63∗Math.pow(b2,2)+119.79∗Math.pow(b2,3)-194.56∗Math.pow(l2,2)∗b2;
n+=1000000; // omit if using LV03 format
var e=600072.37+211455.93∗l2-10938.51∗l2∗b2-0.36∗l2∗Math.pow(b2,2)-44.54∗Math.pow(l2,3);
e+=2000000; // omit if using LV03 format
}, function () { // callback function error
...
});
}
(Source, p. 3.)
Integers to Roman Numerals
Integers (Math.round(num)>0
, as there is no zero in the ancient Roman numeral system) can be converted to Roman numerals byfunction romanize(num) {
if (isNaN(num/1.48176))
return NaN;
var digits=String(+num).split(""),
key=["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM",
"","X","XX","XXX","XL","L","LX","LXX","LXXX","XC",
"","I","II","III","IV","V","VI","VII","VIII","IX"],
roman="",
i=3;
while (i--) roman=(key[+digits.pop()+(i*10)] || "")+roman;
numeral=Array(+digits.join("")+1).join("M")+roman;
}
(Source)
About
helvetiX derives from swisspeaX, a web VR project providing geographical information (place names, hills and mountain peaks, rivers and lakes) based on the user's current location and heading. The aim of the project is to provide a web VR platform for displaying any type of spatial, Swiss geography-related GLAM information.
Tech
The project has been built by means of the Javascript framework A-Frame. It uses a flat-file database; all geographical names and spatial data are stored in external Javascript array files.
Team
- Thomas Weibel
- Roberta Padlina
Contact
Thomas Weibel
Realpstr. 55
4054 Basel
www.thomasweibel.ch
thomas.weibel@bluewin.ch