Guest User

Polyline Sandcastle Example edited

a guest
Dec 19th, 2013
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. require(['Cesium'], function(Cesium) {
  2.     "use strict";
  3.    
  4.     var viewer = new Cesium.Viewer('cesiumContainer');
  5.     var scene = viewer.scene;
  6.     var primitives = scene.getPrimitives();
  7.     var ellipsoid = viewer.centralBody.getEllipsoid();
  8.          
  9.    
  10.     var FS ="varying vec4 v_color;\n" +
  11.             "void main() {\n" +
  12.             "   vec4 outputColor = v_color;\n" +
  13.             "   if (outputColor.a > 0.5) {\n" +
  14.             "       outputColor.a = 0.0;\n" +
  15.             "   } else {\n" +
  16.             "       outputColor.a = 1.0;\n" +
  17.             "   }\n" +
  18.             "   gl_FragColor = outputColor;\n" +
  19.             "}\n";
  20.    
  21.     var positions = [];
  22.     var colors = [];
  23.     for (var i = 0; i < 10; ++i) {
  24.         positions.push(ellipsoid.cartographicToCartesian(Cesium.Cartographic.fromDegrees(-100.0 + i, 35.0)));
  25.         colors.push(new Cesium.Color(0.0, 0.5, 1.0, i));
  26.     }
  27.    
  28.     var prim = new Cesium.Primitive({
  29.         geometryInstances : new Cesium.GeometryInstance({
  30.             geometry : new Cesium.PolylineGeometry({
  31.                 positions : positions,
  32.                 width : 10.0,
  33.                 vertexFormat : Cesium.PolylineColorAppearance.VERTEX_FORMAT,
  34.                 colors : colors
  35.             })
  36.         }),
  37.         appearance : new Cesium.PolylineColorAppearance()
  38.     });
  39.    
  40.     prim.appearance.fragmentShaderSource = FS;
  41.  
  42.     primitives.add(prim);
  43.    
  44.     Sandcastle.finishedLoading();
  45. });
Advertisement
Add Comment
Please, Sign In to add comment