<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Geodetic Velocities</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=RobotoDraft:400,500,700,400italic">
<link rel="stylesheet" href="css/vis.css">
<script>
/**
 * The Geodetic Velocities visualization makes use of the Google Maps API to
 * provide an interactive map for exploring the data. To use the Google Maps
 * API, you need an API key.
 *
 * Instructions for getting a key can be found here:
 * https://developers.google.com/maps/documentation/javascript/get-api-key#key
 *
 * Once you have your key, paste it into the variable below.
 */
var apiKey = '';

document.write('<script src="https://maps.google.com/maps/api/js?key=' +
    apiKey + '"></' + 'script>');
</script>
</head>
<body>
<script src="third_party/js/d3/d3-3.5.11.js"></script>
<script src="third_party/js/topojson/topojson-1.6.19.js"></script>
<script src="third_party/js/dat.gui/dat.gui.js"></script>
<script src="third_party/js/three.js/three.js"></script>
<script src="third_party/js/three.js/stats.min.js"></script>
<script src="js/settings.js"></script>
<script src="js/data.js"></script>
<script src="js/web-mercator.js"></script>
<script src="js/map.js"></script>
<script src="js/beacon-vertex-texture.js"></script>
<script src="js/line-shader-material.js"></script>
<script src="js/overlay.js"></script>
<script src="js/controls.js"></script>
<script src="js/timerange.js"></script>
<script src="js/app.js"></script>
<script>geovelo.vis = new geovelo.Visualization(document.body);</script>
</body>
</html>
