cesium 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE.md +259 -0
- data/README.rdoc +90 -0
- data/Rakefile +40 -0
- data/app/assets/javascripts/Assets/Assets.profile.js +8 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_0.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_1.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_10.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_11.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_12.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_13.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_14.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_15.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_16.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_17.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_18.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_19.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_2.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_20.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_21.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_22.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_23.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_24.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_25.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_26.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_27.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_3.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_4.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_5.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_6.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_7.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_8.json +1 -0
- data/app/assets/javascripts/Assets/IAU2006_XYS/IAU2006_XYS_9.json +1 -0
- data/app/assets/javascripts/Assets/Textures/NE2_LR_LC_SR_W_DR_2048.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_mx.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_my.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_mz.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_px.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_py.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/SkyBox/tycho2t3_80_pz.jpg +0 -0
- data/app/assets/javascripts/Assets/Textures/waterNormals.jpg +0 -0
- data/app/assets/javascripts/Assets/package.json +6 -0
- data/app/assets/javascripts/Cesium.js +320 -0
- data/app/assets/javascripts/Core/AnimationController.js +148 -0
- data/app/assets/javascripts/Core/AxisAlignedBoundingBox.js +243 -0
- data/app/assets/javascripts/Core/BoundingRectangle.js +364 -0
- data/app/assets/javascripts/Core/BoundingSphere.js +819 -0
- data/app/assets/javascripts/Core/BoxTessellator.js +93 -0
- data/app/assets/javascripts/Core/Cartesian2.js +762 -0
- data/app/assets/javascripts/Core/Cartesian3.js +861 -0
- data/app/assets/javascripts/Core/Cartesian4.js +762 -0
- data/app/assets/javascripts/Core/Cartographic.js +211 -0
- data/app/assets/javascripts/Core/CatmullRomSpline.js +232 -0
- data/app/assets/javascripts/Core/Clock.js +195 -0
- data/app/assets/javascripts/Core/ClockRange.js +37 -0
- data/app/assets/javascripts/Core/ClockStep.js +32 -0
- data/app/assets/javascripts/Core/Color.js +1629 -0
- data/app/assets/javascripts/Core/ComponentDatatype.js +119 -0
- data/app/assets/javascripts/Core/Core.profile.js +8 -0
- data/app/assets/javascripts/Core/CubeMapEllipsoidTessellator.js +198 -0
- data/app/assets/javascripts/Core/CubicRealPolynomial.js +251 -0
- data/app/assets/javascripts/Core/DefaultProxy.js +30 -0
- data/app/assets/javascripts/Core/DeveloperError.js +60 -0
- data/app/assets/javascripts/Core/EarthOrientationParameters.js +383 -0
- data/app/assets/javascripts/Core/EarthOrientationParametersSample.js +50 -0
- data/app/assets/javascripts/Core/Ellipsoid.js +539 -0
- data/app/assets/javascripts/Core/EllipsoidTangentPlane.js +207 -0
- data/app/assets/javascripts/Core/EllipsoidalOccluder.js +151 -0
- data/app/assets/javascripts/Core/EncodedCartesian3.js +197 -0
- data/app/assets/javascripts/Core/Enumeration.js +67 -0
- data/app/assets/javascripts/Core/Event.js +122 -0
- data/app/assets/javascripts/Core/Extent.js +383 -0
- data/app/assets/javascripts/Core/ExtentTessellator.js +384 -0
- data/app/assets/javascripts/Core/FAR.js +13 -0
- data/app/assets/javascripts/Core/FeatureDetection.js +126 -0
- data/app/assets/javascripts/Core/Fullscreen.js +235 -0
- data/app/assets/javascripts/Core/GeographicProjection.js +107 -0
- data/app/assets/javascripts/Core/HermitePolynomialApproximation.js +176 -0
- data/app/assets/javascripts/Core/HermiteSpline.js +234 -0
- data/app/assets/javascripts/Core/Iau2006XysData.js +259 -0
- data/app/assets/javascripts/Core/Iau2006XysSample.js +36 -0
- data/app/assets/javascripts/Core/IndexDatatype.js +28 -0
- data/app/assets/javascripts/Core/Intersect.js +40 -0
- data/app/assets/javascripts/Core/IntersectionTests.js +359 -0
- data/app/assets/javascripts/Core/Interval.js +27 -0
- data/app/assets/javascripts/Core/Iso8601.js +46 -0
- data/app/assets/javascripts/Core/JulianDate.js +1228 -0
- data/app/assets/javascripts/Core/KeyboardEventModifier.js +38 -0
- data/app/assets/javascripts/Core/LagrangePolynomialApproximation.js +96 -0
- data/app/assets/javascripts/Core/LeapSecond.js +158 -0
- data/app/assets/javascripts/Core/LinearApproximation.js +98 -0
- data/app/assets/javascripts/Core/Math.js +532 -0
- data/app/assets/javascripts/Core/Matrix2.js +833 -0
- data/app/assets/javascripts/Core/Matrix3.js +1099 -0
- data/app/assets/javascripts/Core/Matrix4.js +2164 -0
- data/app/assets/javascripts/Core/MeshFilters.js +568 -0
- data/app/assets/javascripts/Core/Occluder.js +474 -0
- data/app/assets/javascripts/Core/OrientationInterpolator.js +109 -0
- data/app/assets/javascripts/Core/PlaneTessellator.js +74 -0
- data/app/assets/javascripts/Core/PolygonPipeline.js +792 -0
- data/app/assets/javascripts/Core/PolylinePipeline.js +90 -0
- data/app/assets/javascripts/Core/PrimitiveType.js +80 -0
- data/app/assets/javascripts/Core/QuadraticRealPolynomial.js +146 -0
- data/app/assets/javascripts/Core/QuarticRealPolynomial.js +339 -0
- data/app/assets/javascripts/Core/Quaternion.js +947 -0
- data/app/assets/javascripts/Core/Queue.js +95 -0
- data/app/assets/javascripts/Core/Ray.js +64 -0
- data/app/assets/javascripts/Core/ReferenceFrame.js +25 -0
- data/app/assets/javascripts/Core/RequestErrorEvent.js +35 -0
- data/app/assets/javascripts/Core/RuntimeError.js +59 -0
- data/app/assets/javascripts/Core/ScreenSpaceEventHandler.js +658 -0
- data/app/assets/javascripts/Core/ScreenSpaceEventType.js +149 -0
- data/app/assets/javascripts/Core/Shapes.js +230 -0
- data/app/assets/javascripts/Core/Spherical.js +192 -0
- data/app/assets/javascripts/Core/TaskProcessor.js +131 -0
- data/app/assets/javascripts/Core/TimeConstants.js +85 -0
- data/app/assets/javascripts/Core/TimeInterval.js +305 -0
- data/app/assets/javascripts/Core/TimeIntervalCollection.js +543 -0
- data/app/assets/javascripts/Core/TimeStandard.js +31 -0
- data/app/assets/javascripts/Core/Tipsify.js +285 -0
- data/app/assets/javascripts/Core/Transforms.js +614 -0
- data/app/assets/javascripts/Core/TridiagonalSystemSolver.js +102 -0
- data/app/assets/javascripts/Core/Visibility.js +38 -0
- data/app/assets/javascripts/Core/WebMercatorProjection.js +154 -0
- data/app/assets/javascripts/Core/WindingOrder.js +40 -0
- data/app/assets/javascripts/Core/binarySearch.js +69 -0
- data/app/assets/javascripts/Core/buildModuleUrl.js +77 -0
- data/app/assets/javascripts/Core/clone.js +21 -0
- data/app/assets/javascripts/Core/combine.js +81 -0
- data/app/assets/javascripts/Core/computeSunPosition.js +116 -0
- data/app/assets/javascripts/Core/createGuid.js +25 -0
- data/app/assets/javascripts/Core/defaultValue.js +22 -0
- data/app/assets/javascripts/Core/destroyObject.js +61 -0
- data/app/assets/javascripts/Core/freezeObject.js +20 -0
- data/app/assets/javascripts/Core/getImagePixels.js +46 -0
- data/app/assets/javascripts/Core/isLeapYear.js +30 -0
- data/app/assets/javascripts/Core/jsonp.js +116 -0
- data/app/assets/javascripts/Core/loadArrayBuffer.js +76 -0
- data/app/assets/javascripts/Core/loadImage.js +85 -0
- data/app/assets/javascripts/Core/loadJson.js +54 -0
- data/app/assets/javascripts/Core/loadText.js +78 -0
- data/app/assets/javascripts/Core/loadXML.js +76 -0
- data/app/assets/javascripts/Core/package.json +6 -0
- data/app/assets/javascripts/Core/pointInsideTriangle2D.js +41 -0
- data/app/assets/javascripts/Core/requestAnimationFrame.js +61 -0
- data/app/assets/javascripts/Core/throttleRequestByServer.js +74 -0
- data/app/assets/javascripts/Core/writeTextToCanvas.js +92 -0
- data/app/assets/javascripts/DynamicScene/CompositeDynamicObjectCollection.js +254 -0
- data/app/assets/javascripts/DynamicScene/CzmlBoolean.js +57 -0
- data/app/assets/javascripts/DynamicScene/CzmlCartesian2.js +96 -0
- data/app/assets/javascripts/DynamicScene/CzmlCartesian3.js +99 -0
- data/app/assets/javascripts/DynamicScene/CzmlCartographic.js +125 -0
- data/app/assets/javascripts/DynamicScene/CzmlColor.js +127 -0
- data/app/assets/javascripts/DynamicScene/CzmlDefaults.js +135 -0
- data/app/assets/javascripts/DynamicScene/CzmlHorizontalOrigin.js +59 -0
- data/app/assets/javascripts/DynamicScene/CzmlImage.js +61 -0
- data/app/assets/javascripts/DynamicScene/CzmlLabelStyle.js +59 -0
- data/app/assets/javascripts/DynamicScene/CzmlNumber.js +82 -0
- data/app/assets/javascripts/DynamicScene/CzmlString.js +56 -0
- data/app/assets/javascripts/DynamicScene/CzmlUnitCartesian3.js +99 -0
- data/app/assets/javascripts/DynamicScene/CzmlUnitQuaternion.js +172 -0
- data/app/assets/javascripts/DynamicScene/CzmlUnitSpherical.js +98 -0
- data/app/assets/javascripts/DynamicScene/CzmlVerticalOrigin.js +59 -0
- data/app/assets/javascripts/DynamicScene/DynamicBillboard.js +245 -0
- data/app/assets/javascripts/DynamicScene/DynamicBillboardVisualizer.js +347 -0
- data/app/assets/javascripts/DynamicScene/DynamicColorMaterial.js +78 -0
- data/app/assets/javascripts/DynamicScene/DynamicCone.js +291 -0
- data/app/assets/javascripts/DynamicScene/DynamicConeVisualizer.js +350 -0
- data/app/assets/javascripts/DynamicScene/DynamicConeVisualizerUsingCustomSensor.js +389 -0
- data/app/assets/javascripts/DynamicScene/DynamicDirectionsProperty.js +163 -0
- data/app/assets/javascripts/DynamicScene/DynamicEllipsoid.js +158 -0
- data/app/assets/javascripts/DynamicScene/DynamicEllipsoidVisualizer.js +277 -0
- data/app/assets/javascripts/DynamicScene/DynamicImageMaterial.js +136 -0
- data/app/assets/javascripts/DynamicScene/DynamicLabel.js +286 -0
- data/app/assets/javascripts/DynamicScene/DynamicLabelVisualizer.js +341 -0
- data/app/assets/javascripts/DynamicScene/DynamicMaterialProperty.js +125 -0
- data/app/assets/javascripts/DynamicScene/DynamicObject.js +364 -0
- data/app/assets/javascripts/DynamicScene/DynamicObjectCollection.js +137 -0
- data/app/assets/javascripts/DynamicScene/DynamicObjectView.js +299 -0
- data/app/assets/javascripts/DynamicScene/DynamicPath.js +214 -0
- data/app/assets/javascripts/DynamicScene/DynamicPathVisualizer.js +402 -0
- data/app/assets/javascripts/DynamicScene/DynamicPoint.js +184 -0
- data/app/assets/javascripts/DynamicScene/DynamicPointVisualizer.js +323 -0
- data/app/assets/javascripts/DynamicScene/DynamicPolygon.js +138 -0
- data/app/assets/javascripts/DynamicScene/DynamicPolygonVisualizer.js +251 -0
- data/app/assets/javascripts/DynamicScene/DynamicPolyline.js +183 -0
- data/app/assets/javascripts/DynamicScene/DynamicPolylineVisualizer.js +268 -0
- data/app/assets/javascripts/DynamicScene/DynamicPositionProperty.js +525 -0
- data/app/assets/javascripts/DynamicScene/DynamicProperty.js +352 -0
- data/app/assets/javascripts/DynamicScene/DynamicPyramid.js +204 -0
- data/app/assets/javascripts/DynamicScene/DynamicPyramidVisualizer.js +302 -0
- data/app/assets/javascripts/DynamicScene/DynamicScene.profile.js +8 -0
- data/app/assets/javascripts/DynamicScene/DynamicVertexPositionsProperty.js +199 -0
- data/app/assets/javascripts/DynamicScene/ReferenceProperty.js +155 -0
- data/app/assets/javascripts/DynamicScene/VisualizerCollection.js +181 -0
- data/app/assets/javascripts/DynamicScene/package.json +6 -0
- data/app/assets/javascripts/DynamicScene/processCzml.js +77 -0
- data/app/assets/javascripts/Renderer/BlendEquation.js +52 -0
- data/app/assets/javascripts/Renderer/BlendFunction.js +158 -0
- data/app/assets/javascripts/Renderer/BlendingState.js +64 -0
- data/app/assets/javascripts/Renderer/Buffer.js +141 -0
- data/app/assets/javascripts/Renderer/BufferUsage.js +48 -0
- data/app/assets/javascripts/Renderer/ClearCommand.js +40 -0
- data/app/assets/javascripts/Renderer/CommandLists.js +42 -0
- data/app/assets/javascripts/Renderer/Context.js +2805 -0
- data/app/assets/javascripts/Renderer/CubeMap.js +358 -0
- data/app/assets/javascripts/Renderer/CubeMapFace.js +202 -0
- data/app/assets/javascripts/Renderer/CullFace.js +50 -0
- data/app/assets/javascripts/Renderer/DepthFunction.js +95 -0
- data/app/assets/javascripts/Renderer/DrawCommand.js +96 -0
- data/app/assets/javascripts/Renderer/Framebuffer.js +435 -0
- data/app/assets/javascripts/Renderer/MipmapHint.js +50 -0
- data/app/assets/javascripts/Renderer/PickFramebuffer.js +178 -0
- data/app/assets/javascripts/Renderer/PixelDatatype.js +86 -0
- data/app/assets/javascripts/Renderer/PixelFormat.js +113 -0
- data/app/assets/javascripts/Renderer/Renderbuffer.js +102 -0
- data/app/assets/javascripts/Renderer/RenderbufferFormat.js +77 -0
- data/app/assets/javascripts/Renderer/Renderer.profile.js +8 -0
- data/app/assets/javascripts/Renderer/ShaderCache.js +121 -0
- data/app/assets/javascripts/Renderer/ShaderProgram.js +2402 -0
- data/app/assets/javascripts/Renderer/StencilFunction.js +95 -0
- data/app/assets/javascripts/Renderer/StencilOperation.js +95 -0
- data/app/assets/javascripts/Renderer/Texture.js +395 -0
- data/app/assets/javascripts/Renderer/TextureAtlas.js +472 -0
- data/app/assets/javascripts/Renderer/TextureAtlasBuilder.js +133 -0
- data/app/assets/javascripts/Renderer/TextureMagnificationFilter.js +41 -0
- data/app/assets/javascripts/Renderer/TextureMinificationFilter.js +77 -0
- data/app/assets/javascripts/Renderer/TextureWrap.js +50 -0
- data/app/assets/javascripts/Renderer/UniformDatatype.js +218 -0
- data/app/assets/javascripts/Renderer/UniformState.js +799 -0
- data/app/assets/javascripts/Renderer/VertexArray.js +365 -0
- data/app/assets/javascripts/Renderer/VertexArrayFacade.js +574 -0
- data/app/assets/javascripts/Renderer/VertexLayout.js +49 -0
- data/app/assets/javascripts/Renderer/loadCubeMap.js +92 -0
- data/app/assets/javascripts/Renderer/package.json +6 -0
- data/app/assets/javascripts/Scene/AnimationCollection.js +249 -0
- data/app/assets/javascripts/Scene/ArcGisMapServerImageryProvider.js +384 -0
- data/app/assets/javascripts/Scene/Billboard.js +680 -0
- data/app/assets/javascripts/Scene/BillboardCollection.js +1209 -0
- data/app/assets/javascripts/Scene/BingMapsImageryProvider.js +460 -0
- data/app/assets/javascripts/Scene/BingMapsStyle.js +55 -0
- data/app/assets/javascripts/Scene/Camera.js +358 -0
- data/app/assets/javascripts/Scene/CameraColumbusViewMode.js +30 -0
- data/app/assets/javascripts/Scene/CameraController.js +1258 -0
- data/app/assets/javascripts/Scene/CameraEventAggregator.js +270 -0
- data/app/assets/javascripts/Scene/CameraEventType.js +53 -0
- data/app/assets/javascripts/Scene/CameraFlightPath.js +495 -0
- data/app/assets/javascripts/Scene/CentralBody.js +817 -0
- data/app/assets/javascripts/Scene/CentralBodySurface.js +1120 -0
- data/app/assets/javascripts/Scene/CentralBodySurfaceShaderSet.js +107 -0
- data/app/assets/javascripts/Scene/ComplexConicSensorVolume.js +511 -0
- data/app/assets/javascripts/Scene/CompositePrimitive.js +454 -0
- data/app/assets/javascripts/Scene/CullingVolume.js +59 -0
- data/app/assets/javascripts/Scene/CustomSensorVolume.js +440 -0
- data/app/assets/javascripts/Scene/DiscardMissingTileImagePolicy.js +134 -0
- data/app/assets/javascripts/Scene/EllipsoidPrimitive.js +412 -0
- data/app/assets/javascripts/Scene/EllipsoidTerrainProvider.js +182 -0
- data/app/assets/javascripts/Scene/FrameState.js +86 -0
- data/app/assets/javascripts/Scene/FrustumCommands.js +32 -0
- data/app/assets/javascripts/Scene/GeographicTilingScheme.js +265 -0
- data/app/assets/javascripts/Scene/HorizontalOrigin.js +39 -0
- data/app/assets/javascripts/Scene/Imagery.js +85 -0
- data/app/assets/javascripts/Scene/ImageryLayer.js +876 -0
- data/app/assets/javascripts/Scene/ImageryLayerCollection.js +403 -0
- data/app/assets/javascripts/Scene/ImageryProvider.js +185 -0
- data/app/assets/javascripts/Scene/ImageryProviderError.js +149 -0
- data/app/assets/javascripts/Scene/ImageryState.js +20 -0
- data/app/assets/javascripts/Scene/Label.js +706 -0
- data/app/assets/javascripts/Scene/LabelCollection.js +697 -0
- data/app/assets/javascripts/Scene/LabelStyle.js +39 -0
- data/app/assets/javascripts/Scene/Material.js +1177 -0
- data/app/assets/javascripts/Scene/NeverTileDiscardPolicy.js +38 -0
- data/app/assets/javascripts/Scene/OpenStreetMapImageryProvider.js +282 -0
- data/app/assets/javascripts/Scene/OrthographicFrustum.js +345 -0
- data/app/assets/javascripts/Scene/PerformanceDisplay.js +183 -0
- data/app/assets/javascripts/Scene/PerspectiveFrustum.js +239 -0
- data/app/assets/javascripts/Scene/PerspectiveOffCenterFrustum.js +394 -0
- data/app/assets/javascripts/Scene/Polygon.js +886 -0
- data/app/assets/javascripts/Scene/Polyline.js +441 -0
- data/app/assets/javascripts/Scene/PolylineCollection.js +1532 -0
- data/app/assets/javascripts/Scene/Projections.js +93 -0
- data/app/assets/javascripts/Scene/RectangularPyramidSensorVolume.js +224 -0
- data/app/assets/javascripts/Scene/Scene.js +632 -0
- data/app/assets/javascripts/Scene/Scene.profile.js +8 -0
- data/app/assets/javascripts/Scene/SceneMode.js +51 -0
- data/app/assets/javascripts/Scene/SceneTransitioner.js +776 -0
- data/app/assets/javascripts/Scene/ScreenSpaceCameraController.js +1063 -0
- data/app/assets/javascripts/Scene/SensorVolumeCollection.js +192 -0
- data/app/assets/javascripts/Scene/SingleTileImageryProvider.js +295 -0
- data/app/assets/javascripts/Scene/SkyAtmosphere.js +239 -0
- data/app/assets/javascripts/Scene/SkyBox.js +231 -0
- data/app/assets/javascripts/Scene/TerrainProvider.js +229 -0
- data/app/assets/javascripts/Scene/TexturePool.js +154 -0
- data/app/assets/javascripts/Scene/Tile.js +322 -0
- data/app/assets/javascripts/Scene/TileDiscardPolicy.js +42 -0
- data/app/assets/javascripts/Scene/TileImagery.js +36 -0
- data/app/assets/javascripts/Scene/TileLoadQueue.js +123 -0
- data/app/assets/javascripts/Scene/TileMapServiceImageryProvider.js +337 -0
- data/app/assets/javascripts/Scene/TileReplacementQueue.js +139 -0
- data/app/assets/javascripts/Scene/TileState.js +19 -0
- data/app/assets/javascripts/Scene/TilingScheme.js +213 -0
- data/app/assets/javascripts/Scene/VerticalOrigin.js +39 -0
- data/app/assets/javascripts/Scene/ViewportQuad.js +256 -0
- data/app/assets/javascripts/Scene/WebMapServiceImageryProvider.js +374 -0
- data/app/assets/javascripts/Scene/WebMercatorTilingScheme.js +291 -0
- data/app/assets/javascripts/Scene/package.json +6 -0
- data/app/assets/javascripts/Shaders/BillboardCollectionFS.glsl +30 -0
- data/app/assets/javascripts/Shaders/BillboardCollectionFS.js +31 -0
- data/app/assets/javascripts/Shaders/BillboardCollectionVS.glsl +68 -0
- data/app/assets/javascripts/Shaders/BillboardCollectionVS.js +54 -0
- data/app/assets/javascripts/Shaders/BuiltinFunctions.glsl +927 -0
- data/app/assets/javascripts/Shaders/BuiltinFunctions.js +322 -0
- data/app/assets/javascripts/Shaders/CentralBodyFS.glsl +106 -0
- data/app/assets/javascripts/Shaders/CentralBodyFS.js +82 -0
- data/app/assets/javascripts/Shaders/CentralBodyFSDepth.glsl +20 -0
- data/app/assets/javascripts/Shaders/CentralBodyFSDepth.js +22 -0
- data/app/assets/javascripts/Shaders/CentralBodyFSPole.glsl +29 -0
- data/app/assets/javascripts/Shaders/CentralBodyFSPole.js +28 -0
- data/app/assets/javascripts/Shaders/CentralBodyVS.glsl +88 -0
- data/app/assets/javascripts/Shaders/CentralBodyVS.js +69 -0
- data/app/assets/javascripts/Shaders/CentralBodyVSDepth.glsl +9 -0
- data/app/assets/javascripts/Shaders/CentralBodyVSDepth.js +13 -0
- data/app/assets/javascripts/Shaders/CentralBodyVSPole.glsl +12 -0
- data/app/assets/javascripts/Shaders/CentralBodyVSPole.js +15 -0
- data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeFS.glsl +448 -0
- data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeFS.js +361 -0
- data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeVS.glsl +19 -0
- data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeVS.js +20 -0
- data/app/assets/javascripts/Shaders/ConstructiveSolidGeometry.glsl +886 -0
- data/app/assets/javascripts/Shaders/ConstructiveSolidGeometry.js +586 -0
- data/app/assets/javascripts/Shaders/CustomSensorVolumeFS.glsl +126 -0
- data/app/assets/javascripts/Shaders/CustomSensorVolumeFS.js +95 -0
- data/app/assets/javascripts/Shaders/CustomSensorVolumeVS.glsl +14 -0
- data/app/assets/javascripts/Shaders/CustomSensorVolumeVS.js +18 -0
- data/app/assets/javascripts/Shaders/EllipsoidFS.glsl +40 -0
- data/app/assets/javascripts/Shaders/EllipsoidFS.js +38 -0
- data/app/assets/javascripts/Shaders/EllipsoidVS.glsl +26 -0
- data/app/assets/javascripts/Shaders/EllipsoidVS.js +16 -0
- data/app/assets/javascripts/Shaders/Materials/AsphaltMaterial.glsl +25 -0
- data/app/assets/javascripts/Shaders/Materials/AsphaltMaterial.js +23 -0
- data/app/assets/javascripts/Shaders/Materials/BlobMaterial.glsl +18 -0
- data/app/assets/javascripts/Shaders/Materials/BlobMaterial.js +19 -0
- data/app/assets/javascripts/Shaders/Materials/BrickMaterial.glsl +42 -0
- data/app/assets/javascripts/Shaders/Materials/BrickMaterial.js +36 -0
- data/app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl +29 -0
- data/app/assets/javascripts/Shaders/Materials/BumpMapMaterial.js +27 -0
- data/app/assets/javascripts/Shaders/Materials/CementMaterial.glsl +19 -0
- data/app/assets/javascripts/Shaders/Materials/CementMaterial.js +20 -0
- data/app/assets/javascripts/Shaders/Materials/CheckerboardMaterial.glsl +38 -0
- data/app/assets/javascripts/Shaders/Materials/CheckerboardMaterial.js +32 -0
- data/app/assets/javascripts/Shaders/Materials/DotMaterial.glsl +17 -0
- data/app/assets/javascripts/Shaders/Materials/DotMaterial.js +18 -0
- data/app/assets/javascripts/Shaders/Materials/ErosionMaterial.glsl +23 -0
- data/app/assets/javascripts/Shaders/Materials/ErosionMaterial.js +24 -0
- data/app/assets/javascripts/Shaders/Materials/FacetMaterial.glsl +18 -0
- data/app/assets/javascripts/Shaders/Materials/FacetMaterial.js +19 -0
- data/app/assets/javascripts/Shaders/Materials/FresnelMaterial.glsl +12 -0
- data/app/assets/javascripts/Shaders/Materials/FresnelMaterial.js +15 -0
- data/app/assets/javascripts/Shaders/Materials/GrassMaterial.glsl +28 -0
- data/app/assets/javascripts/Shaders/Materials/GrassMaterial.js +26 -0
- data/app/assets/javascripts/Shaders/Materials/NormalMapMaterial.glsl +19 -0
- data/app/assets/javascripts/Shaders/Materials/NormalMapMaterial.js +21 -0
- data/app/assets/javascripts/Shaders/Materials/ReflectionMaterial.glsl +13 -0
- data/app/assets/javascripts/Shaders/Materials/ReflectionMaterial.js +16 -0
- data/app/assets/javascripts/Shaders/Materials/RefractionMaterial.glsl +14 -0
- data/app/assets/javascripts/Shaders/Materials/RefractionMaterial.js +17 -0
- data/app/assets/javascripts/Shaders/Materials/RimLightingMaterial.glsl +18 -0
- data/app/assets/javascripts/Shaders/Materials/RimLightingMaterial.js +19 -0
- data/app/assets/javascripts/Shaders/Materials/StripeMaterial.glsl +29 -0
- data/app/assets/javascripts/Shaders/Materials/StripeMaterial.js +26 -0
- data/app/assets/javascripts/Shaders/Materials/TieDyeMaterial.glsl +17 -0
- data/app/assets/javascripts/Shaders/Materials/TieDyeMaterial.js +19 -0
- data/app/assets/javascripts/Shaders/Materials/Water.glsl +91 -0
- data/app/assets/javascripts/Shaders/Materials/Water.js +60 -0
- data/app/assets/javascripts/Shaders/Materials/WoodMaterial.glsl +36 -0
- data/app/assets/javascripts/Shaders/Materials/WoodMaterial.js +31 -0
- data/app/assets/javascripts/Shaders/Noise.glsl +453 -0
- data/app/assets/javascripts/Shaders/Noise.js +242 -0
- data/app/assets/javascripts/Shaders/PolygonFS.glsl +27 -0
- data/app/assets/javascripts/Shaders/PolygonFS.js +23 -0
- data/app/assets/javascripts/Shaders/PolygonFSPick.glsl +6 -0
- data/app/assets/javascripts/Shaders/PolygonFSPick.js +11 -0
- data/app/assets/javascripts/Shaders/PolygonVS.glsl +38 -0
- data/app/assets/javascripts/Shaders/PolygonVS.js +39 -0
- data/app/assets/javascripts/Shaders/PolygonVSPick.glsl +30 -0
- data/app/assets/javascripts/Shaders/PolygonVSPick.js +32 -0
- data/app/assets/javascripts/Shaders/PolylineFS.glsl +6 -0
- data/app/assets/javascripts/Shaders/PolylineFS.js +11 -0
- data/app/assets/javascripts/Shaders/PolylineVS.glsl +34 -0
- data/app/assets/javascripts/Shaders/PolylineVS.js +35 -0
- data/app/assets/javascripts/Shaders/Ray.glsl +532 -0
- data/app/assets/javascripts/Shaders/Ray.js +357 -0
- data/app/assets/javascripts/Shaders/ReprojectWebMercatorFS.glsl +26 -0
- data/app/assets/javascripts/Shaders/ReprojectWebMercatorFS.js +22 -0
- data/app/assets/javascripts/Shaders/ReprojectWebMercatorVS.glsl +11 -0
- data/app/assets/javascripts/Shaders/ReprojectWebMercatorVS.js +14 -0
- data/app/assets/javascripts/Shaders/SensorVolume.glsl +43 -0
- data/app/assets/javascripts/Shaders/SensorVolume.js +31 -0
- data/app/assets/javascripts/Shaders/Shaders.profile.js +8 -0
- data/app/assets/javascripts/Shaders/SkyAtmosphereFS.glsl +70 -0
- data/app/assets/javascripts/Shaders/SkyAtmosphereFS.js +62 -0
- data/app/assets/javascripts/Shaders/SkyAtmosphereVS.glsl +131 -0
- data/app/assets/javascripts/Shaders/SkyAtmosphereVS.js +115 -0
- data/app/assets/javascripts/Shaders/SkyBoxFS.glsl +10 -0
- data/app/assets/javascripts/Shaders/SkyBoxFS.js +14 -0
- data/app/assets/javascripts/Shaders/SkyBoxVS.glsl +10 -0
- data/app/assets/javascripts/Shaders/SkyBoxVS.js +14 -0
- data/app/assets/javascripts/Shaders/ViewportQuadFS.glsl +16 -0
- data/app/assets/javascripts/Shaders/ViewportQuadFS.js +17 -0
- data/app/assets/javascripts/Shaders/ViewportQuadVS.glsl +10 -0
- data/app/assets/javascripts/Shaders/ViewportQuadVS.js +14 -0
- data/app/assets/javascripts/Shaders/package.json +6 -0
- data/app/assets/javascripts/ThirdParty/ThirdParty.profile.js +8 -0
- data/app/assets/javascripts/ThirdParty/Tween.js +678 -0
- data/app/assets/javascripts/ThirdParty/Uri.js +277 -0
- data/app/assets/javascripts/ThirdParty/measureText.js +197 -0
- data/app/assets/javascripts/ThirdParty/package.json +6 -0
- data/app/assets/javascripts/ThirdParty/sprintf.js +319 -0
- data/app/assets/javascripts/ThirdParty/when.js +748 -0
- data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.css +175 -0
- data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.html +52 -0
- data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.js +1237 -0
- data/app/assets/javascripts/Widgets/Dojo/CesiumWidget.html +4 -0
- data/app/assets/javascripts/Widgets/Dojo/CesiumWidget.js +349 -0
- data/app/assets/javascripts/Widgets/Dojo/TimelineWidget.css +1 -0
- data/app/assets/javascripts/Widgets/Dojo/TimelineWidget.js +47 -0
- data/app/assets/javascripts/Widgets/Dojo/checkForChromeFrame.js +71 -0
- data/app/assets/javascripts/Widgets/Images/Bing_Logo_51x19_White.png +0 -0
- data/app/assets/javascripts/Widgets/Images/Cesium_Logo_overlay.png +0 -0
- data/app/assets/javascripts/Widgets/Images/TimelineIcons.png +0 -0
- data/app/assets/javascripts/Widgets/Images/ajax-loader.gif +0 -0
- data/app/assets/javascripts/Widgets/Images/animationBar.png +0 -0
- data/app/assets/javascripts/Widgets/Images/viewControlBar.png +0 -0
- data/app/assets/javascripts/Widgets/Timeline.css +113 -0
- data/app/assets/javascripts/Widgets/Timeline.js +629 -0
- data/app/assets/javascripts/Widgets/TimelineHighlightRange.js +51 -0
- data/app/assets/javascripts/Widgets/TimelineTrack.js +54 -0
- data/app/assets/javascripts/Widgets/Widgets.profile.js +8 -0
- data/app/assets/javascripts/Widgets/package.json +6 -0
- data/app/assets/javascripts/Workers/Workers.profile.js +8 -0
- data/app/assets/javascripts/Workers/cesiumWorkerBootstrapper.js +2015 -0
- data/app/assets/javascripts/Workers/createTaskProcessorWorker.js +55 -0
- data/app/assets/javascripts/Workers/createVerticesFromExtent.js +24 -0
- data/app/assets/javascripts/Workers/package.json +6 -0
- data/app/assets/javascripts/copyrightHeader.js +22 -0
- data/app/assets/javascripts/main.js +10 -0
- data/app/assets/stylesheets/cesium.css +4 -0
- data/app/controllers/cesium_controller.rb +4 -0
- data/app/helpers/cesium_helper.rb +2 -0
- data/app/views/cesium/index.html.erb +3 -0
- data/config/routes.rb +3 -0
- data/lib/cesium.rb +4 -0
- data/lib/cesium/engine.rb +4 -0
- data/lib/cesium/version.rb +3 -0
- data/lib/tasks/cesium_tasks.rake +4 -0
- data/test/cesium_test.rb +7 -0
- data/test/dummy/README.rdoc +261 -0
- data/test/dummy/Rakefile +7 -0
- data/test/dummy/app/assets/javascripts/adapters/jquery-adapter.js.coffee +4 -0
- data/test/dummy/app/assets/javascripts/app.js.coffee +11 -0
- data/test/dummy/app/assets/javascripts/application.js.coffee +73 -0
- data/test/dummy/app/assets/stylesheets/application.css +12 -0
- data/test/dummy/app/controllers/application_controller.rb +4 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/views/layouts/application.html.erb +21 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +59 -0
- data/test/dummy/config/boot.rb +10 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +37 -0
- data/test/dummy/config/environments/production.rb +67 -0
- data/test/dummy/config/environments/test.rb +37 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/inflections.rb +15 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +7 -0
- data/test/dummy/config/initializers/session_store.rb +8 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +5 -0
- data/test/dummy/config/requirejs.yml +10 -0
- data/test/dummy/config/routes.rb +3 -0
- data/test/dummy/public/404.html +26 -0
- data/test/dummy/public/422.html +26 -0
- data/test/dummy/public/500.html +25 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/script/rails +6 -0
- data/test/functional/cesium_controller_test.rb +9 -0
- data/test/integration/navigation_test.rb +10 -0
- data/test/test_helper.rb +15 -0
- data/test/unit/helpers/cesium_helper_test.rb +4 -0
- metadata +641 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform vec4 grassColor;\n\
|
|
6
|
+
uniform vec4 dirtColor;\n\
|
|
7
|
+
uniform float patchiness;\n\
|
|
8
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
9
|
+
{\n\
|
|
10
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
11
|
+
vec2 st = materialInput.st;\n\
|
|
12
|
+
float noise1 = (czm_snoise(st * patchiness * 1.0)) * 1.0;\n\
|
|
13
|
+
float noise2 = (czm_snoise(st * patchiness * 2.0)) * 0.5;\n\
|
|
14
|
+
float noise3 = (czm_snoise(st * patchiness * 4.0)) * 0.25;\n\
|
|
15
|
+
float noise = sin(noise1 + noise2 + noise3) * 0.1;\n\
|
|
16
|
+
vec4 color = mix(grassColor, dirtColor, noise);\n\
|
|
17
|
+
float verticalNoise = czm_snoise(vec2(st.x * 100.0, st.y * 20.0)) * 0.02;\n\
|
|
18
|
+
float horizontalNoise = czm_snoise(vec2(st.x * 20.0, st.y * 100.0)) * 0.02;\n\
|
|
19
|
+
float stripeNoise = min(verticalNoise, horizontalNoise);\n\
|
|
20
|
+
color.rgb += stripeNoise;\n\
|
|
21
|
+
material.diffuse = color.rgb;\n\
|
|
22
|
+
material.alpha = color.a;\n\
|
|
23
|
+
return material;\n\
|
|
24
|
+
}\n\
|
|
25
|
+
";
|
|
26
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
uniform sampler2D image;
|
|
2
|
+
uniform float strength;
|
|
3
|
+
uniform vec2 repeat;
|
|
4
|
+
|
|
5
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
6
|
+
{
|
|
7
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
8
|
+
|
|
9
|
+
vec4 textureValue = texture2D(image, fract(repeat * materialInput.st));
|
|
10
|
+
vec3 normalTangentSpace = textureValue.channels;
|
|
11
|
+
normalTangentSpace.xy = normalTangentSpace.xy * 2.0 - 1.0;
|
|
12
|
+
normalTangentSpace.z = clamp(1.0 - strength, 0.1, 1.0);
|
|
13
|
+
normalTangentSpace = normalize(normalTangentSpace);
|
|
14
|
+
vec3 normalEC = materialInput.tangentToEyeMatrix * normalTangentSpace;
|
|
15
|
+
|
|
16
|
+
material.normal = normalEC;
|
|
17
|
+
|
|
18
|
+
return material;
|
|
19
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform sampler2D image;\n\
|
|
6
|
+
uniform float strength;\n\
|
|
7
|
+
uniform vec2 repeat;\n\
|
|
8
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
9
|
+
{\n\
|
|
10
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
11
|
+
vec4 textureValue = texture2D(image, fract(repeat * materialInput.st));\n\
|
|
12
|
+
vec3 normalTangentSpace = textureValue.channels;\n\
|
|
13
|
+
normalTangentSpace.xy = normalTangentSpace.xy * 2.0 - 1.0;\n\
|
|
14
|
+
normalTangentSpace.z = clamp(1.0 - strength, 0.1, 1.0);\n\
|
|
15
|
+
normalTangentSpace = normalize(normalTangentSpace);\n\
|
|
16
|
+
vec3 normalEC = materialInput.tangentToEyeMatrix * normalTangentSpace;\n\
|
|
17
|
+
material.normal = normalEC;\n\
|
|
18
|
+
return material;\n\
|
|
19
|
+
}\n\
|
|
20
|
+
";
|
|
21
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
uniform samplerCube cubeMap;
|
|
2
|
+
|
|
3
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
4
|
+
{
|
|
5
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
6
|
+
|
|
7
|
+
vec3 normalWC = normalize(czm_inverseViewRotation * material.normal);
|
|
8
|
+
vec3 positionWC = normalize(czm_inverseViewRotation * materialInput.positionToEyeEC);
|
|
9
|
+
vec3 reflectedWC = reflect(positionWC, normalWC);
|
|
10
|
+
material.diffuse = textureCube(cubeMap, reflectedWC).channels;
|
|
11
|
+
|
|
12
|
+
return material;
|
|
13
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform samplerCube cubeMap;\n\
|
|
6
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
7
|
+
{\n\
|
|
8
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
9
|
+
vec3 normalWC = normalize(czm_inverseViewRotation * material.normal);\n\
|
|
10
|
+
vec3 positionWC = normalize(czm_inverseViewRotation * materialInput.positionToEyeEC);\n\
|
|
11
|
+
vec3 reflectedWC = reflect(positionWC, normalWC);\n\
|
|
12
|
+
material.diffuse = textureCube(cubeMap, reflectedWC).channels;\n\
|
|
13
|
+
return material;\n\
|
|
14
|
+
}\n\
|
|
15
|
+
";
|
|
16
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
uniform samplerCube cubeMap;
|
|
2
|
+
uniform float indexOfRefractionRatio;
|
|
3
|
+
|
|
4
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
5
|
+
{
|
|
6
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
7
|
+
|
|
8
|
+
vec3 normalWC = normalize(czm_inverseViewRotation * material.normal);
|
|
9
|
+
vec3 positionWC = normalize(czm_inverseViewRotation * materialInput.positionToEyeEC);
|
|
10
|
+
vec3 refractedWC = refract(positionWC, -normalWC, indexOfRefractionRatio);
|
|
11
|
+
material.diffuse = textureCube(cubeMap, refractedWC).channels;
|
|
12
|
+
|
|
13
|
+
return material;
|
|
14
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform samplerCube cubeMap;\n\
|
|
6
|
+
uniform float indexOfRefractionRatio;\n\
|
|
7
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
8
|
+
{\n\
|
|
9
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
10
|
+
vec3 normalWC = normalize(czm_inverseViewRotation * material.normal);\n\
|
|
11
|
+
vec3 positionWC = normalize(czm_inverseViewRotation * materialInput.positionToEyeEC);\n\
|
|
12
|
+
vec3 refractedWC = refract(positionWC, -normalWC, indexOfRefractionRatio);\n\
|
|
13
|
+
material.diffuse = textureCube(cubeMap, refractedWC).channels;\n\
|
|
14
|
+
return material;\n\
|
|
15
|
+
}\n\
|
|
16
|
+
";
|
|
17
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
uniform vec4 color;
|
|
2
|
+
uniform vec4 rimColor;
|
|
3
|
+
uniform float width;
|
|
4
|
+
|
|
5
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
6
|
+
{
|
|
7
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
8
|
+
|
|
9
|
+
// See http://www.fundza.com/rman_shaders/surface/fake_rim/fake_rim1.html
|
|
10
|
+
float d = 1.0 - dot(materialInput.normalEC, normalize(materialInput.positionToEyeEC));
|
|
11
|
+
float s = smoothstep(1.0 - width, 1.0, d);
|
|
12
|
+
|
|
13
|
+
material.diffuse = color.rgb;
|
|
14
|
+
material.emission = rimColor.rgb * s;
|
|
15
|
+
material.alpha = mix(color.a, rimColor.a, s);
|
|
16
|
+
|
|
17
|
+
return material;
|
|
18
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform vec4 color;\n\
|
|
6
|
+
uniform vec4 rimColor;\n\
|
|
7
|
+
uniform float width;\n\
|
|
8
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
9
|
+
{\n\
|
|
10
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
11
|
+
float d = 1.0 - dot(materialInput.normalEC, normalize(materialInput.positionToEyeEC));\n\
|
|
12
|
+
float s = smoothstep(1.0 - width, 1.0, d);\n\
|
|
13
|
+
material.diffuse = color.rgb;\n\
|
|
14
|
+
material.emission = rimColor.rgb * s;\n\
|
|
15
|
+
material.alpha = mix(color.a, rimColor.a, s);\n\
|
|
16
|
+
return material;\n\
|
|
17
|
+
}\n\
|
|
18
|
+
";
|
|
19
|
+
});
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
uniform vec4 lightColor;
|
|
2
|
+
uniform vec4 darkColor;
|
|
3
|
+
uniform float offset;
|
|
4
|
+
uniform float repeat;
|
|
5
|
+
uniform bool horizontal;
|
|
6
|
+
|
|
7
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
8
|
+
{
|
|
9
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
10
|
+
|
|
11
|
+
// Based on the Stripes Fragment Shader in the Orange Book (11.1.2)
|
|
12
|
+
// Fuzz Factor - Controls blurriness between light and dark colors
|
|
13
|
+
const float fuzz = 0.1;
|
|
14
|
+
|
|
15
|
+
float coord = mix(materialInput.st.s, materialInput.st.t, float(horizontal));
|
|
16
|
+
float value = fract((coord - offset) * (repeat * 0.5));
|
|
17
|
+
|
|
18
|
+
//anti-aliasing
|
|
19
|
+
float val1 = clamp(value / fuzz, 0.0, 1.0);
|
|
20
|
+
float val2 = clamp((value - 0.5) / fuzz, 0.0, 1.0);
|
|
21
|
+
val1 = val1 * (1.0 - val2);
|
|
22
|
+
val1 = val1 * val1 * (3.0 - (2.0 * val1));
|
|
23
|
+
|
|
24
|
+
vec4 color = mix(lightColor, darkColor, val1);
|
|
25
|
+
material.diffuse = color.rgb;
|
|
26
|
+
material.alpha = color.a;
|
|
27
|
+
|
|
28
|
+
return material;
|
|
29
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform vec4 lightColor;\n\
|
|
6
|
+
uniform vec4 darkColor;\n\
|
|
7
|
+
uniform float offset;\n\
|
|
8
|
+
uniform float repeat;\n\
|
|
9
|
+
uniform bool horizontal;\n\
|
|
10
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
11
|
+
{\n\
|
|
12
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
13
|
+
const float fuzz = 0.1;\n\
|
|
14
|
+
float coord = mix(materialInput.st.s, materialInput.st.t, float(horizontal));\n\
|
|
15
|
+
float value = fract((coord - offset) * (repeat * 0.5));\n\
|
|
16
|
+
float val1 = clamp(value / fuzz, 0.0, 1.0);\n\
|
|
17
|
+
float val2 = clamp((value - 0.5) / fuzz, 0.0, 1.0);\n\
|
|
18
|
+
val1 = val1 * (1.0 - val2);\n\
|
|
19
|
+
val1 = val1 * val1 * (3.0 - (2.0 * val1));\n\
|
|
20
|
+
vec4 color = mix(lightColor, darkColor, val1);\n\
|
|
21
|
+
material.diffuse = color.rgb;\n\
|
|
22
|
+
material.alpha = color.a;\n\
|
|
23
|
+
return material;\n\
|
|
24
|
+
}\n\
|
|
25
|
+
";
|
|
26
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
uniform vec4 lightColor;
|
|
2
|
+
uniform vec4 darkColor;
|
|
3
|
+
uniform float frequency;
|
|
4
|
+
|
|
5
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
6
|
+
{
|
|
7
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
8
|
+
|
|
9
|
+
vec3 scaled = materialInput.str * frequency;
|
|
10
|
+
float t = abs(czm_snoise(scaled));
|
|
11
|
+
|
|
12
|
+
vec4 color = mix(lightColor, darkColor, t);
|
|
13
|
+
material.diffuse = color.rgb;
|
|
14
|
+
material.alpha = color.a;
|
|
15
|
+
|
|
16
|
+
return material;
|
|
17
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform vec4 lightColor;\n\
|
|
6
|
+
uniform vec4 darkColor;\n\
|
|
7
|
+
uniform float frequency;\n\
|
|
8
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
9
|
+
{\n\
|
|
10
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
11
|
+
vec3 scaled = materialInput.str * frequency;\n\
|
|
12
|
+
float t = abs(czm_snoise(scaled));\n\
|
|
13
|
+
vec4 color = mix(lightColor, darkColor, t);\n\
|
|
14
|
+
material.diffuse = color.rgb;\n\
|
|
15
|
+
material.alpha = color.a;\n\
|
|
16
|
+
return material;\n\
|
|
17
|
+
}\n\
|
|
18
|
+
";
|
|
19
|
+
});
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
// Thanks for the contribution Jonas
|
|
2
|
+
// http://29a.ch/2012/7/19/webgl-terrain-rendering-water-fog
|
|
3
|
+
|
|
4
|
+
uniform sampler2D specularMap;
|
|
5
|
+
uniform sampler2D normalMap;
|
|
6
|
+
uniform vec4 baseWaterColor;
|
|
7
|
+
uniform vec4 blendColor;
|
|
8
|
+
uniform float frequency;
|
|
9
|
+
uniform float animationSpeed;
|
|
10
|
+
uniform float amplitude;
|
|
11
|
+
uniform float specularIntensity;
|
|
12
|
+
uniform float fadeFactor;
|
|
13
|
+
|
|
14
|
+
vec4 getNoise(vec2 uv, float time, float angleInRadians) {
|
|
15
|
+
|
|
16
|
+
float cosAngle = cos(angleInRadians);
|
|
17
|
+
float sinAngle = sin(angleInRadians);
|
|
18
|
+
|
|
19
|
+
// time dependent sampling directions
|
|
20
|
+
vec2 s0 = vec2(1.0/17.0, 0.0);
|
|
21
|
+
vec2 s1 = vec2(-1.0/29.0, 0.0);
|
|
22
|
+
vec2 s2 = vec2(1.0/101.0, 1.0/59.0);
|
|
23
|
+
vec2 s3 = vec2(-1.0/109.0, -1.0/57.0);
|
|
24
|
+
|
|
25
|
+
// rotate sampling direction by specified angle
|
|
26
|
+
s0 = vec2((cosAngle * s0.x) - (sinAngle * s0.y), (sinAngle * s0.x) + (cosAngle * s0.y));
|
|
27
|
+
s1 = vec2((cosAngle * s1.x) - (sinAngle * s1.y), (sinAngle * s1.x) + (cosAngle * s1.y));
|
|
28
|
+
s2 = vec2((cosAngle * s2.x) - (sinAngle * s2.y), (sinAngle * s2.x) + (cosAngle * s2.y));
|
|
29
|
+
s3 = vec2((cosAngle * s3.x) - (sinAngle * s3.y), (sinAngle * s3.x) + (cosAngle * s3.y));
|
|
30
|
+
|
|
31
|
+
vec2 uv0 = (uv/103.0) + (time * s0);
|
|
32
|
+
vec2 uv1 = uv/107.0 + (time * s1) + vec2(0.23);
|
|
33
|
+
vec2 uv2 = uv/vec2(897.0, 983.0) + (time * s2) + vec2(0.51);
|
|
34
|
+
vec2 uv3 = uv/vec2(991.0, 877.0) + (time * s3) + vec2(0.71);
|
|
35
|
+
|
|
36
|
+
uv0 = fract(uv0);
|
|
37
|
+
uv1 = fract(uv1);
|
|
38
|
+
uv2 = fract(uv2);
|
|
39
|
+
uv3 = fract(uv3);
|
|
40
|
+
vec4 noise = (texture2D(normalMap, uv0)) +
|
|
41
|
+
(texture2D(normalMap, uv1)) +
|
|
42
|
+
(texture2D(normalMap, uv2)) +
|
|
43
|
+
(texture2D(normalMap, uv3));
|
|
44
|
+
|
|
45
|
+
// average and scale to between -1 and 1
|
|
46
|
+
return ((noise / 4.0) - 0.5) * 2.0;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
50
|
+
{
|
|
51
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
52
|
+
|
|
53
|
+
float time = czm_frameNumber * animationSpeed;
|
|
54
|
+
|
|
55
|
+
// fade is a function of the distance from the fragment and the frequency of the waves
|
|
56
|
+
float fade = max(1.0, (length(materialInput.positionToEyeEC) / 10000000000.0) * frequency * fadeFactor);
|
|
57
|
+
|
|
58
|
+
float specularMapValue = texture2D(specularMap, materialInput.st).r;
|
|
59
|
+
|
|
60
|
+
// note: not using directional motion at this time, just set the angle to 0.0;
|
|
61
|
+
vec4 noise = getNoise(materialInput.st * frequency, time, 0.0);
|
|
62
|
+
vec3 normalTangentSpace = noise.xyz * vec3(1.0, 1.0, (1.0 / amplitude));
|
|
63
|
+
|
|
64
|
+
// fade out the normal perturbation as we move further from the water surface
|
|
65
|
+
normalTangentSpace.xy /= fade;
|
|
66
|
+
|
|
67
|
+
// attempt to fade out the normal perturbation as we approach non water areas (low specular map value)
|
|
68
|
+
normalTangentSpace = mix(vec3(0.0, 0.0, 50.0), normalTangentSpace, specularMapValue);
|
|
69
|
+
|
|
70
|
+
normalTangentSpace = normalize(normalTangentSpace);
|
|
71
|
+
|
|
72
|
+
// get ratios for alignment of the new normal vector with a vector perpendicular to the tangent plane
|
|
73
|
+
float tsPerturbationRatio = clamp(dot(normalTangentSpace, vec3(0.0, 0.0, 1.0)), 0.0, 1.0);
|
|
74
|
+
|
|
75
|
+
// fade out water effect as specular map value decreases
|
|
76
|
+
material.alpha = specularMapValue;
|
|
77
|
+
|
|
78
|
+
// base color is a blend of the water and non-water color based on the value from the specular map
|
|
79
|
+
// may need a uniform blend factor to better control this
|
|
80
|
+
material.diffuse = mix(blendColor.rgb, baseWaterColor.rgb, specularMapValue);
|
|
81
|
+
|
|
82
|
+
// diffuse highlights are based on how perturbed the normal is
|
|
83
|
+
material.diffuse += (0.1 * tsPerturbationRatio);
|
|
84
|
+
|
|
85
|
+
material.normal = normalize(materialInput.tangentToEyeMatrix * normalTangentSpace);
|
|
86
|
+
|
|
87
|
+
material.specular = specularIntensity;
|
|
88
|
+
material.shininess = 10.0;
|
|
89
|
+
|
|
90
|
+
return material;
|
|
91
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
/*global define*/
|
|
3
|
+
define(function() {
|
|
4
|
+
"use strict";
|
|
5
|
+
return "uniform sampler2D specularMap;\n\
|
|
6
|
+
uniform sampler2D normalMap;\n\
|
|
7
|
+
uniform vec4 baseWaterColor;\n\
|
|
8
|
+
uniform vec4 blendColor;\n\
|
|
9
|
+
uniform float frequency;\n\
|
|
10
|
+
uniform float animationSpeed;\n\
|
|
11
|
+
uniform float amplitude;\n\
|
|
12
|
+
uniform float specularIntensity;\n\
|
|
13
|
+
uniform float fadeFactor;\n\
|
|
14
|
+
vec4 getNoise(vec2 uv, float time, float angleInRadians) {\n\
|
|
15
|
+
float cosAngle = cos(angleInRadians);\n\
|
|
16
|
+
float sinAngle = sin(angleInRadians);\n\
|
|
17
|
+
vec2 s0 = vec2(1.0/17.0, 0.0);\n\
|
|
18
|
+
vec2 s1 = vec2(-1.0/29.0, 0.0);\n\
|
|
19
|
+
vec2 s2 = vec2(1.0/101.0, 1.0/59.0);\n\
|
|
20
|
+
vec2 s3 = vec2(-1.0/109.0, -1.0/57.0);\n\
|
|
21
|
+
s0 = vec2((cosAngle * s0.x) - (sinAngle * s0.y), (sinAngle * s0.x) + (cosAngle * s0.y));\n\
|
|
22
|
+
s1 = vec2((cosAngle * s1.x) - (sinAngle * s1.y), (sinAngle * s1.x) + (cosAngle * s1.y));\n\
|
|
23
|
+
s2 = vec2((cosAngle * s2.x) - (sinAngle * s2.y), (sinAngle * s2.x) + (cosAngle * s2.y));\n\
|
|
24
|
+
s3 = vec2((cosAngle * s3.x) - (sinAngle * s3.y), (sinAngle * s3.x) + (cosAngle * s3.y));\n\
|
|
25
|
+
vec2 uv0 = (uv/103.0) + (time * s0);\n\
|
|
26
|
+
vec2 uv1 = uv/107.0 + (time * s1) + vec2(0.23);\n\
|
|
27
|
+
vec2 uv2 = uv/vec2(897.0, 983.0) + (time * s2) + vec2(0.51);\n\
|
|
28
|
+
vec2 uv3 = uv/vec2(991.0, 877.0) + (time * s3) + vec2(0.71);\n\
|
|
29
|
+
uv0 = fract(uv0);\n\
|
|
30
|
+
uv1 = fract(uv1);\n\
|
|
31
|
+
uv2 = fract(uv2);\n\
|
|
32
|
+
uv3 = fract(uv3);\n\
|
|
33
|
+
vec4 noise = (texture2D(normalMap, uv0)) +\n\
|
|
34
|
+
(texture2D(normalMap, uv1)) +\n\
|
|
35
|
+
(texture2D(normalMap, uv2)) +\n\
|
|
36
|
+
(texture2D(normalMap, uv3));\n\
|
|
37
|
+
return ((noise / 4.0) - 0.5) * 2.0;\n\
|
|
38
|
+
}\n\
|
|
39
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)\n\
|
|
40
|
+
{\n\
|
|
41
|
+
czm_material material = czm_getDefaultMaterial(materialInput);\n\
|
|
42
|
+
float time = czm_frameNumber * animationSpeed;\n\
|
|
43
|
+
float fade = max(1.0, (length(materialInput.positionToEyeEC) / 10000000000.0) * frequency * fadeFactor);\n\
|
|
44
|
+
float specularMapValue = texture2D(specularMap, materialInput.st).r;\n\
|
|
45
|
+
vec4 noise = getNoise(materialInput.st * frequency, time, 0.0);\n\
|
|
46
|
+
vec3 normalTangentSpace = noise.xyz * vec3(1.0, 1.0, (1.0 / amplitude));\n\
|
|
47
|
+
normalTangentSpace.xy /= fade;\n\
|
|
48
|
+
normalTangentSpace = mix(vec3(0.0, 0.0, 50.0), normalTangentSpace, specularMapValue);\n\
|
|
49
|
+
normalTangentSpace = normalize(normalTangentSpace);\n\
|
|
50
|
+
float tsPerturbationRatio = clamp(dot(normalTangentSpace, vec3(0.0, 0.0, 1.0)), 0.0, 1.0);\n\
|
|
51
|
+
material.alpha = specularMapValue;\n\
|
|
52
|
+
material.diffuse = mix(blendColor.rgb, baseWaterColor.rgb, specularMapValue);\n\
|
|
53
|
+
material.diffuse += (0.1 * tsPerturbationRatio);\n\
|
|
54
|
+
material.normal = normalize(materialInput.tangentToEyeMatrix * normalTangentSpace);\n\
|
|
55
|
+
material.specular = specularIntensity;\n\
|
|
56
|
+
material.shininess = 10.0;\n\
|
|
57
|
+
return material;\n\
|
|
58
|
+
}\n\
|
|
59
|
+
";
|
|
60
|
+
});
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
uniform vec4 lightWoodColor;
|
|
2
|
+
uniform vec4 darkWoodColor;
|
|
3
|
+
uniform float ringFrequency;
|
|
4
|
+
uniform vec2 noiseScale;
|
|
5
|
+
uniform float grainFrequency;
|
|
6
|
+
|
|
7
|
+
czm_material czm_getMaterial(czm_materialInput materialInput)
|
|
8
|
+
{
|
|
9
|
+
czm_material material = czm_getDefaultMaterial(materialInput);
|
|
10
|
+
|
|
11
|
+
//Based on wood shader from OpenGL Shading Language (3rd edition) pg. 455
|
|
12
|
+
vec2 st = materialInput.st;
|
|
13
|
+
|
|
14
|
+
vec2 noisevec;
|
|
15
|
+
noisevec.x = czm_snoise(st * noiseScale.x);
|
|
16
|
+
noisevec.y = czm_snoise(st * noiseScale.y);
|
|
17
|
+
|
|
18
|
+
vec2 location = st + noisevec;
|
|
19
|
+
float dist = sqrt(location.x * location.x + location.y * location.y);
|
|
20
|
+
dist *= ringFrequency;
|
|
21
|
+
|
|
22
|
+
float r = fract(dist + noisevec[0] + noisevec[1]) * 2.0;
|
|
23
|
+
if(r > 1.0)
|
|
24
|
+
r = 2.0 - r;
|
|
25
|
+
|
|
26
|
+
vec4 color = mix(lightWoodColor, darkWoodColor, r);
|
|
27
|
+
|
|
28
|
+
//streaks
|
|
29
|
+
r = abs(czm_snoise(vec2(st.x * grainFrequency, st.y * grainFrequency * 0.02))) * 0.2;
|
|
30
|
+
color.rgb += lightWoodColor.rgb * r;
|
|
31
|
+
|
|
32
|
+
material.diffuse = color.rgb;
|
|
33
|
+
material.alpha = color.a;
|
|
34
|
+
|
|
35
|
+
return material;
|
|
36
|
+
}
|