Advertisement
Axevid

czmlloader

Jun 6th, 2013
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5.04 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta http-equiv="expires" content="0">
  5. <script>
  6. function refreshAt(hours, minutes, seconds) {
  7.     var now = new Date();
  8.     var then = new Date();
  9.  
  10.     if(now.getHours() > hours ||
  11.        (now.getHours() == hours && now.getMinutes() > minutes) ||
  12.        now.getHours() == hours && now.getMinutes() == minutes && now.getSeconds() >= seconds) {
  13.        then.setDate(now.getDate() + 1);
  14.     }
  15.     then.setHours(hours);
  16.     then.setMinutes(minutes);
  17.     then.setSeconds(seconds);
  18.  
  19.     var timeout = (then.getTime() - now.getTime());
  20.     setTimeout(function() { window.location.reload(true); }, timeout);
  21. }
  22. refreshAt(22,0,0);
  23. </script>
  24. <meta charset="utf-8">
  25.  
  26. <!-- Use Chrome Frame in IE -->
  27. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  28.  
  29. <!-- Make the application take up the full browser screen and disable user scaling-->
  30. <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">
  31.  
  32. <title>Cesium Viewer</title>
  33. <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
  34. <link rel="stylesheet" href="Cesium/Widgets/CesiumWidget/CesiumWidget.css" media="screen">
  35. <link rel="stylesheet" href="Cesium/Widgets/Animation/Animation.css" media="screen">
  36. <link rel="stylesheet" href="Cesium/Widgets/SceneModePicker/SceneModePicker.css" media="screen">
  37. <link rel="stylesheet" href="Cesium/Widgets/Timeline/Timeline.css" media="screen">
  38. <link rel="stylesheet" href="Cesium/Widgets/Widgets.css" media="screen">
  39.  
  40.  
  41. <!-- <script data-dojo-config="async:1,tlmSiblingOfDojo:0" src="../../../ThirdParty/dojo-release-1.8.3-src/dojo/dojo.js"></script> -->
  42. <script src="Cesium/Cesium.js"></script>
  43. <!-- <script src="/Cesium-full-b16/Source/Scene/Scene.js"></script> -->
  44.  
  45.  
  46. </head>
  47. <body class="claro" style="background: #000;">
  48.    
  49.     <div id="cesiumContainer" class="fullWindow"></div>
  50.     <div id="animationContainer" style="position: absolute; bottom: 0; left: 0; padding: 0; width: 169px; height: 112px"></div>
  51.     <div id="timelineContainer" style="position: absolute; bottom: 0; left: 169px; right: 29px; height: 27px; padding: 0; margin: 0; overflow: hidden; font-size: 14px;"></div>
  52.     <div id="sceneModePickerContainer" style="position: absolute; top: 5px; right: 10px; padding: 0; width: 30px; height: 30px"></div>
  53.  
  54.    
  55.    
  56.  
  57.     <script type="text/javascript">
  58.  
  59.     // var div = document.getElementById('cesiumContainer');
  60.     // var canvas = document.getElementById('cesiumCanvas');
  61.     // canvas.width = div.scrollWidth;
  62.     // canvas.height = div.scrollHeight;
  63.  
  64.     var widget = new Cesium.CesiumWidget('cesiumContainer');
  65.     var scene = widget.scene
  66.     // scene.sun = new Sun();
  67.     var objects = new Cesium.DynamicObjectCollection();
  68.     var visualizers = Cesium.VisualizerCollection.createCzmlStandardCollection(scene, objects);
  69.    
  70.  
  71.     // initialize clock
  72.  
  73.     var currentTime = new Cesium.JulianDate();
  74.     var clock = new Cesium.Clock({
  75.         startTime : currentTime.addDays(-0.5),
  76.         stopTime : currentTime.addDays(0.5),
  77.         currentTime : currentTime,
  78.         clockStep : Cesium.ClockStep.SYSTEM_CLOCK_DEPENDENT,
  79.         multiplier: 1
  80.     });
  81.    
  82.     widget.clock = clock
  83.     // var animationController = new Cesium.AnimationController(clock);
  84.    
  85.     var clockViewModel = new Cesium.ClockViewModel(clock);
  86.     var viewModel = new Cesium.AnimationViewModel(clockViewModel);
  87.     var animwidget = new Cesium.Animation('animationContainer', viewModel);
  88.     var timelineWidget = new Cesium.Timeline('timelineContainer', clock)
  89.    
  90.    
  91.      
  92.    
  93.    
  94.     // scene = new Cesium.Scene("cesiumContainer");
  95.  
  96.     var czmlfile = "ess.czml";
  97.     function processScenario(file) {
  98.         Cesium.loadJson(file).then(function(czml) {
  99.             Cesium.processCzml(czml, objects, file);
  100.             var availability = objects.computeAvailability();
  101.             clock.startTime = availability.start;
  102.             clock.stopTime = availability.stop;
  103.             clock.clockRange = Cesium.ClockRange.LOOP;
  104.             clock.currentTime = currentTime;
  105.             // animationController.play();
  106.         }, function (e) {
  107.             console.error(e);
  108.         });
  109.     }
  110.     function tick() {
  111.         currentTime = widget.clock.tick()
  112.         visualizers.update(currentTime);
  113.         scene.initializeFrame();
  114.         // animate();        
  115.         scene.render(currentTime);
  116.         // if (scene.mode == Cesium.SceneMode.SCENE3D)
  117.         // {
  118.         //     scene.getCamera().controller.rotateLeft(.001);    
  119.         // }        
  120.         Cesium.requestAnimationFrame(tick);
  121.     }
  122.  
  123.     // function tick() {
  124.     //     clock.tick();
  125.     //     Cesium.requestAnimationFrame(tick);
  126.     // }
  127.     // Cesium.requestAnimationFrame(tick);
  128.     // processScenario(czmlfile);
  129.     var transitioner = new Cesium.SceneTransitioner(scene);
  130.     var sceneModePicker = new Cesium.SceneModePicker('sceneModePickerContainer', transitioner);
  131.  
  132.     tick();
  133.     </script>
  134.  
  135. </body>
  136. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement