cesium 0.16.0 → 0.17.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.
Files changed (553) hide show
  1. data/app/assets/javascripts/{Core/Core.profile.js → Assets/Assets.profile.js} +0 -0
  2. data/app/assets/javascripts/Assets/package.json +6 -0
  3. data/app/assets/javascripts/Cesium.js +369 -351
  4. data/app/assets/javascripts/Core/BoundingSphere.js +0 -4
  5. data/app/assets/javascripts/Core/Cartesian2.js +19 -0
  6. data/app/assets/javascripts/Core/Cartesian3.js +25 -2
  7. data/app/assets/javascripts/Core/Cartesian4.js +23 -0
  8. data/app/assets/javascripts/Core/CatmullRomSpline.js +1 -4
  9. data/app/assets/javascripts/Core/Clock.js +23 -30
  10. data/app/assets/javascripts/Core/CubicRealPolynomial.js +1 -4
  11. data/app/assets/javascripts/Core/EllipsoidTangentPlane.js +1 -1
  12. data/app/assets/javascripts/Core/EllipsoidalOccluder.js +159 -6
  13. data/app/assets/javascripts/Core/Extent.js +1 -1
  14. data/app/assets/javascripts/Core/ExtentTessellator.js +72 -19
  15. data/app/assets/javascripts/Core/Fullscreen.js +1 -4
  16. data/app/assets/javascripts/Core/HeightmapTessellator.js +2 -10
  17. data/app/assets/javascripts/Core/Iau2006XysData.js +9 -2
  18. data/app/assets/javascripts/Core/IntersectionTests.js +154 -2
  19. data/app/assets/javascripts/Core/JulianDate.js +1 -1
  20. data/app/assets/javascripts/Core/Math.js +7 -0
  21. data/app/assets/javascripts/Core/OrientationInterpolator.js +3 -6
  22. data/app/assets/javascripts/Core/Plane.js +1 -1
  23. data/app/assets/javascripts/Core/PolygonPipeline.js +135 -1
  24. data/app/assets/javascripts/Core/PolylinePipeline.js +2 -1
  25. data/app/assets/javascripts/Core/ScreenSpaceEventHandler.js +9 -11
  26. data/app/assets/javascripts/Core/Shapes.js +0 -2
  27. data/app/assets/javascripts/Core/Simon1994PlanetaryPositions.js +3 -6
  28. data/app/assets/javascripts/Core/TaskProcessor.js +2 -4
  29. data/app/assets/javascripts/Core/Transforms.js +0 -2
  30. data/app/assets/javascripts/Core/buildModuleUrl.js +17 -9
  31. data/app/assets/javascripts/Core/defaultValue.js +0 -0
  32. data/app/assets/javascripts/Core/freezeObject.js +0 -0
  33. data/app/assets/javascripts/Core/getImagePixels.js +0 -0
  34. data/app/assets/javascripts/Core/loadArrayBuffer.js +0 -0
  35. data/app/assets/javascripts/Core/loadImage.js +0 -0
  36. data/app/assets/javascripts/Core/throttleRequestByServer.js +0 -0
  37. data/app/assets/javascripts/Core/writeTextToCanvas.js +0 -0
  38. data/app/assets/javascripts/DynamicScene/CompositeDynamicObjectCollection.js +14 -16
  39. data/app/assets/javascripts/DynamicScene/CzmlDataSource.js +197 -0
  40. data/app/assets/javascripts/DynamicScene/CzmlDefaults.js +10 -2
  41. data/app/assets/javascripts/DynamicScene/CzmlDirection.js +136 -0
  42. data/app/assets/javascripts/DynamicScene/DataSource.js +63 -0
  43. data/app/assets/javascripts/DynamicScene/DataSourceCollection.js +189 -0
  44. data/app/assets/javascripts/DynamicScene/DataSourceDisplay.js +225 -0
  45. data/app/assets/javascripts/DynamicScene/DynamicBillboardVisualizer.js +11 -11
  46. data/app/assets/javascripts/DynamicScene/DynamicClock.js +0 -4
  47. data/app/assets/javascripts/DynamicScene/DynamicConeVisualizerUsingCustomSensor.js +12 -12
  48. data/app/assets/javascripts/DynamicScene/DynamicDirectionsProperty.js +5 -7
  49. data/app/assets/javascripts/DynamicScene/DynamicEllipsoid.js +0 -2
  50. data/app/assets/javascripts/DynamicScene/DynamicEllipsoidVisualizer.js +20 -22
  51. data/app/assets/javascripts/DynamicScene/DynamicLabelVisualizer.js +10 -10
  52. data/app/assets/javascripts/DynamicScene/DynamicMaterialProperty.js +5 -7
  53. data/app/assets/javascripts/DynamicScene/DynamicObject.js +6 -0
  54. data/app/assets/javascripts/DynamicScene/DynamicObjectView.js +70 -2
  55. data/app/assets/javascripts/DynamicScene/DynamicPathVisualizer.js +1 -1
  56. data/app/assets/javascripts/DynamicScene/DynamicPointVisualizer.js +18 -20
  57. data/app/assets/javascripts/DynamicScene/DynamicPolygonVisualizer.js +12 -12
  58. data/app/assets/javascripts/DynamicScene/DynamicPolylineVisualizer.js +12 -12
  59. data/app/assets/javascripts/DynamicScene/DynamicPositionProperty.js +0 -4
  60. data/app/assets/javascripts/DynamicScene/DynamicPyramidVisualizer.js +12 -12
  61. data/app/assets/javascripts/DynamicScene/DynamicVector.js +184 -0
  62. data/app/assets/javascripts/DynamicScene/DynamicVectorVisualizer.js +267 -0
  63. data/app/assets/javascripts/DynamicScene/DynamicVertexPositionsProperty.js +2 -6
  64. data/app/assets/javascripts/DynamicScene/processCzml.js +1 -3
  65. data/app/assets/javascripts/Renderer/Context.js +119 -86
  66. data/app/assets/javascripts/Renderer/CubeMap.js +39 -17
  67. data/app/assets/javascripts/Renderer/CubeMapFace.js +20 -10
  68. data/app/assets/javascripts/Renderer/DrawCommand.js +1 -1
  69. data/app/assets/javascripts/Renderer/PickFramebuffer.js +0 -2
  70. data/app/assets/javascripts/Renderer/PixelDatatype.js +9 -0
  71. data/app/assets/javascripts/Renderer/Renderbuffer.js +0 -2
  72. data/app/assets/javascripts/Renderer/ShaderProgram.js +91 -11
  73. data/app/assets/javascripts/Renderer/Texture.js +27 -2
  74. data/app/assets/javascripts/Renderer/UniformState.js +43 -14
  75. data/app/assets/javascripts/Renderer/VertexArray.js +87 -132
  76. data/app/assets/javascripts/Renderer/VertexArrayFacade.js +2 -2
  77. data/app/assets/javascripts/Scene/AnimationCollection.js +21 -17
  78. data/app/assets/javascripts/Scene/ArcGisMapServerImageryProvider.js +0 -2
  79. data/app/assets/javascripts/Scene/Billboard.js +8 -51
  80. data/app/assets/javascripts/Scene/BillboardCollection.js +0 -6
  81. data/app/assets/javascripts/Scene/Camera.js +0 -2
  82. data/app/assets/javascripts/Scene/CameraController.js +81 -29
  83. data/app/assets/javascripts/Scene/CameraFlightPath.js +130 -72
  84. data/app/assets/javascripts/Scene/CentralBody.js +3 -16
  85. data/app/assets/javascripts/Scene/CentralBodySurface.js +12 -40
  86. data/app/assets/javascripts/Scene/CustomSensorVolume.js +0 -2
  87. data/app/assets/javascripts/Scene/DiscardMissingTileImagePolicy.js +0 -0
  88. data/app/assets/javascripts/Scene/EllipsoidPrimitive.js +0 -10
  89. data/app/assets/javascripts/Scene/HeightmapTerrainData.js +0 -6
  90. data/app/assets/javascripts/Scene/ImageryLayer.js +0 -4
  91. data/app/assets/javascripts/Scene/ImageryLayerCollection.js +0 -0
  92. data/app/assets/javascripts/Scene/ImageryProvider.js +0 -0
  93. data/app/assets/javascripts/Scene/LabelCollection.js +0 -2
  94. data/app/assets/javascripts/Scene/PerspectiveFrustum.js +0 -8
  95. data/app/assets/javascripts/Scene/Polygon.js +30 -20
  96. data/app/assets/javascripts/Scene/Polyline.js +0 -4
  97. data/app/assets/javascripts/Scene/Scene.js +64 -18
  98. data/app/assets/javascripts/Scene/SceneTransforms.js +151 -0
  99. data/app/assets/javascripts/Scene/SceneTransitioner.js +0 -2
  100. data/app/assets/javascripts/Scene/ScreenSpaceCameraController.js +0 -4
  101. data/app/assets/javascripts/Scene/SensorVolumeCollection.js +0 -12
  102. data/app/assets/javascripts/Scene/Sun.js +180 -0
  103. data/app/assets/javascripts/Scene/SunPostProcess.js +417 -0
  104. data/app/assets/javascripts/Scene/Tile.js +0 -12
  105. data/app/assets/javascripts/Scene/TileProviderError.js +2 -8
  106. data/app/assets/javascripts/Scene/TileReplacementQueue.js +11 -11
  107. data/app/assets/javascripts/Scene/VRTheWorldTerrainProvider.js +0 -2
  108. data/app/assets/javascripts/Scene/WebMapServiceImageryProvider.js +0 -2
  109. data/app/assets/javascripts/Scene/WebMercatorTilingScheme.js +0 -6
  110. data/app/assets/javascripts/Scene/sampleTerrain.js +0 -4
  111. data/app/assets/javascripts/Shaders/BuiltinFunctions.glsl +62 -0
  112. data/app/assets/javascripts/Shaders/BuiltinFunctions.js +62 -0
  113. data/app/assets/javascripts/Shaders/CentralBodyVS.glsl +3 -0
  114. data/app/assets/javascripts/Shaders/CentralBodyVS.js +3 -0
  115. data/app/assets/javascripts/Shaders/Materials/PolylineArrowMaterial.glsl +1 -1
  116. data/app/assets/javascripts/Shaders/Materials/PolylineArrowMaterial.js +1 -1
  117. data/app/assets/javascripts/Shaders/PolylineVS.glsl +8 -5
  118. data/app/assets/javascripts/Shaders/PolylineVS.js +8 -5
  119. data/app/assets/javascripts/Shaders/PostProcessFilters/AdditiveBlend.glsl +17 -0
  120. data/app/assets/javascripts/Shaders/PostProcessFilters/AdditiveBlend.js +23 -0
  121. data/app/assets/javascripts/Shaders/PostProcessFilters/BrightPass.glsl +30 -0
  122. data/app/assets/javascripts/Shaders/PostProcessFilters/BrightPass.js +36 -0
  123. data/app/assets/javascripts/Shaders/PostProcessFilters/GaussianBlur1D.glsl +37 -0
  124. data/app/assets/javascripts/Shaders/PostProcessFilters/GaussianBlur1D.js +43 -0
  125. data/app/assets/javascripts/Shaders/PostProcessFilters/PassThrough.glsl +8 -0
  126. data/app/assets/javascripts/Shaders/PostProcessFilters/PassThrough.js +14 -0
  127. data/app/assets/javascripts/Shaders/SunFS.glsl +11 -0
  128. data/app/assets/javascripts/Shaders/SunFS.js +17 -0
  129. data/app/assets/javascripts/Shaders/SunVS.glsl +28 -0
  130. data/app/assets/javascripts/Shaders/SunVS.js +34 -0
  131. data/app/assets/javascripts/ThirdParty/when.js +0 -0
  132. data/app/assets/javascripts/Widgets/Animation/Animation.js +6 -10
  133. data/app/assets/javascripts/Widgets/Animation/AnimationViewModel.js +4 -14
  134. data/app/assets/javascripts/Widgets/BaseLayerPicker/BaseLayerPicker.js +3 -8
  135. data/app/assets/javascripts/Widgets/BaseLayerPicker/BaseLayerPickerViewModel.js +6 -7
  136. data/app/assets/javascripts/Widgets/CesiumWidget/CesiumWidget.js +5 -3
  137. data/app/assets/javascripts/Widgets/ClockViewModel.js +6 -7
  138. data/app/assets/javascripts/Widgets/Command.js +16 -0
  139. data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.css +5 -21
  140. data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.html +1 -1
  141. data/app/assets/javascripts/Widgets/Dojo/CesiumViewerWidget.js +27 -62
  142. data/app/assets/javascripts/Widgets/{Fullscreen/FullscreenWidget.css → FullscreenButton/FullscreenButton.css} +3 -3
  143. data/app/assets/javascripts/Widgets/{Fullscreen/FullscreenWidget.js → FullscreenButton/FullscreenButton.js} +19 -23
  144. data/app/assets/javascripts/Widgets/{Fullscreen/FullscreenViewModel.js → FullscreenButton/FullscreenButtonViewModel.js} +16 -8
  145. data/app/assets/javascripts/Widgets/{Fullscreen → FullscreenButton}/lighter.css +3 -3
  146. data/app/assets/javascripts/Widgets/HomeButton/HomeButton.css +15 -0
  147. data/app/assets/javascripts/Widgets/HomeButton/HomeButton.js +82 -0
  148. data/app/assets/javascripts/Widgets/HomeButton/HomeButtonViewModel.js +139 -0
  149. data/app/assets/javascripts/Widgets/HomeButton/lighter.css +3 -0
  150. data/app/assets/javascripts/Widgets/SceneModePicker/SceneModePicker.js +3 -8
  151. data/app/assets/javascripts/Widgets/Timeline/Timeline.js +9 -11
  152. data/app/assets/javascripts/Widgets/createCommand.js +33 -9
  153. data/app/assets/javascripts/Widgets/lighter.css +2 -1
  154. data/app/assets/javascripts/Widgets/widgets.css +2 -1
  155. data/app/assets/javascripts/Workers/cesiumWorkerBootstrapper.js +0 -0
  156. data/app/assets/javascripts/Workers/createTaskProcessorWorker.js +0 -0
  157. data/app/assets/javascripts/Workers/createVerticesFromHeightmap.js +4 -15
  158. data/app/assets/javascripts/Workers/package.json +6 -0
  159. data/lib/cesium/version.rb +1 -1
  160. data/test/dummy/log/development.log +4884 -0
  161. data/test/dummy/tmp/cache/assets/B99/0B0/sprockets%2F4723632036683061b3298399d52922e7 +0 -0
  162. data/test/dummy/tmp/cache/assets/BF8/BC0/sprockets%2F1982805b53487d15554f20955019b8c4 +0 -0
  163. data/test/dummy/tmp/cache/assets/C07/150/sprockets%2F1b420211d4602737f80569030633dbf0 +0 -0
  164. data/test/dummy/tmp/cache/assets/C12/030/sprockets%2Fbd84b00d783150a219825433401a7946 +0 -0
  165. data/test/dummy/tmp/cache/assets/C21/2F0/sprockets%2F542b776b2358128506142733e2f7bc94 +0 -0
  166. data/test/dummy/tmp/cache/assets/C23/080/sprockets%2F7953320c0848d5564133365a6c3d728d +0 -0
  167. data/test/dummy/tmp/cache/assets/C26/5B0/sprockets%2F55b830337d0462859671b7e5447ed430 +0 -0
  168. data/test/dummy/tmp/cache/assets/C27/DA0/sprockets%2Fe49200d07769d24f54f721d890142818 +0 -0
  169. data/test/dummy/tmp/cache/assets/C40/040/sprockets%2F755e3952d9331b86782d4a7478a59299 +0 -0
  170. data/test/dummy/tmp/cache/assets/C42/440/sprockets%2F1b618402da380cb405d971458a874033 +0 -0
  171. data/test/dummy/tmp/cache/assets/C44/870/sprockets%2Fc7607e52811e723312c83d096c611c32 +0 -0
  172. data/test/dummy/tmp/cache/assets/C46/770/sprockets%2F9b6c82d0454ab5ba8727173860060324 +0 -0
  173. data/test/dummy/tmp/cache/assets/C46/E60/sprockets%2F151028e967f13248ca6121c9407242cf +0 -0
  174. data/test/dummy/tmp/cache/assets/C48/360/sprockets%2Fc966013651008025255f5b53b1d63f9e +0 -0
  175. data/test/dummy/tmp/cache/assets/C4A/020/sprockets%2F162d504e77459f0304b964139300cfe3 +0 -0
  176. data/test/dummy/tmp/cache/assets/C4A/2B0/sprockets%2F821c1d08482a9b936b661a56444551b3 +0 -0
  177. data/test/dummy/tmp/cache/assets/C53/040/sprockets%2F52411d26c4863636c7ae5b5090690f94 +0 -0
  178. data/test/dummy/tmp/cache/assets/C57/D10/sprockets%2F784e21cb5b634a598629115ef4685213 +0 -0
  179. data/test/dummy/tmp/cache/assets/C63/070/sprockets%2F8e770283d268526610e99264922dce9b +0 -0
  180. data/test/dummy/tmp/cache/assets/C64/730/sprockets%2F78fd706ba991f21a399070866616c297 +0 -0
  181. data/test/dummy/tmp/cache/assets/C6D/AC0/sprockets%2Fa1344c280c4d1518b6c15c357543247a +0 -0
  182. data/test/dummy/tmp/cache/assets/C76/F10/sprockets%2F536e031c5d9a257b602d38f8711480a2 +0 -0
  183. data/test/dummy/tmp/cache/assets/C7C/7C0/sprockets%2F951d4a02d8b2ce148765e618081a8036 +0 -0
  184. data/test/dummy/tmp/cache/assets/C80/780/sprockets%2F49930c35001a30c38745b89a6a86cf74 +0 -0
  185. data/test/dummy/tmp/cache/assets/C82/580/sprockets%2F8118f4526088ba8fd441f20317475d6b +0 -0
  186. data/test/dummy/tmp/cache/assets/C82/AA0/sprockets%2Fd83006c52345d7fe51216f1e577a8185 +0 -0
  187. data/test/dummy/tmp/cache/assets/C84/A30/sprockets%2F4867b0b9b390b58a539162663f95a11d +0 -0
  188. data/test/dummy/tmp/cache/assets/C85/310/sprockets%2Fc638d86c720815e5b635e0a3646e2186 +0 -0
  189. data/test/dummy/tmp/cache/assets/C85/A90/sprockets%2Fc1f8ee195823c02e7b7c623493141937 +0 -0
  190. data/test/dummy/tmp/cache/assets/C86/030/sprockets%2F0ad25c896165036167b94387675bcdd1 +0 -0
  191. data/test/dummy/tmp/cache/assets/C86/1D0/sprockets%2F27b505354597df6d366bbc531082e198 +0 -0
  192. data/test/dummy/tmp/cache/assets/C88/400/sprockets%2F9454b598601cfa56142892fc3f11e267 +0 -0
  193. data/test/dummy/tmp/cache/assets/C88/960/sprockets%2F50655bc2c86c7c3007756af818375e64 +0 -0
  194. data/test/dummy/tmp/cache/assets/C89/9E0/sprockets%2Fbc5d891273e7d61e56762000337868bf +0 -0
  195. data/test/dummy/tmp/cache/assets/C8B/0F0/sprockets%2F3317c35ce7597681091ac91985d08bb5 +0 -0
  196. data/test/dummy/tmp/cache/assets/C8B/A30/sprockets%2Fe20153c26552232703d0f4a5a60b10ed +0 -0
  197. data/test/dummy/tmp/cache/assets/C8E/1A0/sprockets%2F7937090f77385164f68c0ee252b26be5 +0 -0
  198. data/test/dummy/tmp/cache/assets/C8E/E40/sprockets%2F96aaf9af5e7906347880902610773bc5 +0 -0
  199. data/test/dummy/tmp/cache/assets/C92/5E0/sprockets%2F6638d8088cb498bf531942a54706ad85 +0 -0
  200. data/test/dummy/tmp/cache/assets/C92/E60/sprockets%2Fa80a146215a040d03e312a796c0b95f2 +0 -0
  201. data/test/dummy/tmp/cache/assets/C93/F70/sprockets%2F65f6452a7e17925ac0894c3e1858874c +0 -0
  202. data/test/dummy/tmp/cache/assets/C94/200/sprockets%2F8dae686ee6012f59a55568f381753237 +0 -0
  203. data/test/dummy/tmp/cache/assets/C94/230/sprockets%2Ff1065a9c342c30d071c501513a608e7a +0 -0
  204. data/test/dummy/tmp/cache/assets/C9B/D70/sprockets%2F3673a307810246b3d9e4ca84d3a8000a +0 -0
  205. data/test/dummy/tmp/cache/assets/C9F/CE0/sprockets%2F56383454ba44300671223dd6ab4b7ed3 +0 -0
  206. data/test/dummy/tmp/cache/assets/CA0/400/sprockets%2F416eb009b505cf50a4088253ba48268a +0 -0
  207. data/test/dummy/tmp/cache/assets/CA2/4E0/sprockets%2F064662810df01b94c2434af6f90161af +0 -0
  208. data/test/dummy/tmp/cache/assets/CA4/0A0/sprockets%2F482164b83a43ac07c4e351f2a936247b +0 -0
  209. data/test/dummy/tmp/cache/assets/CA5/F30/sprockets%2Fb2f70423bf51f566d201679bd037170e +0 -0
  210. data/test/dummy/tmp/cache/assets/CA9/5A0/sprockets%2F8282351dd11504a68cbc8500b7786cf2 +0 -0
  211. data/test/dummy/tmp/cache/assets/CA9/E20/sprockets%2F1ca84c82be52603a0c947256a38a0598 +0 -0
  212. data/test/dummy/tmp/cache/assets/CAA/D90/sprockets%2Fd477a5c2046351a0c462bb945e3954e5 +0 -0
  213. data/test/dummy/tmp/cache/assets/CB3/C00/sprockets%2F63c296a983bb460c9848035483be2cb2 +0 -0
  214. data/test/dummy/tmp/cache/assets/CB7/ED0/sprockets%2Ff8695d0f1536c18f414dfa467632323f +0 -0
  215. data/test/dummy/tmp/cache/assets/CB7/FA0/sprockets%2F62d364e38ba9b500f8b1633367f782b9 +0 -0
  216. data/test/dummy/tmp/cache/assets/CB8/180/sprockets%2Fe66eae8997e04c4bf70531e166511662 +0 -0
  217. data/test/dummy/tmp/cache/assets/CB8/3D0/sprockets%2F82660934f515fc61a144b9c9cd39c482 +0 -0
  218. data/test/dummy/tmp/cache/assets/CB8/EA0/sprockets%2F9e63d365e2159c725d111698cc04a7e7 +0 -0
  219. data/test/dummy/tmp/cache/assets/CB8/EF0/sprockets%2Ff47909056b54fbb653c60c2b89746b07 +0 -0
  220. data/test/dummy/tmp/cache/assets/CB9/0C0/sprockets%2F4e8172b657637124dc8887da053dc90d +0 -0
  221. data/test/dummy/tmp/cache/assets/CBA/250/sprockets%2F39bb3860405888c9f3b4b35c738b940c +0 -0
  222. data/test/dummy/tmp/cache/assets/CBB/E80/sprockets%2F43b17645e39f018bc195bc9828f4b357 +0 -0
  223. data/test/dummy/tmp/cache/assets/CBC/520/sprockets%2Fc6485291750c5ad1b2498ad90498a67f +0 -0
  224. data/test/dummy/tmp/cache/assets/CBC/620/sprockets%2Fa222028f7794f7e9c619a390b389f0d3 +0 -0
  225. data/test/dummy/tmp/cache/assets/CBC/6C0/sprockets%2F464439bf5a0e28d80594ee09a9509f51 +0 -0
  226. data/test/dummy/tmp/cache/assets/CBC/6C0/sprockets%2F6f494cff47ee245d30168217542c66d6 +0 -0
  227. data/test/dummy/tmp/cache/assets/CBF/8B0/sprockets%2F5c98534d57c1e7f7d2926173d27e4d14 +0 -0
  228. data/test/dummy/tmp/cache/assets/CC0/170/sprockets%2F458478f2faf8559d5008ca28c64232f7 +0 -0
  229. data/test/dummy/tmp/cache/assets/CC0/640/sprockets%2Fd0118b2031c44248f899dc8f66784c9e +0 -0
  230. data/test/dummy/tmp/cache/assets/CC0/E60/sprockets%2F9731b0739ec7356b2e484cb427d6955f +0 -0
  231. data/test/dummy/tmp/cache/assets/CC4/B10/sprockets%2F55b1a4137e59cad5520e1f012eb29021 +0 -0
  232. data/test/dummy/tmp/cache/assets/CC4/B80/sprockets%2F5b090557c9468f93cc1ab77898ba2629 +0 -0
  233. data/test/dummy/tmp/cache/assets/CC7/0B0/sprockets%2Fa26009e31f9e68672f4fc7f873909a64 +0 -0
  234. data/test/dummy/tmp/cache/assets/CC7/370/sprockets%2F9603f587d0629697951e09f1d4fdaf25 +0 -0
  235. data/test/dummy/tmp/cache/assets/CCF/F90/sprockets%2F5829cbee03489d953e8a7f842925776b +0 -0
  236. data/test/dummy/tmp/cache/assets/CD3/250/sprockets%2F9982c13eacaf46622739beab50120614 +0 -0
  237. data/test/dummy/tmp/cache/assets/CD4/6A0/sprockets%2F46b43cd41eba3026e74fa4b450369707 +0 -0
  238. data/test/dummy/tmp/cache/assets/CD4/D20/sprockets%2F02e2c15292e6082a4626f13a4aa839ff +0 -0
  239. data/test/dummy/tmp/cache/assets/CD8/C00/sprockets%2F9090b24116705be9a907d1db3b66a65e +0 -0
  240. data/test/dummy/tmp/cache/assets/CD8/D40/sprockets%2F73570572f17300ebf2dda1ef2635149e +0 -0
  241. data/test/dummy/tmp/cache/assets/CD9/970/sprockets%2F136161482305ce48be8cb039cba47f64 +0 -0
  242. data/test/dummy/tmp/cache/assets/CD9/D90/sprockets%2F87979893cfde1b28afc60797a9948345 +0 -0
  243. data/test/dummy/tmp/cache/assets/CDC/B50/sprockets%2F0f1e213595a02089df9735ec41c3ee80 +0 -0
  244. data/test/dummy/tmp/cache/assets/CDD/4D0/sprockets%2F0f6b3e82dd3d95341ee015499e3072b3 +0 -0
  245. data/test/dummy/tmp/cache/assets/CDF/710/sprockets%2F16d775d6707a066df80d10cd1528ff33 +0 -0
  246. data/test/dummy/tmp/cache/assets/CE0/8E0/sprockets%2Ff8d73c0137e4da7517c4127b6e056d29 +0 -0
  247. data/test/dummy/tmp/cache/assets/CE1/A00/sprockets%2F168b4bf7364dfd883a5930302e0f554c +0 -0
  248. data/test/dummy/tmp/cache/assets/CE3/240/sprockets%2F018ba37f3cc68a07d752729e44e1790e +0 -0
  249. data/test/dummy/tmp/cache/assets/CE5/3C0/sprockets%2F51278e12fb2f83652a4698d0a7ffa625 +0 -0
  250. data/test/dummy/tmp/cache/assets/CE5/820/sprockets%2Fd5837a90d9d83d7208a14905e1f0f63d +0 -0
  251. data/test/dummy/tmp/cache/assets/CE5/A80/sprockets%2Ff284835027dd09004e65c8c7fcf4137d +0 -0
  252. data/test/dummy/tmp/cache/assets/CE5/F10/sprockets%2Fe9cf045465025d8527c83c3b93625fca +0 -0
  253. data/test/dummy/tmp/cache/assets/CE5/F80/sprockets%2F411e28ad08572cd67fcf1901569c45c8 +0 -0
  254. data/test/dummy/tmp/cache/assets/CE6/4A0/sprockets%2F9c04b8b8df7217a708732da4982a5f61 +0 -0
  255. data/test/dummy/tmp/cache/assets/CE7/650/sprockets%2F834b60044436456eefb9ce5cf7144d38 +0 -0
  256. data/test/dummy/tmp/cache/assets/CE7/970/sprockets%2Fc89cf760b663827c5e771b93d107b2c2 +0 -0
  257. data/test/dummy/tmp/cache/assets/CE7/A40/sprockets%2F2974c4aef7a04f06738c8f6a2066e292 +0 -0
  258. data/test/dummy/tmp/cache/assets/CE7/C70/sprockets%2F8627e999f207ce7214e0ab06afe86412 +0 -0
  259. data/test/dummy/tmp/cache/assets/CE8/AA0/sprockets%2Fd569f5f91016b77401782ef3b42de6a6 +0 -0
  260. data/test/dummy/tmp/cache/assets/CE8/C90/sprockets%2Fb58b83d1bc902887bc247af8336556c4 +0 -0
  261. data/test/dummy/tmp/cache/assets/CEA/860/sprockets%2F198736e2441a36cecc857814e7dda932 +0 -0
  262. data/test/dummy/tmp/cache/assets/CEB/0A0/sprockets%2Fa19152c9838b60787bad54bf0f5f6448 +0 -0
  263. data/test/dummy/tmp/cache/assets/CEB/B70/sprockets%2F139d9789a1a5e456ca4f796db15c5450 +0 -0
  264. data/test/dummy/tmp/cache/assets/CEB/B80/sprockets%2Fbd5b638965aac89832c75292e6c1435c +0 -0
  265. data/test/dummy/tmp/cache/assets/CEC/030/sprockets%2F15d996d59f6c9ce6c21f52604b903c71 +0 -0
  266. data/test/dummy/tmp/cache/assets/CEC/B30/sprockets%2F7cf9a1c683f008354d7837ea11439f6f +0 -0
  267. data/test/dummy/tmp/cache/assets/CEC/B60/sprockets%2F9dec0e0f236608a79f6690cf29211e59 +0 -0
  268. data/test/dummy/tmp/cache/assets/CED/500/sprockets%2F23db1088d6beb9cff9245e1648555294 +0 -0
  269. data/test/dummy/tmp/cache/assets/CED/5E0/sprockets%2F6e94c3343eb6f33eb4fd9803085d2983 +0 -0
  270. data/test/dummy/tmp/cache/assets/CED/730/sprockets%2Ffd2399e766d1a513490bd481898b2eb5 +0 -0
  271. data/test/dummy/tmp/cache/assets/CEE/920/sprockets%2F97c97b08d42738b583ed92b55c540a4f +0 -0
  272. data/test/dummy/tmp/cache/assets/CEE/C90/sprockets%2Fc66d1d80067892e2b17e3666f8255eec +0 -0
  273. data/test/dummy/tmp/cache/assets/CEF/160/sprockets%2F74caa14e02046241cad519b5c36c20a6 +0 -0
  274. data/test/dummy/tmp/cache/assets/CEF/F00/sprockets%2F8ac77338a1dc57bb32999653c561e74e +0 -0
  275. data/test/dummy/tmp/cache/assets/CF0/950/sprockets%2Fd08f99c34c161881adb05d342e8984f9 +0 -0
  276. data/test/dummy/tmp/cache/assets/CF1/980/sprockets%2Ffe3e06873a1d9f624947006e38fac498 +0 -0
  277. data/test/dummy/tmp/cache/assets/CF5/5C0/sprockets%2F64a4190014fe00d17e708fc02dfc2a32 +0 -0
  278. data/test/dummy/tmp/cache/assets/CF5/760/sprockets%2F681176b164b052212cabffc000e548ae +0 -0
  279. data/test/dummy/tmp/cache/assets/CF8/130/sprockets%2Fd519234d99322fc8c5e8d16d52e96d78 +0 -0
  280. data/test/dummy/tmp/cache/assets/CF8/8A0/sprockets%2Fa4144fea021936c315c3e315b56d6c2a +0 -0
  281. data/test/dummy/tmp/cache/assets/CF9/B70/sprockets%2F8144ebf49f85b18c46d90b897239b56e +0 -0
  282. data/test/dummy/tmp/cache/assets/CF9/EB0/sprockets%2F6b591f1a73b4b1b13410a5e3d0c2e488 +0 -0
  283. data/test/dummy/tmp/cache/assets/CFC/7F0/sprockets%2F6158d3ff6993e4c114a894dd371999ec +0 -0
  284. data/test/dummy/tmp/cache/assets/CFD/160/sprockets%2Fc63d29c7bc89b27fc00430230ba1d383 +0 -0
  285. data/test/dummy/tmp/cache/assets/CFD/750/sprockets%2Ff86ed3e35003369a86787f9cb98de345 +0 -0
  286. data/test/dummy/tmp/cache/assets/CFF/FC0/sprockets%2Ff34d34ffdba26c9d04860c02d6412107 +0 -0
  287. data/test/dummy/tmp/cache/assets/D00/5D0/sprockets%2F02f5e8429793cb8b4b69d38f8a7395e9 +0 -0
  288. data/test/dummy/tmp/cache/assets/D00/690/sprockets%2F488324fb426a1e3cb3ca16488caf4004 +0 -0
  289. data/test/dummy/tmp/cache/assets/D01/6F0/sprockets%2F740aff323f074082319acda2a34e781e +0 -0
  290. data/test/dummy/tmp/cache/assets/D02/320/sprockets%2F95d58a54f71758967c19cec8367ceb83 +0 -0
  291. data/test/dummy/tmp/cache/assets/D02/4C0/sprockets%2F6386d72b2c51c911a7fd84ba612430cc +0 -0
  292. data/test/dummy/tmp/cache/assets/D02/9C0/sprockets%2F65be886f420229fb150c2c10ea747c1b +0 -0
  293. data/test/dummy/tmp/cache/assets/D03/B80/sprockets%2F31dd24009526a39382b08eee51c6ad5c +0 -0
  294. data/test/dummy/tmp/cache/assets/D05/8A0/sprockets%2Fd1e45653c3a4190fb4dcc1b690781a55 +0 -0
  295. data/test/dummy/tmp/cache/assets/D06/590/sprockets%2F19c899c20cf5d9b8629878e3add89708 +0 -0
  296. data/test/dummy/tmp/cache/assets/D06/A70/sprockets%2Ff5da4e04222a35db9d267255424bf5c6 +0 -0
  297. data/test/dummy/tmp/cache/assets/D07/7F0/sprockets%2F3fb0ed6b32aa83a6878d12a209c38824 +0 -0
  298. data/test/dummy/tmp/cache/assets/D07/BF0/sprockets%2F47962bb2378ffb6010aaa3c0238f6d66 +0 -0
  299. data/test/dummy/tmp/cache/assets/D07/DC0/sprockets%2Fcf13f583677aa0343a26a3c58d25b1e8 +0 -0
  300. data/test/dummy/tmp/cache/assets/D09/020/sprockets%2F5176362c460747d5ebeb6c2ca3e02d84 +0 -0
  301. data/test/dummy/tmp/cache/assets/D09/7F0/sprockets%2Fa2d67c31222348f16a9812df26da3e8d +0 -0
  302. data/test/dummy/tmp/cache/assets/D0A/DD0/sprockets%2F00e49bc1f2658a16cb7682a0a8e95c16 +0 -0
  303. data/test/dummy/tmp/cache/assets/D0B/3E0/sprockets%2F66c11f02337c8851bfab67bbb3b94916 +0 -0
  304. data/test/dummy/tmp/cache/assets/D0B/E20/sprockets%2Ffabf936c2485109116fb25a3a277b28f +0 -0
  305. data/test/dummy/tmp/cache/assets/D0C/2E0/sprockets%2Fecb35ec370e250a63784c2f508b76a38 +0 -0
  306. data/test/dummy/tmp/cache/assets/D0E/010/sprockets%2F797b9e08c55a2106f8e2dace455710d0 +0 -0
  307. data/test/dummy/tmp/cache/assets/D0E/180/sprockets%2F045e183281dfc37485db513d585c5bdb +0 -0
  308. data/test/dummy/tmp/cache/assets/D0E/4E0/sprockets%2Fb2cdbc63ab95b474d109990759329a2a +0 -0
  309. data/test/dummy/tmp/cache/assets/D0E/7B0/sprockets%2Faf821bc72620991b57062886abfc0f8a +0 -0
  310. data/test/dummy/tmp/cache/assets/D0E/A90/sprockets%2F4ed87cbd33472d8a68d129e7c0a24045 +0 -0
  311. data/test/dummy/tmp/cache/assets/D0E/E40/sprockets%2Fdc478cae3337db897210c13c9c711e82 +0 -0
  312. data/test/dummy/tmp/cache/assets/D0F/590/sprockets%2F0602a50a4d729e9be6e2589d62d028bf +0 -0
  313. data/test/dummy/tmp/cache/assets/D10/890/sprockets%2Fdfa76c032ef4cb2636762a847488e0a2 +0 -0
  314. data/test/dummy/tmp/cache/assets/D11/FC0/sprockets%2F9bd6c83d367423fe05ef6c3338143aa6 +0 -0
  315. data/test/dummy/tmp/cache/assets/D12/1C0/sprockets%2F5901cb9faf1725dd2e472ca2965b4287 +0 -0
  316. data/test/dummy/tmp/cache/assets/D13/520/sprockets%2F3316346df1f7f5ff0202f8d5b4742de7 +0 -0
  317. data/test/dummy/tmp/cache/assets/D13/690/sprockets%2F305c399e52a63447a7be45c4d5d3dd74 +0 -0
  318. data/test/dummy/tmp/cache/assets/D13/6B0/sprockets%2F0975ed2a9d299bf1c719b3b1137e581b +0 -0
  319. data/test/dummy/tmp/cache/assets/D14/340/sprockets%2F4d057c80e80694c2c4d637ecd538bc08 +0 -0
  320. data/test/dummy/tmp/cache/assets/D14/BD0/sprockets%2Ffc2255112852fb55d96d41a92f8fb6b6 +0 -0
  321. data/test/dummy/tmp/cache/assets/D15/BD0/sprockets%2Fb15d82cc0a8387b5333c89a746d49f0e +0 -0
  322. data/test/dummy/tmp/cache/assets/D16/420/sprockets%2Fc1439b84cda5475e55f3d8da6071467c +0 -0
  323. data/test/dummy/tmp/cache/assets/D17/6C0/sprockets%2F69144d8b21e495ac17e4994fdfa3a803 +0 -0
  324. data/test/dummy/tmp/cache/assets/D19/680/sprockets%2Fcd3a545b89d274cfd328f4d341f96272 +0 -0
  325. data/test/dummy/tmp/cache/assets/D19/760/sprockets%2F6cb307be30e1d67f838e8d11a0678d89 +0 -0
  326. data/test/dummy/tmp/cache/assets/D19/AD0/sprockets%2F113bd6f12a1645dc5cc6a10bb3045b15 +0 -0
  327. data/test/dummy/tmp/cache/assets/D1B/210/sprockets%2F92ebfed0378e79e9bc22e628733d4042 +0 -0
  328. data/test/dummy/tmp/cache/assets/D1B/A60/sprockets%2F0f13887548f4f3b551c8c4a4b487e6bd +0 -0
  329. data/test/dummy/tmp/cache/assets/D1E/360/sprockets%2F4a6a3690f7ffd0ee9f19758978b3a200 +0 -0
  330. data/test/dummy/tmp/cache/assets/D1E/370/sprockets%2F99ee518676e86a61ec0dca0706665c5d +0 -0
  331. data/test/dummy/tmp/cache/assets/D1F/5D0/sprockets%2Fce9e23d48e27f794d23915d707fb9b03 +0 -0
  332. data/test/dummy/tmp/cache/assets/D20/A50/sprockets%2F4783e2bd28795d2da95bb0e195d9735e +0 -0
  333. data/test/dummy/tmp/cache/assets/D22/0B0/sprockets%2F9dfda36b032e59892637b875d7af392b +0 -0
  334. data/test/dummy/tmp/cache/assets/D22/2C0/sprockets%2Fe42d5d90d467a803999bdec116955f8b +0 -0
  335. data/test/dummy/tmp/cache/assets/D22/820/sprockets%2F1bc531079d5acc4c26b027b910b2af42 +0 -0
  336. data/test/dummy/tmp/cache/assets/D22/D40/sprockets%2Fc4121b103539f9c9fa321f05b1cb0a6b +0 -0
  337. data/test/dummy/tmp/cache/assets/D23/610/sprockets%2F0e51cca080cc65e62e080941b232a1ed +0 -0
  338. data/test/dummy/tmp/cache/assets/D25/C00/sprockets%2Ff63d097054df34bc660bdf98f7661b99 +0 -0
  339. data/test/dummy/tmp/cache/assets/D25/E40/sprockets%2F72fe6a6283eff449a28d79d8c33494d0 +0 -0
  340. data/test/dummy/tmp/cache/assets/D2A/6F0/sprockets%2Fd6e43c7223231cda4b71e82ba285bd40 +0 -0
  341. data/test/dummy/tmp/cache/assets/D2D/E40/sprockets%2Faf21fa3d26ad3f68a23532178e20fb15 +0 -0
  342. data/test/dummy/tmp/cache/assets/D2F/100/sprockets%2F8c0286ee70744ca12c7c12a563de4b2a +0 -0
  343. data/test/dummy/tmp/cache/assets/D2F/770/sprockets%2F02fc9c6163ec87ca3301a8ed104a5d63 +0 -0
  344. data/test/dummy/tmp/cache/assets/D30/5C0/sprockets%2F22dfce18279e968c8824f70808e6fce8 +0 -0
  345. data/test/dummy/tmp/cache/assets/D30/9E0/sprockets%2F0d913be407e5e0c8732bc2c4ed6e2160 +0 -0
  346. data/test/dummy/tmp/cache/assets/D34/020/sprockets%2F99d101b09145af7ac80cdd219ee4730b +0 -0
  347. data/test/dummy/tmp/cache/assets/D35/120/sprockets%2Fee634821c4051385267b64ef5dcba3aa +0 -0
  348. data/test/dummy/tmp/cache/assets/D36/7F0/sprockets%2F78e0c63f0043ae6e6536ec504cc23a9b +0 -0
  349. data/test/dummy/tmp/cache/assets/D36/E70/sprockets%2F69b00a4118d012bf6d7cf293b5f316ff +0 -0
  350. data/test/dummy/tmp/cache/assets/D39/3A0/sprockets%2F2e21042d01b594dd46e5a7b2bece9389 +0 -0
  351. data/test/dummy/tmp/cache/assets/D3A/7B0/sprockets%2Ff812a5e25abeb03b136494656f3b79bc +0 -0
  352. data/test/dummy/tmp/cache/assets/D3A/A00/sprockets%2F1077cd94fef55fbb01ce529612180bd5 +0 -0
  353. data/test/dummy/tmp/cache/assets/D3A/ED0/sprockets%2F5ae1cf0266d63b8eb0647535ca93b63d +0 -0
  354. data/test/dummy/tmp/cache/assets/D3C/640/sprockets%2F42e7a70bb8be9398385afb3c4742aa04 +0 -0
  355. data/test/dummy/tmp/cache/assets/D3C/BB0/sprockets%2Ff498d519cb8ac1895bb3aa90117d424a +0 -0
  356. data/test/dummy/tmp/cache/assets/D3D/A60/sprockets%2Fc1ddc173463642dde6a64d0ae5518c79 +0 -0
  357. data/test/dummy/tmp/cache/assets/D3E/940/sprockets%2F5ed82a03c1de5c34135b67ff053787ec +0 -0
  358. data/test/dummy/tmp/cache/assets/D3E/CF0/sprockets%2Ffdaaeb4c030471898b22f8c144f76b56 +0 -0
  359. data/test/dummy/tmp/cache/assets/D3F/050/sprockets%2Fab4aa96dbce1e6b359f2658118291d90 +0 -0
  360. data/test/dummy/tmp/cache/assets/D3F/350/sprockets%2Fc430fa77be69b17f1c9d6c01d667501f +0 -0
  361. data/test/dummy/tmp/cache/assets/D3F/6B0/sprockets%2Fd4c6072434f9fab0ef336571f108efb6 +0 -0
  362. data/test/dummy/tmp/cache/assets/D3F/E10/sprockets%2Ff8492202733ea4a4f67065c95eec1beb +0 -0
  363. data/test/dummy/tmp/cache/assets/D40/D10/sprockets%2F7af151c9b6080d9285fe058ae6d40c4d +0 -0
  364. data/test/dummy/tmp/cache/assets/D41/8A0/sprockets%2Fbc7ce77806517ea173350e6a4d8c55db +0 -0
  365. data/test/dummy/tmp/cache/assets/D42/140/sprockets%2F1cb73727ffa2680da8200ea7abf78669 +0 -0
  366. data/test/dummy/tmp/cache/assets/D42/DC0/sprockets%2F6c6197617cfb36bcc7bac0477815a3f5 +0 -0
  367. data/test/dummy/tmp/cache/assets/D43/6F0/sprockets%2F38649a8cba0b6c9788cb58f6e03da040 +0 -0
  368. data/test/dummy/tmp/cache/assets/D43/FE0/sprockets%2F5d585d195aa6c45453c7d8125fcb1dc8 +0 -0
  369. data/test/dummy/tmp/cache/assets/D44/4B0/sprockets%2F0eecb09395e147d5b94245d54cc8d6d2 +0 -0
  370. data/test/dummy/tmp/cache/assets/D45/3B0/sprockets%2Fd26b5a0d570ef57d06df6f032e9b8980 +0 -0
  371. data/test/dummy/tmp/cache/assets/D46/600/sprockets%2F1c942ecb30874a3f9e9fea418725ab75 +0 -0
  372. data/test/dummy/tmp/cache/assets/D46/770/sprockets%2F96355435f9ab8090c2d3e4f0ddd9b7c3 +0 -0
  373. data/test/dummy/tmp/cache/assets/D46/8A0/sprockets%2F49683a7741a9baf859c3aa7ff32a417b +0 -0
  374. data/test/dummy/tmp/cache/assets/D46/930/sprockets%2F3f7e8c9b45f15625db37da7d7325dc05 +0 -0
  375. data/test/dummy/tmp/cache/assets/D46/C80/sprockets%2Ff4ba1c28702e084d8c375097c78aea9e +0 -0
  376. data/test/dummy/tmp/cache/assets/D47/670/sprockets%2F95284b12addf9c46e49d92031ace56d8 +0 -0
  377. data/test/dummy/tmp/cache/assets/D47/8F0/sprockets%2F1cc6e49382be4f74cbb97821ae1928c4 +0 -0
  378. data/test/dummy/tmp/cache/assets/D47/AC0/sprockets%2Fcb9189183de4d74faa04d6ad1347964f +0 -0
  379. data/test/dummy/tmp/cache/assets/D48/250/sprockets%2F84991347702fd5edbb2ebb5515963ece +0 -0
  380. data/test/dummy/tmp/cache/assets/D48/2F0/sprockets%2F6b79e4839df89b4abb51c2c6105d15e8 +0 -0
  381. data/test/dummy/tmp/cache/assets/D48/960/sprockets%2F90e2c11ff8fd31e591b9fd39932631bf +0 -0
  382. data/test/dummy/tmp/cache/assets/D4A/DE0/sprockets%2F45bff385904356cf5b4852a8ef07e1fb +0 -0
  383. data/test/dummy/tmp/cache/assets/D4E/5A0/sprockets%2Ffb32d449b4bc8d5193d5daf6838f1667 +0 -0
  384. data/test/dummy/tmp/cache/assets/D4E/6C0/sprockets%2Fedd9cf282af0f00637e5273c8c3888b9 +0 -0
  385. data/test/dummy/tmp/cache/assets/D50/810/sprockets%2Fee536e389f63f834aece59d21801d36f +0 -0
  386. data/test/dummy/tmp/cache/assets/D50/ED0/sprockets%2F5332ba66dc2dfa796617ee96ce9d9900 +0 -0
  387. data/test/dummy/tmp/cache/assets/D51/230/sprockets%2F742ba6ca9f84d98ffc38ca5687c05155 +0 -0
  388. data/test/dummy/tmp/cache/assets/D53/440/sprockets%2F2def445147b9f5d6363f6f6d497d2f0e +0 -0
  389. data/test/dummy/tmp/cache/assets/D53/530/sprockets%2F59ee24852d9e4f5fbc71c76d036ec773 +0 -0
  390. data/test/dummy/tmp/cache/assets/D53/E50/sprockets%2Fb969596338bb3970b4d09a9bf1dd4ff6 +0 -0
  391. data/test/dummy/tmp/cache/assets/D54/0D0/sprockets%2F448752db3a53dd453db1b01de121ebd2 +0 -0
  392. data/test/dummy/tmp/cache/assets/D54/210/sprockets%2F685458463f9ac9566ebff2e93bbc920b +0 -0
  393. data/test/dummy/tmp/cache/assets/D56/140/sprockets%2F20a89c927f3ff593ebf3349f31f39e9a +0 -0
  394. data/test/dummy/tmp/cache/assets/D56/1F0/sprockets%2F291fcb7a26ff3aac6bc1404e0a247242 +0 -0
  395. data/test/dummy/tmp/cache/assets/D56/BA0/sprockets%2Fed013a2db663133e834b255e3aff20da +0 -0
  396. data/test/dummy/tmp/cache/assets/D59/070/sprockets%2F822cd47e69d40ba87f95181fdd698ed5 +0 -0
  397. data/test/dummy/tmp/cache/assets/D5D/120/sprockets%2F1d71e8cf1b3ca05ca8165a84a90bb615 +0 -0
  398. data/test/dummy/tmp/cache/assets/D5F/7F0/sprockets%2Fabbcc55042a82b42c900c09d59de4c29 +0 -0
  399. data/test/dummy/tmp/cache/assets/D5F/A30/sprockets%2F1b6a076e9dfac220107d3ec6b4a3b766 +0 -0
  400. data/test/dummy/tmp/cache/assets/D61/180/sprockets%2F8d15744bb332d6b8b1ffef2ce0315c04 +0 -0
  401. data/test/dummy/tmp/cache/assets/D62/2E0/sprockets%2F51a06ddef9bd05b405fd605d37be3154 +0 -0
  402. data/test/dummy/tmp/cache/assets/D63/D60/sprockets%2Ff791df22a3d7e2f4ef01ad0742f370c1 +0 -0
  403. data/test/dummy/tmp/cache/assets/D63/DC0/sprockets%2Fc298c2b66150c7f11d95cecf450bb14a +0 -0
  404. data/test/dummy/tmp/cache/assets/D63/DE0/sprockets%2F73c9e04acfc930681ab170b3e4bfc453 +0 -0
  405. data/test/dummy/tmp/cache/assets/D64/670/sprockets%2F7dc8c0ad36d436eb56a0824a46e0eb08 +0 -0
  406. data/test/dummy/tmp/cache/assets/D65/990/sprockets%2Fa2965ca374a00aaceb747e60b654e2f8 +0 -0
  407. data/test/dummy/tmp/cache/assets/D67/A60/sprockets%2Faa00971b7f5d4b45eb77d656a284a5aa +0 -0
  408. data/test/dummy/tmp/cache/assets/D67/B70/sprockets%2F93b435826e79fa4e5f6eaa001a7a11bf +0 -0
  409. data/test/dummy/tmp/cache/assets/D68/000/sprockets%2F39c01fa5c01830f3558eb1c97c4dfb6b +0 -0
  410. data/test/dummy/tmp/cache/assets/D68/210/sprockets%2Fdc284967860db06c2cb2e1da78bab156 +0 -0
  411. data/test/dummy/tmp/cache/assets/D69/490/sprockets%2Fec6b9dc7d26370cb16e31c8f051e3e07 +0 -0
  412. data/test/dummy/tmp/cache/assets/D69/F10/sprockets%2Ff34035624ea8bef910a3f3afdc9f0526 +0 -0
  413. data/test/dummy/tmp/cache/assets/D6B/200/sprockets%2F5d6139fdef36c3f5380b2a7c2c4fc332 +0 -0
  414. data/test/dummy/tmp/cache/assets/D6C/AD0/sprockets%2Fdabce05f6e4419832e20d6b7420fe9a7 +0 -0
  415. data/test/dummy/tmp/cache/assets/D6D/080/sprockets%2F3cc7b7355591babda1661e6c5e9f8c20 +0 -0
  416. data/test/dummy/tmp/cache/assets/D6D/CF0/sprockets%2Fbbad825b6b477d1967533ee21c454ade +0 -0
  417. data/test/dummy/tmp/cache/assets/D6D/E80/sprockets%2F9ef00ee94e3b0eed7c4e45b342085d51 +0 -0
  418. data/test/dummy/tmp/cache/assets/D6E/940/sprockets%2Fb19f43bd8383eeb5e26a4d2b79f1240e +0 -0
  419. data/test/dummy/tmp/cache/assets/D6E/9F0/sprockets%2F15f61ad82d9ca6cce6a0e42b7249662f +0 -0
  420. data/test/dummy/tmp/cache/assets/D6F/AB0/sprockets%2Fb9d2a198d05cec1f1f9e110318cdf929 +0 -0
  421. data/test/dummy/tmp/cache/assets/D71/CA0/sprockets%2F441e444a0921896e5ca39df6bba85daf +0 -0
  422. data/test/dummy/tmp/cache/assets/D72/C00/sprockets%2Fbcb0957c48f5623c9cd792f05cb0f40f +0 -0
  423. data/test/dummy/tmp/cache/assets/D73/6E0/sprockets%2F1f4defb0e469096950900f0ad9c3fde4 +0 -0
  424. data/test/dummy/tmp/cache/assets/D75/6B0/sprockets%2Fec34bca59e6bb0e4ab0ef45953657992 +0 -0
  425. data/test/dummy/tmp/cache/assets/D76/030/sprockets%2F7e8689ec6a9f3754a4aa660e303cbf4a +0 -0
  426. data/test/dummy/tmp/cache/assets/D76/C80/sprockets%2F952307811ad5e9e8b540cf5e9cf08cea +0 -0
  427. data/test/dummy/tmp/cache/assets/D76/CA0/sprockets%2F797920cdabaf2f8431968a34c2cbae79 +0 -0
  428. data/test/dummy/tmp/cache/assets/D78/D60/sprockets%2Feb6b4ca6b29b6f82ea665a74e67d8621 +0 -0
  429. data/test/dummy/tmp/cache/assets/D78/DE0/sprockets%2F77704150a5a59b97997ebeeaa8d2aed2 +0 -0
  430. data/test/dummy/tmp/cache/assets/D79/4D0/sprockets%2Fd9478c98121c5a4bfccf42c262d587fc +0 -0
  431. data/test/dummy/tmp/cache/assets/D79/E80/sprockets%2F7d329345d1b9f914c87fc5e07ea9ab4b +0 -0
  432. data/test/dummy/tmp/cache/assets/D7A/D90/sprockets%2F5e731a54c86bfbaa18ba9e489178cf64 +0 -0
  433. data/test/dummy/tmp/cache/assets/D7C/620/sprockets%2Fa30b274099bbe2af59458e9f9e4d36fa +0 -0
  434. data/test/dummy/tmp/cache/assets/D7E/2A0/sprockets%2F1ce479f9423e748690a75abbabf8af84 +0 -0
  435. data/test/dummy/tmp/cache/assets/D80/3B0/sprockets%2Fd574f0ceb59e292506dc7dc2f99d6b91 +0 -0
  436. data/test/dummy/tmp/cache/assets/D81/B70/sprockets%2F44d160a7cd56a4d4b2e0d23a9c61aab1 +0 -0
  437. data/test/dummy/tmp/cache/assets/D84/0A0/sprockets%2F07fc0bfe2237a171b813aa147f3ced1a +0 -0
  438. data/test/dummy/tmp/cache/assets/D85/5A0/sprockets%2Fc2cbee1b5160e0e8b022933feb36ea30 +0 -0
  439. data/test/dummy/tmp/cache/assets/D8A/2C0/sprockets%2F6ec8da0142f240ce8a7e0b46aea363c1 +0 -0
  440. data/test/dummy/tmp/cache/assets/D8A/370/sprockets%2Fb4600d72a29aba7a39c2ec58aa04f18b +0 -0
  441. data/test/dummy/tmp/cache/assets/D8A/B90/sprockets%2F7506f75d60f93f9e8405ffb9cf85ddb2 +0 -0
  442. data/test/dummy/tmp/cache/assets/D8D/C50/sprockets%2Fa0229d30e2113dbf6d3cd51c5e82ee6c +0 -0
  443. data/test/dummy/tmp/cache/assets/D8F/4A0/sprockets%2Fec8facf81aea15d619953688978be79c +0 -0
  444. data/test/dummy/tmp/cache/assets/D8F/8A0/sprockets%2F5dfeb1f78f62586e3d97cb9e77758da0 +0 -0
  445. data/test/dummy/tmp/cache/assets/D90/2D0/sprockets%2Fac8aa858f328c72e90dff5de97c59939 +0 -0
  446. data/test/dummy/tmp/cache/assets/D93/0F0/sprockets%2Fbae826e41e4d9c8365bc23eb610dea40 +0 -0
  447. data/test/dummy/tmp/cache/assets/D94/1A0/sprockets%2Fb4748c092e8a4c127bcfacb06cdc2735 +0 -0
  448. data/test/dummy/tmp/cache/assets/D94/AD0/sprockets%2Fa1ac4bf342006e1f98def10cf9d7d234 +0 -0
  449. data/test/dummy/tmp/cache/assets/D95/430/sprockets%2Fcf054ac65aa2c4b72d661fc32c898aa5 +0 -0
  450. data/test/dummy/tmp/cache/assets/D95/A60/sprockets%2Fcade84652b25a95128cba5721b7bdb5e +0 -0
  451. data/test/dummy/tmp/cache/assets/D97/4C0/sprockets%2F4d4aea86610bc9652c70455a6beafc4d +0 -0
  452. data/test/dummy/tmp/cache/assets/D97/680/sprockets%2Fbcae9b5fae1163de31141bd7b94c7448 +0 -0
  453. data/test/dummy/tmp/cache/assets/D98/280/sprockets%2F1b8bca892cab85afe98307a2b0b394e2 +0 -0
  454. data/test/dummy/tmp/cache/assets/D99/B10/sprockets%2F4aa8fece5b18d820a44dc266a89d50e0 +0 -0
  455. data/test/dummy/tmp/cache/assets/D99/CD0/sprockets%2Ffe0c5f4b8b52baa0f91870da12599a6d +0 -0
  456. data/test/dummy/tmp/cache/assets/D9A/B20/sprockets%2Fcabbfbb982365500b12a89e74dfcb646 +0 -0
  457. data/test/dummy/tmp/cache/assets/D9B/6B0/sprockets%2Ffd3ec162a92d864e65f1b7ea48a4fa10 +0 -0
  458. data/test/dummy/tmp/cache/assets/D9D/170/sprockets%2F37f702f1f3ad35b9022fc87fdce7de02 +0 -0
  459. data/test/dummy/tmp/cache/assets/D9E/C90/sprockets%2F9cd75b38f1c1f85bbdac2576ca9106b5 +0 -0
  460. data/test/dummy/tmp/cache/assets/D9F/200/sprockets%2F22deb3ee0d99f7b2b283df5382e1ae81 +0 -0
  461. data/test/dummy/tmp/cache/assets/D9F/3D0/sprockets%2Fc85d1920bbf4d6f3b27723fcd2fb7c55 +0 -0
  462. data/test/dummy/tmp/cache/assets/D9F/7F0/sprockets%2Fd8fd738fc116ab5c8da0e4922cfb8180 +0 -0
  463. data/test/dummy/tmp/cache/assets/DA0/1B0/sprockets%2F71e2cd8803aac9fb0bb4c47593cf17e8 +0 -0
  464. data/test/dummy/tmp/cache/assets/DA1/710/sprockets%2Fcc28e7b96a94b2a571877b147fdecaa0 +0 -0
  465. data/test/dummy/tmp/cache/assets/DA2/9A0/sprockets%2F4bd1c9899ece1257adec0c553fc087b2 +0 -0
  466. data/test/dummy/tmp/cache/assets/DA3/9F0/sprockets%2F5122955dfe6694bdc6b69cbea09d2cd1 +0 -0
  467. data/test/dummy/tmp/cache/assets/DA4/A50/sprockets%2F5ccc3cb812b94b7b60841969a9ecbe7b +0 -0
  468. data/test/dummy/tmp/cache/assets/DA5/0E0/sprockets%2Fe61590dc98f1e532ea20e296c5fce7bd +0 -0
  469. data/test/dummy/tmp/cache/assets/DA5/830/sprockets%2Fefce0b2d75e80d1d17b6db8598841ed2 +0 -0
  470. data/test/dummy/tmp/cache/assets/DA5/920/sprockets%2F17fef15ed3d8c1147570663a93efedea +0 -0
  471. data/test/dummy/tmp/cache/assets/DAA/420/sprockets%2F6779ef7b8e5c2c362cfd5d5fa472e1b1 +0 -0
  472. data/test/dummy/tmp/cache/assets/DAB/920/sprockets%2F047a9da6b427dd9d7093799fad63aceb +0 -0
  473. data/test/dummy/tmp/cache/assets/DB0/BF0/sprockets%2F52e4cdf37aa489ff6c138dedf036588d +0 -0
  474. data/test/dummy/tmp/cache/assets/DB1/6D0/sprockets%2Fd7990d5c07f95d0ee1cb9d5e6e5b818c +0 -0
  475. data/test/dummy/tmp/cache/assets/DB1/C80/sprockets%2Fa2d1a10a3cc780fd30127b2be96ddfa2 +0 -0
  476. data/test/dummy/tmp/cache/assets/DB2/1F0/sprockets%2Fca6346c5717c1efd6fae57773f94ee8a +0 -0
  477. data/test/dummy/tmp/cache/assets/DB2/480/sprockets%2Fa249ccdcac57daf829713de88e3629f8 +0 -0
  478. data/test/dummy/tmp/cache/assets/DB2/9D0/sprockets%2F37bbd81e0c7ddf7c7668e674925eaca9 +0 -0
  479. data/test/dummy/tmp/cache/assets/DB7/670/sprockets%2F14afe7f2ff7c6a35f6f5dd27e95593f4 +0 -0
  480. data/test/dummy/tmp/cache/assets/DBC/DF0/sprockets%2Fd1ff56754c1bf2a8d4082abe2f00adb4 +0 -0
  481. data/test/dummy/tmp/cache/assets/DBD/080/sprockets%2F039ace5986a3cbf4cca0b0a753bc71a6 +0 -0
  482. data/test/dummy/tmp/cache/assets/DBE/430/sprockets%2Fe45190f40a462e86ae1ee01f3bbcad8a +0 -0
  483. data/test/dummy/tmp/cache/assets/DC1/C20/sprockets%2Fb60b7b3aeb56bd55b67183b6f151ecca +0 -0
  484. data/test/dummy/tmp/cache/assets/DC4/600/sprockets%2Fa0794a1ac15dbb57b803dbdce2069ff7 +0 -0
  485. data/test/dummy/tmp/cache/assets/DC5/500/sprockets%2F25ac94fa819bdb1fad28f4420fd4b90a +0 -0
  486. data/test/dummy/tmp/cache/assets/DC5/660/sprockets%2F637431e1c8fffeaafc23f021bd49fa06 +0 -0
  487. data/test/dummy/tmp/cache/assets/DC6/7C0/sprockets%2Fb408df7a822c70a0924e0cdf6c8fe2ca +0 -0
  488. data/test/dummy/tmp/cache/assets/DCC/F40/sprockets%2Fdc3342c548fc7d3c4f4e27732b5acfea +0 -0
  489. data/test/dummy/tmp/cache/assets/DCD/740/sprockets%2Fc80244c564e19eada1cdddf5f6d0d962 +0 -0
  490. data/test/dummy/tmp/cache/assets/DCD/8D0/sprockets%2Fbf36f09be83b4d0986ad23ea4d1f32df +0 -0
  491. data/test/dummy/tmp/cache/assets/DCE/170/sprockets%2F2576bc54ebe0a91592bbdbf3f5c8bb57 +0 -0
  492. data/test/dummy/tmp/cache/assets/DCE/1C0/sprockets%2F58cc5eb1cb2a47c8067c940caecf449d +0 -0
  493. data/test/dummy/tmp/cache/assets/DCE/BA0/sprockets%2F57c5ecddc82aa706b1e64691a8a5bcc9 +0 -0
  494. data/test/dummy/tmp/cache/assets/DCF/4A0/sprockets%2F3efd01a56bae3ae99fd13085f75b9e0d +0 -0
  495. data/test/dummy/tmp/cache/assets/DCF/900/sprockets%2Fb4dc2a3c5d5822e5cc13ee7098e9ec2e +0 -0
  496. data/test/dummy/tmp/cache/assets/DCF/E20/sprockets%2Fd24ee80741a60bd4db8f59b784e3ccda +0 -0
  497. data/test/dummy/tmp/cache/assets/DD5/D40/sprockets%2F8a656fbe5efc00f64f2451fff1c21fe9 +0 -0
  498. data/test/dummy/tmp/cache/assets/DD7/600/sprockets%2Fcc47edff1a4a983589bb45bce09533ed +0 -0
  499. data/test/dummy/tmp/cache/assets/DD9/530/sprockets%2Fe9cbd5b6d7b21568cfb4f7990c7b50eb +0 -0
  500. data/test/dummy/tmp/cache/assets/DDB/140/sprockets%2F7815fdf1a6a74db4fca71ff6537ced67 +0 -0
  501. data/test/dummy/tmp/cache/assets/DDE/450/sprockets%2Fdc1aabe992a97f95a43ce5d8364ff9d1 +0 -0
  502. data/test/dummy/tmp/cache/assets/DDF/070/sprockets%2Ffe4d825f88eadf5580f2db2f45c3df28 +0 -0
  503. data/test/dummy/tmp/cache/assets/DDF/3F0/sprockets%2F06db623ed4f5ff5f487dbcade39f9516 +0 -0
  504. data/test/dummy/tmp/cache/assets/DE7/550/sprockets%2Ffff04b0980f1fbe9ece54cd8ca779867 +0 -0
  505. data/test/dummy/tmp/cache/assets/DF0/CB0/sprockets%2F2b2884f2950bbb31aec8a3ef1e16cbdd +0 -0
  506. data/test/dummy/tmp/cache/assets/DF5/0C0/sprockets%2Faf8105cfdb7ceae04b099c4a2f654ce1 +0 -0
  507. data/test/dummy/tmp/cache/assets/DFC/9D0/sprockets%2F38fd8e0a2fde3b853f2a24571cd2dfdd +0 -0
  508. data/test/dummy/tmp/cache/assets/E02/B00/sprockets%2F723ccdfbeacf6c4176de34f371c91af9 +0 -0
  509. data/test/dummy/tmp/cache/assets/E02/DA0/sprockets%2F9829dec75de6c2a52fdc20d428d2edae +0 -0
  510. data/test/dummy/tmp/cache/assets/E02/FD0/sprockets%2F3b854b1f189aea494b8d7cbb8bba57bf +0 -0
  511. data/test/dummy/tmp/cache/assets/E04/860/sprockets%2F972757dbdbdfabfeac8ecb8a15520793 +0 -0
  512. data/test/dummy/tmp/cache/assets/E07/FD0/sprockets%2F2b98add7bf753973c33fe3b83bdb7abf +0 -0
  513. data/test/dummy/tmp/cache/assets/E09/EE0/sprockets%2F3a991c15e3b2bb3a1a61f1cad0babc5d +0 -0
  514. data/test/dummy/tmp/cache/assets/E0B/9C0/sprockets%2F056c4cfcff64c6e7d884bfc5df9a6a30 +0 -0
  515. data/test/dummy/tmp/cache/assets/E0C/810/sprockets%2Fe74897a12cedd8efea5a559354bd5bfc +0 -0
  516. data/test/dummy/tmp/cache/assets/E0F/B40/sprockets%2Ff5dfabed7f563e53d4735ef9c4b7a0e9 +0 -0
  517. data/test/dummy/tmp/cache/assets/E11/DA0/sprockets%2Fe190d6d51f5a7a4d99cb6fcee9aef818 +0 -0
  518. data/test/dummy/tmp/cache/assets/E1F/5E0/sprockets%2Fedacf71afed14b1da329d30fcaf84091 +0 -0
  519. data/test/dummy/tmp/cache/assets/E2D/630/sprockets%2F95b2fe9ec24a6321c9aebcc3b7c53dfe +0 -0
  520. data/test/dummy/tmp/cache/assets/E2F/3D0/sprockets%2Ff740ae8eecbaedadc3c664c62b83e925 +0 -0
  521. data/test/dummy/tmp/cache/assets/E2F/930/sprockets%2F22b1cbacd98f51adeaab5bd8765e4f97 +0 -0
  522. data/test/dummy/tmp/cache/assets/E30/C50/sprockets%2Fdaad6c4c7b1429f8de49d81fac6ad18b +0 -0
  523. data/test/dummy/tmp/cache/assets/E36/230/sprockets%2F56aec75c7f17ef3509d4cadcf2e6fc3d +0 -0
  524. data/test/dummy/tmp/cache/assets/E3C/680/sprockets%2Fd057ba99f8cc7b032da8ed9e8c0dff7c +0 -0
  525. data/test/dummy/tmp/cache/assets/E45/7D0/sprockets%2Fb0cc11f8e54af3bf47bfb15dd0a1cd4a +0 -0
  526. data/test/dummy/tmp/cache/assets/E53/340/sprockets%2Fbad75d3d5f8eba9ceada05fa125a642f +0 -0
  527. data/test/dummy/tmp/cache/assets/E55/340/sprockets%2Faaeaef87c1531a051fcdb8def54f4c1f +0 -0
  528. data/test/dummy/tmp/cache/assets/E5E/CA0/sprockets%2Fdf31d095f37e9abda2e4ddb3e0e6fcb9 +0 -0
  529. data/test/dummy/tmp/cache/assets/E89/BE0/sprockets%2F9bfc41fee1adbc5e0ab3e58eafb550f9 +0 -0
  530. metadata +163 -32
  531. data/app/assets/javascripts/Core/package.json +0 -6
  532. data/app/assets/javascripts/DynamicScene/DynamicScene.profile.js +0 -8
  533. data/app/assets/javascripts/DynamicScene/package.json +0 -6
  534. data/app/assets/javascripts/Renderer/Renderer.profile.js +0 -8
  535. data/app/assets/javascripts/Renderer/package.json +0 -6
  536. data/app/assets/javascripts/Scene/Scene.profile.js +0 -8
  537. data/app/assets/javascripts/Scene/TileLoadQueue.js +0 -123
  538. data/app/assets/javascripts/Scene/package.json +0 -6
  539. data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeFS.js +0 -454
  540. data/app/assets/javascripts/Shaders/ComplexConicSensorVolumeVS.js +0 -24
  541. data/app/assets/javascripts/Shaders/ConstructiveSolidGeometry.js +0 -892
  542. data/app/assets/javascripts/Shaders/Noise.js +0 -477
  543. data/app/assets/javascripts/Shaders/PolygonFSPick.js +0 -11
  544. data/app/assets/javascripts/Shaders/PolygonVSPick.js +0 -36
  545. data/app/assets/javascripts/Shaders/Ray.js +0 -538
  546. data/app/assets/javascripts/Shaders/package.json +0 -6
  547. data/app/assets/javascripts/ThirdParty/ThirdParty.profile.js +0 -8
  548. data/app/assets/javascripts/ThirdParty/package.json +0 -6
  549. data/app/assets/javascripts/Widgets/Widgets.profile.js +0 -8
  550. data/app/assets/javascripts/Widgets/package.json +0 -6
  551. data/app/assets/javascripts/Workers/Workers.profile.js +0 -8
  552. data/app/assets/javascripts/copyrightHeader.js +0 -22
  553. data/app/assets/javascripts/main.js +0 -10
@@ -2,26 +2,22 @@
2
2
  define([
3
3
  './defaultValue',
4
4
  './DeveloperError',
5
- './Cartesian2',
6
5
  './Cartesian3',
7
6
  './Cartesian4',
8
7
  './Cartographic',
9
8
  './Ellipsoid',
10
9
  './GeographicProjection',
11
- './Extent',
12
10
  './Intersect',
13
11
  './Interval',
14
12
  './Matrix4'
15
13
  ], function(
16
14
  defaultValue,
17
15
  DeveloperError,
18
- Cartesian2,
19
16
  Cartesian3,
20
17
  Cartesian4,
21
18
  Cartographic,
22
19
  Ellipsoid,
23
20
  GeographicProjection,
24
- Extent,
25
21
  Intersect,
26
22
  Interval,
27
23
  Matrix4) {
@@ -76,6 +76,25 @@ define([
76
76
  return result;
77
77
  };
78
78
 
79
+ /**
80
+ * Creates a Cartesian2 instance from x and y coordinates.
81
+ * @memberof Cartesian2
82
+ *
83
+ * @param {Number} x The x coordinate.
84
+ * @param {Number} y The y coordinate.
85
+ * @param {Cartesian2} [result] The object onto which to store the result.
86
+ * @return {Cartesian2} The modified result parameter or a new Cartesian2 instance if one was not provided.
87
+ */
88
+ Cartesian2.fromElements = function(x, y, result) {
89
+ if (typeof result === 'undefined') {
90
+ return new Cartesian2(x, y);
91
+ }
92
+
93
+ result.x = x;
94
+ result.y = y;
95
+ return result;
96
+ };
97
+
79
98
  /**
80
99
  * Duplicates a Cartesian2 instance.
81
100
  * @memberof Cartesian2
@@ -111,6 +111,27 @@ define([
111
111
  return result;
112
112
  };
113
113
 
114
+ /**
115
+ * Creates a Cartesian3 instance from x, y and z coordinates.
116
+ * @memberof Cartesian3
117
+ *
118
+ * @param {Number} x The x coordinate.
119
+ * @param {Number} y The y coordinate.
120
+ * @param {Number} z The z coordinate.
121
+ * @param {Cartesian3} [result] The object onto which to store the result.
122
+ * @return {Cartesian3} The modified result parameter or a new Cartesian3 instance if one was not provided.
123
+ */
124
+ Cartesian3.fromElements = function(x, y, z, result) {
125
+ if (typeof result === 'undefined') {
126
+ return new Cartesian3(x, y, z);
127
+ }
128
+
129
+ result.x = x;
130
+ result.y = y;
131
+ result.z = z;
132
+ return result;
133
+ };
134
+
114
135
  /**
115
136
  * Duplicates a Cartesian3 instance.
116
137
  * @memberof Cartesian3
@@ -609,7 +630,8 @@ define([
609
630
  *
610
631
  * @param {Cartesian3} left The first Cartesian.
611
632
  * @param {Cartesian3} right The second Cartesian.
612
- * @return {Number} The cross product.
633
+ * @param {Cartesian3} [result] The object onto which to store the result.
634
+ * @return {Cartesian3} The cross product.
613
635
  *
614
636
  * @exception {DeveloperError} left is required.
615
637
  * @exception {DeveloperError} right is required.
@@ -918,7 +940,8 @@ define([
918
940
  * @memberof Cartesian3
919
941
  *
920
942
  * @param {Cartesian3} right The right hand side Cartesian.
921
- * @return {Number} The cross product.
943
+ * @param {Cartesian3} [result] The object onto which to store the result.
944
+ * @return {Cartesian3} The cross product.
922
945
  *
923
946
  * @exception {DeveloperError} right is required.
924
947
  */
@@ -92,6 +92,29 @@ define([
92
92
  return result;
93
93
  };
94
94
 
95
+ /**
96
+ * Creates a Cartesian4 instance from x, y, z and w coordinates.
97
+ * @memberof Cartesian4
98
+ *
99
+ * @param {Number} x The x coordinate.
100
+ * @param {Number} y The y coordinate.
101
+ * @param {Number} z The z coordinate.
102
+ * @param {Number} w The w coordinate.
103
+ * @param {Cartesian4} [result] The object onto which to store the result.
104
+ * @return {Cartesian4} The modified result parameter or a new Cartesian4 instance if one was not provided.
105
+ */
106
+ Cartesian4.fromElements = function(x, y, z, w, result) {
107
+ if (typeof result === 'undefined') {
108
+ return new Cartesian4(x, y, z, w);
109
+ }
110
+
111
+ result.x = x;
112
+ result.y = y;
113
+ result.z = z;
114
+ result.w = w;
115
+ return result;
116
+ };
117
+
95
118
  /**
96
119
  * Duplicates a Cartesian4 instance.
97
120
  * @memberof Cartesian4
@@ -4,15 +4,12 @@ define([
4
4
  './DeveloperError',
5
5
  './Matrix4',
6
6
  './Cartesian3',
7
- './Cartesian4',
8
7
  './HermiteSpline'
9
- ],
10
- function(
8
+ ], function(
11
9
  defaultValue,
12
10
  DeveloperError,
13
11
  Matrix4,
14
12
  Cartesian3,
15
- Cartesian4,
16
13
  HermiteSpline) {
17
14
  "use strict";
18
15
 
@@ -141,46 +141,39 @@ define([
141
141
  * or not. To control animation, use the <code>shouldAnimate</code> property.
142
142
  * @memberof Clock
143
143
  *
144
- * @param {Number} [secondsToTick] optional parameter to force the clock to tick the provided number of seconds,
145
- * regardless of other settings.
146
144
  * @returns {JulianDate} The new value of the <code>currentTime</code> property.
147
145
  */
148
- Clock.prototype.tick = function(secondsToTick) {
146
+ Clock.prototype.tick = function() {
149
147
  var currentSystemTime = Date.now();
150
-
151
- var currentTime;
152
- if (this.clockStep === ClockStep.SYSTEM_CLOCK) {
153
- currentTime = new JulianDate();
154
- } else {
155
- var startTime = this.startTime;
156
- var stopTime = this.stopTime;
157
- var multiplier = this.multiplier;
158
- var shouldAnimate = this.shouldAnimate;
159
- currentTime = this.currentTime;
160
-
161
- if (typeof secondsToTick !== 'undefined') {
162
- currentTime = currentTime.addSeconds(secondsToTick);
163
- } else if (shouldAnimate) {
148
+ var currentTime = this.currentTime;
149
+ var startTime = this.startTime;
150
+ var stopTime = this.stopTime;
151
+ var multiplier = this.multiplier;
152
+
153
+ if (this.shouldAnimate) {
154
+ if (this.clockStep === ClockStep.SYSTEM_CLOCK) {
155
+ currentTime = new JulianDate();
156
+ } else {
164
157
  if (this.clockStep === ClockStep.TICK_DEPENDENT) {
165
158
  currentTime = currentTime.addSeconds(multiplier);
166
159
  } else {
167
160
  var milliseconds = currentSystemTime - this._lastSystemTime;
168
161
  currentTime = currentTime.addSeconds(multiplier * (milliseconds / 1000.0));
169
162
  }
170
- }
171
163
 
172
- if (this.clockRange === ClockRange.CLAMPED) {
173
- if (currentTime.lessThan(startTime)) {
174
- currentTime = startTime;
175
- } else if (currentTime.greaterThan(stopTime)) {
176
- currentTime = stopTime;
177
- }
178
- } else if (this.clockRange === ClockRange.LOOP_STOP) {
179
- if (currentTime.lessThan(startTime)) {
180
- currentTime = startTime.clone();
181
- }
182
- while (currentTime.greaterThan(stopTime)) {
183
- currentTime = startTime.addSeconds(stopTime.getSecondsDifference(currentTime));
164
+ if (this.clockRange === ClockRange.CLAMPED) {
165
+ if (currentTime.lessThan(startTime)) {
166
+ currentTime = startTime;
167
+ } else if (currentTime.greaterThan(stopTime)) {
168
+ currentTime = stopTime;
169
+ }
170
+ } else if (this.clockRange === ClockRange.LOOP_STOP) {
171
+ if (currentTime.lessThan(startTime)) {
172
+ currentTime = startTime.clone();
173
+ }
174
+ while (currentTime.greaterThan(stopTime)) {
175
+ currentTime = startTime.addSeconds(stopTime.getSecondsDifference(currentTime));
176
+ }
184
177
  }
185
178
  }
186
179
  }
@@ -1,12 +1,9 @@
1
1
  /*global define*/
2
2
  define([
3
3
  './DeveloperError',
4
- './Math',
5
4
  './QuadraticRealPolynomial'
6
- ],
7
- function(
5
+ ], function(
8
6
  DeveloperError,
9
- CesiumMath,
10
7
  QuadraticRealPolynomial) {
11
8
  "use strict";
12
9
 
@@ -208,4 +208,4 @@ define([
208
208
  };
209
209
 
210
210
  return EllipsoidTangentPlane;
211
- });
211
+ });
@@ -2,18 +2,12 @@
2
2
  define([
3
3
  './defaultValue',
4
4
  './DeveloperError',
5
- './Math',
6
5
  './Cartesian3',
7
- './Visibility',
8
- './Ellipsoid',
9
6
  './BoundingSphere'
10
7
  ], function(
11
8
  defaultValue,
12
9
  DeveloperError,
13
- CesiumMath,
14
10
  Cartesian3,
15
- Visibility,
16
- Ellipsoid,
17
11
  BoundingSphere) {
18
12
  "use strict";
19
13
 
@@ -150,5 +144,164 @@ define([
150
144
  return !isOccluded;
151
145
  };
152
146
 
147
+ /**
148
+ * Computes a point that can be used for horizon culling from a list of positions. If the point is below
149
+ * the horizon, all of the positions are guaranteed to be below the horizon as well. The returned point
150
+ * is expressed in the ellipsoid-scaled space and is suitable for use with
151
+ * {@link EllipsoidalOccluder#isScaledSpacePointVisible}.
152
+ *
153
+ * @param {Cartesian3} directionToPoint The direction that the computed point will lie along.
154
+ * A reasonable direction to use is the direction from the center of the ellipsoid to
155
+ * the center of the bounding sphere computed from the positions. The direction need not
156
+ * be normalized.
157
+ * @param {Cartesian3[]} positions The positions from which to compute the horizon culling point. The positions
158
+ * must be expressed in a reference frame centered at the ellipsoid and aligned with the
159
+ * ellipsoid's axes.
160
+ * @param {Cartesian3} [result] The instance on which to store the result instead of allocating a new instance.
161
+ * @returns {Cartesian3} The computed horizon culling point, expressed in the ellipsoid-scaled space.
162
+ */
163
+ EllipsoidalOccluder.prototype.computeHorizonCullingPoint = function(directionToPoint, positions, result) {
164
+ if (typeof directionToPoint === 'undefined') {
165
+ throw new DeveloperError('directionToPoint is required');
166
+ }
167
+ if (typeof positions === 'undefined') {
168
+ throw new DeveloperError('positions is required');
169
+ }
170
+
171
+ var ellipsoid = this._ellipsoid;
172
+
173
+ var scaledSpaceDirectionToPoint = computeScaledSpaceDirectionToPoint(ellipsoid, directionToPoint);
174
+
175
+ var resultMagnitude = 0.0;
176
+
177
+ for (var i = 0, len = positions.length; i < len; ++i) {
178
+ var position = positions[i];
179
+ var candidateMagnitude = computeMagnitude(ellipsoid, position, scaledSpaceDirectionToPoint);
180
+ resultMagnitude = Math.max(resultMagnitude, candidateMagnitude);
181
+ }
182
+
183
+ return magnitudeToPoint(scaledSpaceDirectionToPoint, resultMagnitude, result);
184
+ };
185
+
186
+ var positionScratch = new Cartesian3();
187
+
188
+ /**
189
+ * Computes a point that can be used for horizon culling from a list of positions. If the point is below
190
+ * the horizon, all of the positions are guaranteed to be below the horizon as well. The returned point
191
+ * is expressed in the ellipsoid-scaled space and is suitable for use with
192
+ * {@link EllipsoidalOccluder#isScaledSpacePointVisible}.
193
+ *
194
+ * @param {Cartesian3} directionToPoint The direction that the computed point will lie along.
195
+ * A reasonable direction to use is the direction from the center of the ellipsoid to
196
+ * the center of the bounding sphere computed from the positions. The direction need not
197
+ * be normalized.
198
+ * @param {Number[]} vertices The vertices from which to compute the horizon culling point. The positions
199
+ * must be expressed in a reference frame centered at the ellipsoid and aligned with the
200
+ * ellipsoid's axes.
201
+ * @param {Number} [stride=3]
202
+ * @param {Cartesian3} [center=Cartesian3.ZERO]
203
+ * @param {Cartesian3} [result] The instance on which to store the result instead of allocating a new instance.
204
+ * @returns {Cartesian3} The computed horizon culling point, expressed in the ellipsoid-scaled space.
205
+ */
206
+ EllipsoidalOccluder.prototype.computeHorizonCullingPointFromVertices = function(directionToPoint, vertices, stride, center, result) {
207
+ if (typeof directionToPoint === 'undefined') {
208
+ throw new DeveloperError('directionToPoint is required');
209
+ }
210
+ if (typeof vertices === 'undefined') {
211
+ throw new DeveloperError('vertices is required');
212
+ }
213
+ if (typeof stride === 'undefined') {
214
+ throw new DeveloperError('stride is required');
215
+ }
216
+
217
+ center = defaultValue(center, Cartesian3.ZERO);
218
+
219
+ var ellipsoid = this._ellipsoid;
220
+
221
+ var scaledSpaceDirectionToPoint = computeScaledSpaceDirectionToPoint(ellipsoid, directionToPoint);
222
+
223
+ var resultMagnitude = 0.0;
224
+
225
+ for (var i = 0, len = vertices.length; i < len; i += stride) {
226
+ positionScratch.x = vertices[i] + center.x;
227
+ positionScratch.y = vertices[i + 1] + center.y;
228
+ positionScratch.z = vertices[i + 2] + center.z;
229
+
230
+ var candidateMagnitude = computeMagnitude(ellipsoid, positionScratch, scaledSpaceDirectionToPoint);
231
+ resultMagnitude = Math.max(resultMagnitude, candidateMagnitude);
232
+ }
233
+
234
+ return magnitudeToPoint(scaledSpaceDirectionToPoint, resultMagnitude, result);
235
+ };
236
+
237
+ var subsampleScratch = [];
238
+
239
+ /**
240
+ * Computes a point that can be used for horizon culling of an extent. If the point is below
241
+ * the horizon, the ellipsoid-conforming extent is guaranteed to be below the horizon as well.
242
+ * The returned point is expressed in the ellipsoid-scaled space and is suitable for use with
243
+ * {@link EllipsoidalOccluder#isScaledSpacePointVisible}.
244
+ *
245
+ * @param {Extent} extent The extent for which to compute the horizon culling point.
246
+ * @param {Ellipsoid} ellipsoid The ellipsoid on which the extent is defined. This may be different from
247
+ * the ellipsoid used by this instance for occlusion testing.
248
+ * @param {Cartesian3} [result] The instance on which to store the result instead of allocating a new instance.
249
+ * @returns {Cartesian3} The computed horizon culling point, expressed in the ellipsoid-scaled space.
250
+ */
251
+ EllipsoidalOccluder.prototype.computeHorizonCullingPointFromExtent = function(extent, ellipsoid, result) {
252
+ if (typeof extent === 'undefined') {
253
+ throw new DeveloperError('extent is required.');
254
+ }
255
+
256
+ var positions = extent.subsample(ellipsoid, subsampleScratch);
257
+ var bs = BoundingSphere.fromPoints(positions);
258
+
259
+ // If the bounding sphere center is too close to the center of the occluder, it doesn't make
260
+ // sense to try to horizon cull it.
261
+ if (bs.center.magnitude() < 0.1 * ellipsoid.getMinimumRadius()) {
262
+ return undefined;
263
+ }
264
+
265
+ return this.computeHorizonCullingPoint(bs.center, positions, result);
266
+ };
267
+
268
+ var scaledSpaceScratch = new Cartesian3();
269
+ var directionScratch = new Cartesian3();
270
+
271
+ function computeMagnitude(ellipsoid, position, scaledSpaceDirectionToPoint) {
272
+ var scaledSpacePosition = ellipsoid.transformPositionToScaledSpace(position, scaledSpaceScratch);
273
+ var magnitudeSquared = scaledSpacePosition.magnitudeSquared();
274
+ var magnitude = Math.sqrt(magnitudeSquared);
275
+ var direction = scaledSpacePosition.divideByScalar(magnitude, directionScratch);
276
+
277
+ // For the purpose of this computation, points below the ellipsoid are consider to be on it instead.
278
+ magnitudeSquared = Math.max(1.0, magnitudeSquared);
279
+ magnitude = Math.max(1.0, magnitude);
280
+
281
+ var cosAlpha = direction.dot(scaledSpaceDirectionToPoint);
282
+ var sinAlpha = direction.cross(scaledSpaceDirectionToPoint).magnitude();
283
+ var cosBeta = 1.0 / magnitude;
284
+ var sinBeta = Math.sqrt(magnitudeSquared - 1.0) * cosBeta;
285
+
286
+ return 1.0 / (cosAlpha * cosBeta - sinAlpha * sinBeta);
287
+ }
288
+
289
+ function magnitudeToPoint(scaledSpaceDirectionToPoint, resultMagnitude, result) {
290
+ // The horizon culling point is undefined if there were no positions from which to compute it,
291
+ // the directionToPoint is pointing opposite all of the positions, or if we computed NaN or infinity.
292
+ if (resultMagnitude <= 0.0 || resultMagnitude === 1.0 / 0.0 || resultMagnitude !== resultMagnitude) {
293
+ return undefined;
294
+ }
295
+
296
+ return scaledSpaceDirectionToPoint.multiplyByScalar(resultMagnitude, result);
297
+ }
298
+
299
+ var directionToPointScratch = new Cartesian3();
300
+
301
+ function computeScaledSpaceDirectionToPoint(ellipsoid, directionToPoint) {
302
+ ellipsoid.transformPositionToScaledSpace(directionToPoint, directionToPointScratch);
303
+ return directionToPointScratch.normalize(directionToPointScratch);
304
+ }
305
+
153
306
  return EllipsoidalOccluder;
154
307
  });
@@ -432,4 +432,4 @@ define([
432
432
  Extent.MAX_VALUE = freezeObject(new Extent(-Math.PI, -CesiumMath.PI_OVER_TWO, Math.PI, CesiumMath.PI_OVER_TWO));
433
433
 
434
434
  return Extent;
435
- });
435
+ });
@@ -2,21 +2,23 @@
2
2
  define([
3
3
  './clone',
4
4
  './defaultValue',
5
- './DeveloperError',
6
5
  './Math',
7
6
  './Ellipsoid',
8
- './Extent',
9
7
  './Cartesian3',
8
+ './Cartographic',
9
+ './Matrix2',
10
+ './GeographicProjection',
10
11
  './ComponentDatatype',
11
12
  './PrimitiveType'
12
13
  ], function(
13
14
  clone,
14
15
  defaultValue,
15
- DeveloperError,
16
16
  CesiumMath,
17
17
  Ellipsoid,
18
- Extent,
19
18
  Cartesian3,
19
+ Cartographic,
20
+ Matrix2,
21
+ GeographicProjection,
20
22
  ComponentDatatype,
21
23
  PrimitiveType) {
22
24
  "use strict";
@@ -33,16 +35,24 @@ define([
33
35
  */
34
36
  var ExtentTessellator = {};
35
37
 
38
+ function isValidLatLon(latitude, longitude) {
39
+ if (latitude < -CesiumMath.PI_OVER_TWO || latitude > CesiumMath.PI_OVER_TWO) {
40
+ return false;
41
+ }
42
+ if (longitude > CesiumMath.PI || longitude < -CesiumMath.PI) {
43
+ return false;
44
+ }
45
+ return true;
46
+ }
36
47
  /**
37
48
  * Compute vertices from a cartographic extent. This function is different from
38
49
  * {@link ExtentTessellator#compute} and {@link ExtentTessellator#computeBuffers}
39
50
  * in that it assumes that you have already allocated output arrays of the correct size.
40
51
  *
41
52
  * @param {Extent} description.extent A cartographic extent with north, south, east and west properties in radians.
53
+ * @param {Number} description.rotation The rotation of the extent in radians.
42
54
  * @param {Number} description.width The number of vertices in the longitude direction.
43
55
  * @param {Number} description.height The number of vertices in the latitude direction.
44
- * @param {Number} description.granularityX The distance, in radians, between each longitude.
45
- * @param {Number} description.granularityY The distance, in radians, between each latitude.
46
56
  * @param {Number} description.surfaceHeight The height from the surface of the ellipsoid.
47
57
  * @param {Boolean} description.generateTextureCoordinates Whether to generate texture coordinates.
48
58
  * @param {Boolean} description.interleaveTextureCoordinates Whether to interleave the texture coordinates into the vertex array.
@@ -52,10 +62,17 @@ define([
52
62
  * @param {Array|Float32Array} description.textureCoordinates The array to use to store computed texture coordinates, unless interleaved.
53
63
  * @param {Array|Float32Array} [description.indices] The array to use to store computed indices. If undefined, indices will be not computed.
54
64
  */
65
+ var nw = new Cartesian3();
66
+ var nwCartographic = new Cartographic();
67
+ var centerCartographic = new Cartographic();
68
+ var center = new Cartesian3();
69
+ var rotationMatrix = new Matrix2();
70
+ var proj = new GeographicProjection();
55
71
  ExtentTessellator.computeVertices = function(description) {
56
72
  description = defaultValue(description, defaultValue.EMPTY_OBJECT);
57
-
58
73
  var extent = description.extent;
74
+ extent.validate();
75
+ var rotation = description.rotation;
59
76
  var surfaceHeight = description.surfaceHeight;
60
77
  var width = description.width;
61
78
  var height = description.height;
@@ -86,18 +103,51 @@ define([
86
103
  var vertexArrayIndex = 0;
87
104
  var textureCoordinatesIndex = 0;
88
105
 
89
- for ( var row = 0; row < height; ++row) {
90
- var latitude = extent.north - granularityY * row;
91
- var cosLatitude = cos(latitude);
92
- var nZ = sin(latitude);
93
- var kZ = radiiSquaredZ * nZ;
106
+ extent.getNorthwest(nwCartographic);
107
+ extent.getCenter(centerCartographic);
108
+ var latitude, longitude;
94
109
 
95
- var geographicV = (latitude - extent.south) * latScalar;
110
+ if (typeof rotation === 'undefined') {
111
+ rotation = 0;
112
+ }
96
113
 
97
- var v = geographicV;
114
+ var granYCos = granularityY * cos(rotation);
115
+ var granYSin = granularityY * sin(rotation);
116
+ var granXCos = granularityX * cos(rotation);
117
+ var granXSin = granularityX * sin(rotation);
118
+
119
+ if (rotation !== 0) {
120
+ proj.project(nwCartographic, nw);
121
+ proj.project(centerCartographic, center);
122
+ nw.subtract(center, nw);
123
+ Matrix2.fromRotation(rotation, rotationMatrix);
124
+ rotationMatrix.multiplyByVector(nw, nw);
125
+ nw.add(center, nw);
126
+ proj.unproject(nw, nwCartographic);
127
+ latitude = nwCartographic.latitude;
128
+ longitude = nwCartographic.longitude;
129
+ if (!isValidLatLon(latitude, longitude)) { //NW corner
130
+ return;
131
+ }
132
+ if (!isValidLatLon(latitude + (width-1)*granXSin, longitude + (width-1)*granXCos)) { //NE corner
133
+ return;
134
+ }
135
+ if (!isValidLatLon(latitude - granYCos*(height-1), longitude + (height-1)*granYSin)) { //SW corner
136
+ return;
137
+ }
138
+ if (!isValidLatLon(latitude - granYCos*(height-1) + (width-1)*granXSin, longitude + (height-1)*granYSin + (width-1)*granXCos)) { //SE corner
139
+ return;
140
+ }
141
+ }
98
142
 
143
+ for ( var row = 0; row < height; ++row) {
99
144
  for ( var col = 0; col < width; ++col) {
100
- var longitude = extent.west + granularityX * col;
145
+ latitude = nwCartographic.latitude - granYCos*row + col*granXSin;
146
+ var cosLatitude = cos(latitude);
147
+ var nZ = sin(latitude);
148
+ var kZ = radiiSquaredZ * nZ;
149
+
150
+ longitude = nwCartographic.longitude + row*granYSin + col*granXCos;
101
151
 
102
152
  var nX = cosLatitude * cos(longitude);
103
153
  var nY = cosLatitude * sin(longitude);
@@ -116,9 +166,8 @@ define([
116
166
  vertices[vertexArrayIndex++] = rSurfaceZ + nZ * surfaceHeight - relativeToCenter.z;
117
167
 
118
168
  if (generateTextureCoordinates) {
119
- var geographicU = (longitude - extent.west) * lonScalar;
120
-
121
- var u = geographicU;
169
+ var u = (longitude - extent.west) * lonScalar;
170
+ var v = (latitude - extent.south) * latScalar;
122
171
 
123
172
  if (interleaveTextureCoordinates) {
124
173
  vertices[vertexArrayIndex++] = u;
@@ -175,7 +224,7 @@ define([
175
224
  * @exception {DeveloperError} <code>description.context</code> is required.
176
225
  *
177
226
  * @return {Object} A mesh containing attributes for positions, possibly texture coordinates and indices
178
- * from the extent for creating a vertex array.
227
+ * from the extent for creating a vertex array. (returns undefined if no indices are found)
179
228
  *
180
229
  * @see Context#createVertexArrayFromMesh
181
230
  * @see MeshFilters.createAttributeIndices
@@ -232,6 +281,10 @@ define([
232
281
 
233
282
  ExtentTessellator.computeVertices(computeVerticesDescription);
234
283
 
284
+ if (indices.length === 0) {
285
+ return undefined;
286
+ }
287
+
235
288
  var mesh = {
236
289
  attributes : {},
237
290
  indexLists : [{