Advertisement
Guest User

CesiumJS Bug

a guest
Feb 7th, 2014
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 5 2.60 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.   <title>Hello World!</title>
  5.   <script src="Cesium/Cesium.js"></script>
  6.   <style>
  7.       @import url(Cesium/Widgets/widgets.css);
  8.  
  9.       #cesiumContainer {
  10.           position: absolute;
  11.           top: 0;
  12.           left: 0;
  13.           height: 100%;
  14.           width: 100%;
  15.           margin: 0;
  16.           overflow: hidden;
  17.           padding: 0;
  18.           font-family: sans-serif;
  19.       }
  20.  
  21.       body {
  22.           padding: 0;
  23.           margin: 0;
  24.           overflow: hidden;
  25.       }
  26.   </style>
  27. </head>
  28. <body>
  29.   <div id="cesiumContainer"></div>
  30.   <script>
  31.     var cesiumWidget = new Cesium.CesiumWidget('cesiumContainer');
  32.    
  33.     var terrainProvider = new Cesium.CesiumTerrainProvider({
  34.       url : 'http://cesiumjs.org/smallterrain'
  35.     });
  36.     cesiumWidget.centralBody.terrainProvider = terrainProvider;
  37.    
  38.     // *** ADD A MODEL TO THE SCENE ***
  39.     var ellipsoid = cesiumWidget.centralBody.getEllipsoid();
  40.     var rotateX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationX(Cesium.Math.toRadians(90.0)), Cesium.Cartesian3.ZERO);
  41.     var modelMatrix = Cesium.Matrix4.multiply(Cesium.Transforms.eastNorthUpToFixedFrame(ellipsoid.cartographicToCartesian(Cesium.Cartographic.fromDegrees(14.281782, 40.858374, 0.0))), rotateX);
  42.  
  43.     var scene = cesiumWidget.scene;
  44.    
  45.     var model = scene.getPrimitives().add(Cesium.Model.fromGltf({
  46.         url : './duck/duck.json',
  47.         modelMatrix : modelMatrix,
  48.         scale : 1.0,
  49.         debugWireframe : false,
  50.         allowPicking : false,
  51.         debugShowBoundingVolume : false
  52.     }));
  53.    
  54.     model.readyToRender.addEventListener(function(model) {
  55.    
  56.         statistics = Cesium.gltfStatistics(model.gltf);
  57.         console.log(statistics);
  58.        
  59.         var worldBoundingSphere = model.computeWorldBoundingSphere();
  60.         var center = worldBoundingSphere.center;
  61.         var transform = Cesium.Transforms.eastNorthUpToFixedFrame(center);
  62.  
  63.         // View in east-north-up frame
  64.         var camera = scene.getCamera();
  65.         camera.transform = transform;
  66.         camera.controller.constrainedAxis = Cesium.Cartesian3.UNIT_Z;
  67.  
  68.         var controller = scene.getScreenSpaceCameraController();
  69.         controller.setEllipsoid(Cesium.Ellipsoid.UNIT_SPHERE);
  70.         controller.enableTilt = false;
  71.  
  72.         // Zoom in
  73.         camera.controller.lookAt(
  74.             new Cesium.Cartesian3(0.0, -worldBoundingSphere.radius * 0.25, worldBoundingSphere.radius * 2.0),
  75.             Cesium.Cartesian3.ZERO,
  76.             Cesium.Cartesian3.UNIT_Z);
  77.     });
  78.    
  79.   </script>
  80. </body>
  81. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement