Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <title>Hello World!</title>
- <script src="Cesium/Cesium.js"></script>
- <style>
- @import url(Cesium/Widgets/widgets.css);
- #cesiumContainer {
- position: absolute;
- top: 0;
- left: 0;
- height: 100%;
- width: 100%;
- margin: 0;
- overflow: hidden;
- padding: 0;
- font-family: sans-serif;
- }
- body {
- padding: 0;
- margin: 0;
- overflow: hidden;
- }
- </style>
- </head>
- <body>
- <div id="cesiumContainer"></div>
- <script>
- var cesiumWidget = new Cesium.CesiumWidget('cesiumContainer');
- var terrainProvider = new Cesium.CesiumTerrainProvider({
- url : 'http://cesiumjs.org/smallterrain'
- });
- cesiumWidget.centralBody.terrainProvider = terrainProvider;
- // *** ADD A MODEL TO THE SCENE ***
- var ellipsoid = cesiumWidget.centralBody.getEllipsoid();
- var rotateX = Cesium.Matrix4.fromRotationTranslation(Cesium.Matrix3.fromRotationX(Cesium.Math.toRadians(90.0)), Cesium.Cartesian3.ZERO);
- var modelMatrix = Cesium.Matrix4.multiply(Cesium.Transforms.eastNorthUpToFixedFrame(ellipsoid.cartographicToCartesian(Cesium.Cartographic.fromDegrees(14.281782, 40.858374, 0.0))), rotateX);
- var scene = cesiumWidget.scene;
- var model = scene.getPrimitives().add(Cesium.Model.fromGltf({
- url : './duck/duck.json',
- modelMatrix : modelMatrix,
- scale : 1.0,
- debugWireframe : false,
- allowPicking : false,
- debugShowBoundingVolume : false
- }));
- model.readyToRender.addEventListener(function(model) {
- statistics = Cesium.gltfStatistics(model.gltf);
- console.log(statistics);
- var worldBoundingSphere = model.computeWorldBoundingSphere();
- var center = worldBoundingSphere.center;
- var transform = Cesium.Transforms.eastNorthUpToFixedFrame(center);
- // View in east-north-up frame
- var camera = scene.getCamera();
- camera.transform = transform;
- camera.controller.constrainedAxis = Cesium.Cartesian3.UNIT_Z;
- var controller = scene.getScreenSpaceCameraController();
- controller.setEllipsoid(Cesium.Ellipsoid.UNIT_SPHERE);
- controller.enableTilt = false;
- // Zoom in
- camera.controller.lookAt(
- new Cesium.Cartesian3(0.0, -worldBoundingSphere.radius * 0.25, worldBoundingSphere.radius * 2.0),
- Cesium.Cartesian3.ZERO,
- Cesium.Cartesian3.UNIT_Z);
- });
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement