org.outernet.cesium-unity 1.15.3-linux.1

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 (315) hide show
  1. package/CHANGES.md +420 -0
  2. package/CHANGES.md.meta +7 -0
  3. package/Editor/BuildCesiumForUnity.cs +186 -0
  4. package/Editor/BuildCesiumForUnity.cs.meta +11 -0
  5. package/Editor/Cesium3DTilesetEditor.cs +542 -0
  6. package/Editor/Cesium3DTilesetEditor.cs.meta +11 -0
  7. package/Editor/CesiumBingMapsRasterOverlayEditor.cs +66 -0
  8. package/Editor/CesiumBingMapsRasterOverlayEditor.cs.meta +11 -0
  9. package/Editor/CesiumCameraControllerEditor.cs +174 -0
  10. package/Editor/CesiumCameraControllerEditor.cs.meta +11 -0
  11. package/Editor/CesiumCameraManagerEditor.cs +65 -0
  12. package/Editor/CesiumCameraManagerEditor.cs.meta +11 -0
  13. package/Editor/CesiumCartographicPolygonEditor.cs +23 -0
  14. package/Editor/CesiumCartographicPolygonEditor.cs.meta +11 -0
  15. package/Editor/CesiumDebugColorizeTilesRasterOverlayEditor.cs +41 -0
  16. package/Editor/CesiumDebugColorizeTilesRasterOverlayEditor.cs.meta +11 -0
  17. package/Editor/CesiumEditor.asmdef +26 -0
  18. package/Editor/CesiumEditor.asmdef.meta +7 -0
  19. package/Editor/CesiumEditorStyle.cs +188 -0
  20. package/Editor/CesiumEditorStyle.cs.meta +11 -0
  21. package/Editor/CesiumEditorUtility.cs +394 -0
  22. package/Editor/CesiumEditorUtility.cs.meta +11 -0
  23. package/Editor/CesiumEditorWindow.cs +447 -0
  24. package/Editor/CesiumEditorWindow.cs.meta +11 -0
  25. package/Editor/CesiumFlyToControllerEditor.cs +76 -0
  26. package/Editor/CesiumFlyToControllerEditor.cs.meta +11 -0
  27. package/Editor/CesiumGeoreferenceEditor.cs +277 -0
  28. package/Editor/CesiumGeoreferenceEditor.cs.meta +11 -0
  29. package/Editor/CesiumGlobeAnchorEditor.cs +202 -0
  30. package/Editor/CesiumGlobeAnchorEditor.cs.meta +11 -0
  31. package/Editor/CesiumInspectorGUI.cs +187 -0
  32. package/Editor/CesiumInspectorGUI.cs.meta +11 -0
  33. package/Editor/CesiumIonAsset.cs +192 -0
  34. package/Editor/CesiumIonAsset.cs.meta +11 -0
  35. package/Editor/CesiumIonAssetsWindow.cs +257 -0
  36. package/Editor/CesiumIonAssetsWindow.cs.meta +11 -0
  37. package/Editor/CesiumIonRasterOverlayEditor.cs +87 -0
  38. package/Editor/CesiumIonRasterOverlayEditor.cs.meta +11 -0
  39. package/Editor/CesiumIonServerManager.cs +153 -0
  40. package/Editor/CesiumIonServerManager.cs.meta +11 -0
  41. package/Editor/CesiumIonServerSelector.cs +127 -0
  42. package/Editor/CesiumIonServerSelector.cs.meta +11 -0
  43. package/Editor/CesiumIonSession.cs +102 -0
  44. package/Editor/CesiumIonSession.cs.meta +11 -0
  45. package/Editor/CesiumPolygonRasterOverlayEditor.cs +102 -0
  46. package/Editor/CesiumPolygonRasterOverlayEditor.cs.meta +11 -0
  47. package/Editor/CesiumRasterOverlayEditor.cs +230 -0
  48. package/Editor/CesiumRasterOverlayEditor.cs.meta +11 -0
  49. package/Editor/CesiumSubSceneEditor.cs +201 -0
  50. package/Editor/CesiumSubSceneEditor.cs.meta +11 -0
  51. package/Editor/CesiumTileMapServiceRasterOverlayEditor.cs +88 -0
  52. package/Editor/CesiumTileMapServiceRasterOverlayEditor.cs.meta +11 -0
  53. package/Editor/CesiumWebMapServiceRasterOverlayEditor.cs +111 -0
  54. package/Editor/CesiumWebMapServiceRasterOverlayEditor.cs.meta +11 -0
  55. package/Editor/CesiumWebMapTileServiceRasterOverlayEditor.cs +277 -0
  56. package/Editor/CesiumWebMapTileServiceRasterOverlayEditor.cs.meta +3 -0
  57. package/Editor/CompileCesiumForUnityNative.cs +581 -0
  58. package/Editor/CompileCesiumForUnityNative.cs.meta +11 -0
  59. package/Editor/ConfigureReinterop.cs +255 -0
  60. package/Editor/ConfigureReinterop.cs.meta +11 -0
  61. package/Editor/Helpers.cs +102 -0
  62. package/Editor/Helpers.cs.meta +11 -0
  63. package/Editor/IonAssetsMultiColumnHeader.cs +45 -0
  64. package/Editor/IonAssetsMultiColumnHeader.cs.meta +11 -0
  65. package/Editor/IonAssetsTreeView.cs +214 -0
  66. package/Editor/IonAssetsTreeView.cs.meta +11 -0
  67. package/Editor/IonMissingAssetWindow.cs +65 -0
  68. package/Editor/IonMissingAssetWindow.cs.meta +11 -0
  69. package/Editor/IonTokenTroubleshootingWindow.cs +615 -0
  70. package/Editor/IonTokenTroubleshootingWindow.cs.meta +11 -0
  71. package/Editor/NativeDownloadHandler.cs +35 -0
  72. package/Editor/NativeDownloadHandler.cs.meta +11 -0
  73. package/Editor/QuickAddItem.cs +43 -0
  74. package/Editor/QuickAddItem.cs.meta +11 -0
  75. package/Editor/Resources/Cesium-128x128.png +0 -0
  76. package/Editor/Resources/Cesium-128x128.png.meta +98 -0
  77. package/Editor/Resources/Cesium-24x24.png +0 -0
  78. package/Editor/Resources/Cesium-24x24.png.meta +123 -0
  79. package/Editor/Resources/Cesium-64x64.png +0 -0
  80. package/Editor/Resources/Cesium-64x64.png.meta +98 -0
  81. package/Editor/Resources/Cesium-for-Unity-dark.png +0 -0
  82. package/Editor/Resources/Cesium-for-Unity-dark.png.meta +123 -0
  83. package/Editor/Resources/Cesium-for-Unity-light.png +0 -0
  84. package/Editor/Resources/Cesium-for-Unity-light.png.meta +123 -0
  85. package/Editor/Resources/Cesium-icon-16x16.png +0 -0
  86. package/Editor/Resources/Cesium-icon-16x16.png.meta +98 -0
  87. package/Editor/Resources/FontAwesome/attribution.txt +9 -0
  88. package/Editor/Resources/FontAwesome/attribution.txt.meta +7 -0
  89. package/Editor/Resources/FontAwesome/book-reader-solid.png +0 -0
  90. package/Editor/Resources/FontAwesome/book-reader-solid.png.meta +98 -0
  91. package/Editor/Resources/FontAwesome/book-reader-solid.svg +1 -0
  92. package/Editor/Resources/FontAwesome/book-reader-solid.svg.meta +7 -0
  93. package/Editor/Resources/FontAwesome/check-solid.png +0 -0
  94. package/Editor/Resources/FontAwesome/check-solid.png.meta +98 -0
  95. package/Editor/Resources/FontAwesome/check-solid.svg +1 -0
  96. package/Editor/Resources/FontAwesome/check-solid.svg.meta +7 -0
  97. package/Editor/Resources/FontAwesome/cloud-upload-alt-solid.png +0 -0
  98. package/Editor/Resources/FontAwesome/cloud-upload-alt-solid.png.meta +98 -0
  99. package/Editor/Resources/FontAwesome/cloud-upload-alt-solid.svg +1 -0
  100. package/Editor/Resources/FontAwesome/cloud-upload-alt-solid.svg.meta +7 -0
  101. package/Editor/Resources/FontAwesome/folder.png +0 -0
  102. package/Editor/Resources/FontAwesome/folder.png.meta +147 -0
  103. package/Editor/Resources/FontAwesome/folder.svg +5 -0
  104. package/Editor/Resources/FontAwesome/folder.svg.meta +7 -0
  105. package/Editor/Resources/FontAwesome/hands-helping-solid.png +0 -0
  106. package/Editor/Resources/FontAwesome/hands-helping-solid.png.meta +98 -0
  107. package/Editor/Resources/FontAwesome/hands-helping-solid.svg +1 -0
  108. package/Editor/Resources/FontAwesome/hands-helping-solid.svg.meta +7 -0
  109. package/Editor/Resources/FontAwesome/key-solid.png +0 -0
  110. package/Editor/Resources/FontAwesome/key-solid.png.meta +98 -0
  111. package/Editor/Resources/FontAwesome/key-solid.svg +1 -0
  112. package/Editor/Resources/FontAwesome/key-solid.svg.meta +7 -0
  113. package/Editor/Resources/FontAwesome/plus-solid.png +0 -0
  114. package/Editor/Resources/FontAwesome/plus-solid.png.meta +98 -0
  115. package/Editor/Resources/FontAwesome/plus-solid.svg +1 -0
  116. package/Editor/Resources/FontAwesome/plus-solid.svg.meta +7 -0
  117. package/Editor/Resources/FontAwesome/sign-out-alt-solid.png +0 -0
  118. package/Editor/Resources/FontAwesome/sign-out-alt-solid.png.meta +98 -0
  119. package/Editor/Resources/FontAwesome/sign-out-alt-solid.svg +1 -0
  120. package/Editor/Resources/FontAwesome/sign-out-alt-solid.svg.meta +7 -0
  121. package/Editor/Resources/FontAwesome/sync-alt-solid.png +0 -0
  122. package/Editor/Resources/FontAwesome/sync-alt-solid.png.meta +98 -0
  123. package/Editor/Resources/FontAwesome/sync-alt-solid.svg +1 -0
  124. package/Editor/Resources/FontAwesome/sync-alt-solid.svg.meta +7 -0
  125. package/Editor/Resources/FontAwesome/times-solid.png +0 -0
  126. package/Editor/Resources/FontAwesome/times-solid.png.meta +98 -0
  127. package/Editor/Resources/FontAwesome/times-solid.svg +1 -0
  128. package/Editor/Resources/FontAwesome/times-solid.svg.meta +7 -0
  129. package/Editor/Resources/FontAwesome.meta +8 -0
  130. package/Editor/Resources.meta +8 -0
  131. package/Editor/SelectIonTokenWindow.cs +249 -0
  132. package/Editor/SelectIonTokenWindow.cs.meta +11 -0
  133. package/Editor/arm64.meta +8 -0
  134. package/Editor/csc.rsp +1 -0
  135. package/Editor/csc.rsp.meta +7 -0
  136. package/Editor/libCesiumForUnityNative-Editor.so +0 -0
  137. package/Editor/libCesiumForUnityNative-Editor.so.meta +2 -0
  138. package/Editor/libCesiumForUnityNative-Runtime.so +0 -0
  139. package/Editor/libCesiumForUnityNative-Runtime.so.meta +2 -0
  140. package/Editor/x86_64.meta +8 -0
  141. package/Editor.meta +8 -0
  142. package/LICENSE +201 -0
  143. package/LICENSE.meta +7 -0
  144. package/Plugins/Standalone/libCesiumForUnityNative-Runtime.so +0 -0
  145. package/Plugins/Standalone/libCesiumForUnityNative-Runtime.so.meta +2 -0
  146. package/Plugins/Standalone.meta +8 -0
  147. package/Plugins.meta +8 -0
  148. package/README.md +39 -0
  149. package/README.md.meta +7 -0
  150. package/Reinterop.deps.json +172 -0
  151. package/Reinterop.deps.json.meta +7 -0
  152. package/Reinterop.dll +0 -0
  153. package/Reinterop.dll.meta +79 -0
  154. package/Runtime/Cesium3DTile.cs +37 -0
  155. package/Runtime/Cesium3DTile.cs.meta +11 -0
  156. package/Runtime/Cesium3DTileset.cs +788 -0
  157. package/Runtime/Cesium3DTileset.cs.meta +11 -0
  158. package/Runtime/Cesium3DTilesetLoadFailureDetails.cs +65 -0
  159. package/Runtime/Cesium3DTilesetLoadFailureDetails.cs.meta +11 -0
  160. package/Runtime/CesiumBackwardCompatibility.cs +163 -0
  161. package/Runtime/CesiumBackwardCompatibility.cs.meta +11 -0
  162. package/Runtime/CesiumBingMapsRasterOverlay.cs +72 -0
  163. package/Runtime/CesiumBingMapsRasterOverlay.cs.meta +11 -0
  164. package/Runtime/CesiumCameraController.cs +827 -0
  165. package/Runtime/CesiumCameraController.cs.meta +11 -0
  166. package/Runtime/CesiumCameraManager.cs +105 -0
  167. package/Runtime/CesiumCameraManager.cs.meta +11 -0
  168. package/Runtime/CesiumCartographicPolygon.cs +152 -0
  169. package/Runtime/CesiumCartographicPolygon.cs.meta +11 -0
  170. package/Runtime/CesiumCreditSystem.cs +343 -0
  171. package/Runtime/CesiumCreditSystem.cs.meta +11 -0
  172. package/Runtime/CesiumCreditSystemUI.cs +402 -0
  173. package/Runtime/CesiumCreditSystemUI.cs.meta +11 -0
  174. package/Runtime/CesiumDebugColorizeTilesRasterOverlay.cs +21 -0
  175. package/Runtime/CesiumDebugColorizeTilesRasterOverlay.cs.meta +11 -0
  176. package/Runtime/CesiumEllipsoid.cs +107 -0
  177. package/Runtime/CesiumEllipsoid.cs.meta +11 -0
  178. package/Runtime/CesiumFeature.cs +279 -0
  179. package/Runtime/CesiumFeature.cs.meta +11 -0
  180. package/Runtime/CesiumFeatureIdAttribute.cs +61 -0
  181. package/Runtime/CesiumFeatureIdAttribute.cs.meta +11 -0
  182. package/Runtime/CesiumFeatureIdSet.cs +165 -0
  183. package/Runtime/CesiumFeatureIdSet.cs.meta +11 -0
  184. package/Runtime/CesiumFeatureIdTexture.cs +68 -0
  185. package/Runtime/CesiumFeatureIdTexture.cs.meta +11 -0
  186. package/Runtime/CesiumFlyToController.cs +539 -0
  187. package/Runtime/CesiumFlyToController.cs.meta +11 -0
  188. package/Runtime/CesiumGeoreference.cs +628 -0
  189. package/Runtime/CesiumGeoreference.cs.meta +11 -0
  190. package/Runtime/CesiumGlobeAnchor.cs +664 -0
  191. package/Runtime/CesiumGlobeAnchor.cs.meta +11 -0
  192. package/Runtime/CesiumGlobeAnchorBackwardCompatibility0dot2dot0.cs +105 -0
  193. package/Runtime/CesiumGlobeAnchorBackwardCompatibility0dot2dot0.cs.meta +11 -0
  194. package/Runtime/CesiumIntMatN.cs +398 -0
  195. package/Runtime/CesiumIntMatN.cs.meta +11 -0
  196. package/Runtime/CesiumIntVecN.cs +525 -0
  197. package/Runtime/CesiumIntVecN.cs.meta +11 -0
  198. package/Runtime/CesiumIonRasterOverlay.cs +110 -0
  199. package/Runtime/CesiumIonRasterOverlay.cs.meta +11 -0
  200. package/Runtime/CesiumIonServer.cs +137 -0
  201. package/Runtime/CesiumIonServer.cs.meta +11 -0
  202. package/Runtime/CesiumMetadata.cs +33 -0
  203. package/Runtime/CesiumMetadata.cs.meta +11 -0
  204. package/Runtime/CesiumMetadataValue.cs +1764 -0
  205. package/Runtime/CesiumMetadataValue.cs.meta +11 -0
  206. package/Runtime/CesiumMetadataValueType.cs +203 -0
  207. package/Runtime/CesiumMetadataValueType.cs.meta +11 -0
  208. package/Runtime/CesiumModelMetadata.cs +26 -0
  209. package/Runtime/CesiumModelMetadata.cs.meta +11 -0
  210. package/Runtime/CesiumObjectPool.cs +74 -0
  211. package/Runtime/CesiumObjectPool.cs.meta +11 -0
  212. package/Runtime/CesiumObjectPools.cs +39 -0
  213. package/Runtime/CesiumObjectPools.cs.meta +11 -0
  214. package/Runtime/CesiumOriginShift.cs +146 -0
  215. package/Runtime/CesiumOriginShift.cs.meta +11 -0
  216. package/Runtime/CesiumPointCloudRenderer.cs +246 -0
  217. package/Runtime/CesiumPointCloudRenderer.cs.meta +11 -0
  218. package/Runtime/CesiumPointCloudShading.cs +76 -0
  219. package/Runtime/CesiumPointCloudShading.cs.meta +11 -0
  220. package/Runtime/CesiumPolygonRasterOverlay.cs +109 -0
  221. package/Runtime/CesiumPolygonRasterOverlay.cs.meta +11 -0
  222. package/Runtime/CesiumPrimitiveFeatures.cs +130 -0
  223. package/Runtime/CesiumPrimitiveFeatures.cs.meta +11 -0
  224. package/Runtime/CesiumPropertyArray.cs +64 -0
  225. package/Runtime/CesiumPropertyArray.cs.meta +11 -0
  226. package/Runtime/CesiumPropertyTable.cs +126 -0
  227. package/Runtime/CesiumPropertyTable.cs.meta +11 -0
  228. package/Runtime/CesiumPropertyTableProperty.cs +1734 -0
  229. package/Runtime/CesiumPropertyTableProperty.cs.meta +11 -0
  230. package/Runtime/CesiumRasterOverlay.cs +239 -0
  231. package/Runtime/CesiumRasterOverlay.cs.meta +11 -0
  232. package/Runtime/CesiumRasterOverlayLoadFailureDetails.cs +65 -0
  233. package/Runtime/CesiumRasterOverlayLoadFailureDetails.cs.meta +11 -0
  234. package/Runtime/CesiumRuntime.asmdef +32 -0
  235. package/Runtime/CesiumRuntime.asmdef.meta +7 -0
  236. package/Runtime/CesiumRuntime.cs +3 -0
  237. package/Runtime/CesiumRuntime.cs.meta +11 -0
  238. package/Runtime/CesiumRuntimeSettings.cs +188 -0
  239. package/Runtime/CesiumRuntimeSettings.cs.meta +11 -0
  240. package/Runtime/CesiumSampleHeightResult.cs +47 -0
  241. package/Runtime/CesiumSampleHeightResult.cs.meta +11 -0
  242. package/Runtime/CesiumSimplePlanarEllipsoidCurve.cs +93 -0
  243. package/Runtime/CesiumSimplePlanarEllipsoidCurve.cs.meta +11 -0
  244. package/Runtime/CesiumSubScene.cs +473 -0
  245. package/Runtime/CesiumSubScene.cs.meta +11 -0
  246. package/Runtime/CesiumTileExcluder.cs +47 -0
  247. package/Runtime/CesiumTileExcluder.cs.meta +11 -0
  248. package/Runtime/CesiumTileMapServiceRasterOverlay.cs +93 -0
  249. package/Runtime/CesiumTileMapServiceRasterOverlay.cs.meta +11 -0
  250. package/Runtime/CesiumWebMapServiceRasterOverlay.cs +129 -0
  251. package/Runtime/CesiumWebMapServiceRasterOverlay.cs.meta +11 -0
  252. package/Runtime/CesiumWebMapTileServiceRasterOverlay.cs +414 -0
  253. package/Runtime/CesiumWebMapTileServiceRasterOverlay.cs.meta +3 -0
  254. package/Runtime/CesiumWgs84Ellipsoid.cs +75 -0
  255. package/Runtime/CesiumWgs84Ellipsoid.cs.meta +11 -0
  256. package/Runtime/ConfigureReinterop.cs +926 -0
  257. package/Runtime/ConfigureReinterop.cs.meta +11 -0
  258. package/Runtime/Helpers.cs +122 -0
  259. package/Runtime/Helpers.cs.meta +11 -0
  260. package/Runtime/ICesiumRestartable.cs +17 -0
  261. package/Runtime/ICesiumRestartable.cs.meta +11 -0
  262. package/Runtime/NativeCoroutine.cs +28 -0
  263. package/Runtime/NativeCoroutine.cs.meta +11 -0
  264. package/Runtime/NativeDownloadHandler.cs +29 -0
  265. package/Runtime/NativeDownloadHandler.cs.meta +11 -0
  266. package/Runtime/Resources/CesiumCreditSystem.prefab +78 -0
  267. package/Runtime/Resources/CesiumCreditSystem.prefab.meta +7 -0
  268. package/Runtime/Resources/CesiumCreditSystemRuntimeTheme.tss +2 -0
  269. package/Runtime/Resources/CesiumCreditSystemRuntimeTheme.tss.meta +11 -0
  270. package/Runtime/Resources/CesiumCreditSystemUI.uxml +4 -0
  271. package/Runtime/Resources/CesiumCreditSystemUI.uxml.meta +10 -0
  272. package/Runtime/Resources/CesiumCreditSystemUIPanelSettings.asset +38 -0
  273. package/Runtime/Resources/CesiumCreditSystemUIPanelSettings.asset.meta +8 -0
  274. package/Runtime/Resources/CesiumDefaultTilesetMaterial.mat +232 -0
  275. package/Runtime/Resources/CesiumDefaultTilesetMaterial.mat.meta +8 -0
  276. package/Runtime/Resources/CesiumDefaultTilesetShader.shadergraph +14271 -0
  277. package/Runtime/Resources/CesiumDefaultTilesetShader.shadergraph.meta +10 -0
  278. package/Runtime/Resources/CesiumPointCloudShading.hlsl +156 -0
  279. package/Runtime/Resources/CesiumPointCloudShading.hlsl.meta +7 -0
  280. package/Runtime/Resources/CesiumPointCloudShadingMaterial.mat +125 -0
  281. package/Runtime/Resources/CesiumPointCloudShadingMaterial.mat.meta +8 -0
  282. package/Runtime/Resources/CesiumPointCloudShadingShader.shader +73 -0
  283. package/Runtime/Resources/CesiumPointCloudShadingShader.shader.meta +10 -0
  284. package/Runtime/Resources/CesiumRasterOverlay.shadersubgraph +2207 -0
  285. package/Runtime/Resources/CesiumRasterOverlay.shadersubgraph.meta +10 -0
  286. package/Runtime/Resources/CesiumSelectTexCoords.shadersubgraph +722 -0
  287. package/Runtime/Resources/CesiumSelectTexCoords.shadersubgraph.meta +10 -0
  288. package/Runtime/Resources/CesiumUnlitTilesetMaterial.mat +261 -0
  289. package/Runtime/Resources/CesiumUnlitTilesetMaterial.mat.meta +8 -0
  290. package/Runtime/Resources/CesiumUnlitTilesetShader.shadergraph +5873 -0
  291. package/Runtime/Resources/CesiumUnlitTilesetShader.shadergraph.meta +10 -0
  292. package/Runtime/Resources/DynamicCamera.prefab +253 -0
  293. package/Runtime/Resources/DynamicCamera.prefab.meta +7 -0
  294. package/Runtime/Resources/TransformTextureCoordinates.shadersubgraph +2171 -0
  295. package/Runtime/Resources/TransformTextureCoordinates.shadersubgraph.meta +10 -0
  296. package/Runtime/Resources/green1x1.png +0 -0
  297. package/Runtime/Resources/green1x1.png.meta +123 -0
  298. package/Runtime/Resources.meta +8 -0
  299. package/Runtime/TestGltfModel.cs +56 -0
  300. package/Runtime/TestGltfModel.cs.meta +11 -0
  301. package/Runtime/TestReinterop.cs +21 -0
  302. package/Runtime/TestReinterop.cs.meta +11 -0
  303. package/Runtime/UnityLifetime.cs +27 -0
  304. package/Runtime/UnityLifetime.cs.meta +11 -0
  305. package/Runtime/WaitForTask.cs +25 -0
  306. package/Runtime/WaitForTask.cs.meta +11 -0
  307. package/Runtime/csc.rsp +1 -0
  308. package/Runtime/csc.rsp.meta +7 -0
  309. package/Runtime.meta +8 -0
  310. package/ThirdParty.json +27 -0
  311. package/ThirdParty.json.meta +7 -0
  312. package/WGS84.asset +18 -0
  313. package/WGS84.asset.meta +8 -0
  314. package/package.json +29 -0
  315. package/package.json.meta +7 -0
@@ -0,0 +1,402 @@
1
+ using System;
2
+ using System.Collections;
3
+ using System.Collections.Generic;
4
+ using UnityEngine;
5
+ using UnityEngine.EventSystems;
6
+ using UnityEngine.UIElements;
7
+
8
+ #if ENABLE_INPUT_SYSTEM
9
+ using UnityEngine.InputSystem.UI;
10
+ #endif
11
+
12
+ #if UNITY_EDITOR
13
+ using UnityEditor;
14
+ #endif
15
+
16
+ namespace CesiumForUnity
17
+ {
18
+ /// <summary>
19
+ /// Displays the credits / attributions managed by a <see cref="CesiumCreditSystem"/>.
20
+ /// </summary>
21
+ [ExecuteInEditMode]
22
+ [RequireComponent(typeof(UIDocument))]
23
+ [AddComponentMenu("Cesium/Cesium Credit System UI")]
24
+ [IconAttribute("Packages/com.cesium.unity/Editor/Resources/Cesium-24x24.png")]
25
+ internal class CesiumCreditSystemUI : MonoBehaviour
26
+ {
27
+ private CesiumCreditSystem _creditSystem;
28
+
29
+ private UIDocument _uiDocument;
30
+
31
+ private VisualElement _onScreenCredits;
32
+ private VisualElement _popupCredits;
33
+
34
+ // The delimiter refers to the string used to separate credit entries
35
+ // when they are presented on-screen.
36
+ private string _delimiter = "\u2022";
37
+
38
+ private void OnEnable()
39
+ {
40
+ this._creditSystem = this.GetComponent<CesiumCreditSystem>();
41
+
42
+ if (this._creditSystem == null)
43
+ {
44
+ this._creditSystem = CesiumCreditSystem.GetDefaultCreditSystem();
45
+ }
46
+
47
+ this._creditSystem.OnCreditsUpdate += this.SetCredits;
48
+
49
+ this._uiDocument = this.GetComponent<UIDocument>();
50
+
51
+ if (this._uiDocument.rootVisualElement != null)
52
+ {
53
+ this._onScreenCredits = this._uiDocument.rootVisualElement.Q("OnScreenCredits");
54
+ this._popupCredits = this._uiDocument.rootVisualElement.Q("PopupCredits");
55
+ }
56
+
57
+ #if UNITY_EDITOR
58
+ if (!EditorApplication.isPlaying)
59
+ {
60
+ return;
61
+ }
62
+ #endif
63
+
64
+ // If no EventSystem exists, create one to handle clicking on credit links.
65
+ if (EventSystem.current == null)
66
+ {
67
+ GameObject eventSystemGameObject = new GameObject("EventSystem");
68
+ eventSystemGameObject.AddComponent<EventSystem>();
69
+
70
+ #if ENABLE_INPUT_SYSTEM
71
+ eventSystemGameObject.AddComponent<InputSystemUIInputModule>();
72
+ #elif ENABLE_LEGACY_INPUT_MANAGER
73
+ eventSystemGameObject.AddComponent<StandaloneInputModule>();
74
+ #endif
75
+ }
76
+ }
77
+
78
+ #if UNITY_EDITOR
79
+ private void AddCreditsToSceneView(SceneView sceneView)
80
+ {
81
+ if (sceneView.rootVisualElement == null)
82
+ {
83
+ return;
84
+ }
85
+
86
+ if (sceneView.rootVisualElement.Q("OnScreenCredits") == null)
87
+ {
88
+ VisualTreeAsset visualTreeAsset = this._uiDocument.visualTreeAsset;
89
+ TemplateContainer tree = visualTreeAsset.Instantiate();
90
+
91
+ // If we add the tree directly and scale the height to fit the whole screen,
92
+ // it will block any non-UI mouse inputs, preventing the user from looking
93
+ // around the scene or selecting objects. Add the individual elements instead.
94
+ VisualElement onScreenCredits = tree.Q("OnScreenCredits");
95
+ VisualElement popupCredits = tree.Q("PopupCredits");
96
+ sceneView.rootVisualElement.Add(onScreenCredits);
97
+ sceneView.rootVisualElement.Add(popupCredits);
98
+
99
+ this.UpdateCreditsInSceneView(
100
+ sceneView,
101
+ this._creditSystem.onScreenCredits,
102
+ this._creditSystem.popupCredits);
103
+ }
104
+ }
105
+
106
+ private void UpdateCreditsInSceneView(
107
+ SceneView sceneView,
108
+ List<CesiumCredit> onScreenCredits,
109
+ List<CesiumCredit> popupCredits)
110
+ {
111
+ if (sceneView.rootVisualElement == null)
112
+ {
113
+ return;
114
+ }
115
+
116
+ VisualElement onScreenElement = sceneView.rootVisualElement.Q("OnScreenCredits");
117
+ VisualElement popupElement = sceneView.rootVisualElement.Q("PopupCredits");
118
+
119
+ if (onScreenElement != null && popupElement != null)
120
+ {
121
+ this.SetCreditsOnVisualElements(
122
+ onScreenElement,
123
+ onScreenCredits,
124
+ popupElement,
125
+ popupCredits,
126
+ false);
127
+ }
128
+ }
129
+
130
+ private void RemoveCreditsFromSceneView(SceneView sceneView)
131
+ {
132
+ if (sceneView.rootVisualElement != null)
133
+ {
134
+ VisualElement onScreenElement = sceneView.rootVisualElement.Q("OnScreenCredits");
135
+ if (onScreenElement != null)
136
+ {
137
+ VisualElement parent = onScreenElement.parent;
138
+ parent.Remove(onScreenElement);
139
+ }
140
+
141
+ VisualElement popupElement = sceneView.rootVisualElement.Q("PopupCredits");
142
+ if (popupElement != null)
143
+ {
144
+ VisualElement parent = popupElement.parent;
145
+ parent.Remove(popupElement);
146
+ }
147
+ }
148
+ }
149
+
150
+ #endif
151
+
152
+ private void Update()
153
+ {
154
+ if (this._creditSystem == null)
155
+ {
156
+ return;
157
+ }
158
+
159
+ #if UNITY_EDITOR
160
+ ArrayList sceneViews = SceneView.sceneViews;
161
+ for (int i = 0; i < sceneViews.Count; i++)
162
+ {
163
+ this.AddCreditsToSceneView((SceneView)sceneViews[i]);
164
+ }
165
+ #endif
166
+ }
167
+
168
+ /// <summary>
169
+ /// Creates a UIElements Label with the given text.
170
+ /// </summary>
171
+ /// <param name="text">The desired text.</param>
172
+ /// <param name="removeExtraSpace">Whether to strip the label of extra space. This is used to
173
+ /// reduce space between inline labels, so that they appear as normally spaced text.</param>
174
+ /// <returns></returns>
175
+ private Label CreateLabelFromText(string text, bool removeExtraSpace)
176
+ {
177
+ Label label = new Label();
178
+ label.text = text;
179
+ label.style.whiteSpace = WhiteSpace.Normal;
180
+
181
+ if (removeExtraSpace)
182
+ {
183
+ label.style.marginLeft = new StyleLength(0.0f);
184
+ label.style.paddingLeft = new StyleLength(0.0f);
185
+ label.style.paddingRight = new StyleLength(0.0f);
186
+ }
187
+
188
+ return label;
189
+ }
190
+
191
+ /// <summary>
192
+ /// Converts a Cesium credit representation into VisualElements for rendering with UI Toolkit.
193
+ /// </summary>
194
+ /// <param name="credit">The credit to convert to VisualElements.</param>
195
+ /// <param name="removeExtraSpace">Whether to strip the credit's label elements of extra space.
196
+ /// This is used to reduce space between inline labels, so that they appear as normally spaced text.</param>
197
+ /// <returns></returns>
198
+ private List<VisualElement> ConvertCreditToVisualElements(CesiumCredit credit, bool removeExtraSpace)
199
+ {
200
+ List<VisualElement> visualElements = new List<VisualElement>();
201
+
202
+ for (int i = 0, componentCount = credit.components.Count; i < componentCount; i++)
203
+ {
204
+ CesiumCreditComponent creditComponent = credit.components[i];
205
+ VisualElement element;
206
+
207
+ bool hasLink = !string.IsNullOrEmpty(creditComponent.link);
208
+
209
+ if (creditComponent.imageId >= 0)
210
+ {
211
+ Texture2D image = null;
212
+ if (creditComponent.imageId < this._creditSystem.images.Count)
213
+ {
214
+ image = this._creditSystem.images[creditComponent.imageId];
215
+ }
216
+
217
+ if (image == null)
218
+ {
219
+ continue;
220
+ }
221
+
222
+ element = new VisualElement();
223
+ element.style.backgroundImage = new StyleBackground(image);
224
+ element.style.width = new StyleLength(image.width);
225
+ element.style.height = new StyleLength(image.height);
226
+ }
227
+ else
228
+ {
229
+ string text = creditComponent.text;
230
+
231
+ if (hasLink)
232
+ {
233
+ text = string.Format("<u>{0}</u>", text);
234
+ }
235
+
236
+ element = this.CreateLabelFromText(text, removeExtraSpace);
237
+ }
238
+
239
+ if (hasLink)
240
+ {
241
+ element.AddManipulator(new Clickable(evt => Application.OpenURL(creditComponent.link)));
242
+ }
243
+
244
+ visualElements.Add(element);
245
+ }
246
+
247
+ return visualElements;
248
+ }
249
+
250
+ /// <summary>
251
+ /// Creates a "Data Attribution" VisualElement that, when clicked, toggles the visibility
252
+ /// of the given attribution panel.
253
+ /// </summary>
254
+ /// <param name="popupElement">The VisualElement that represents the "Data Attribution" panel.</param>
255
+ /// <returns>The clickable "Data Attribution" VisualElement.</returns>
256
+ private VisualElement CreateDataAttributionElement(VisualElement popupElement)
257
+ {
258
+ Label label = new Label();
259
+ label.text = "<u>Data Attribution</u>";
260
+ label.AddManipulator(new Clickable(evt =>
261
+ {
262
+ if (popupElement.style.display == DisplayStyle.Flex)
263
+ {
264
+ popupElement.style.display = DisplayStyle.None;
265
+ }
266
+ else
267
+ {
268
+ popupElement.style.display = DisplayStyle.Flex;
269
+ }
270
+ }));
271
+
272
+ return label;
273
+ }
274
+
275
+ /// <summary>
276
+ /// Creates a wrapper for a credit to be displayed in the "Data Attribution" panel.
277
+ /// This encapsulates the VisualElements of a credit so that it can be vertically
278
+ /// stacked with other credits in the panel, while keeping its components inline.
279
+ /// </summary>
280
+ /// <param name="removeExtraSpace">Whether or not to remove extra space between
281
+ /// entries in the popup panel. This is mainly used to account for visual discrepancies
282
+ /// between the SceneView and GameView windows.</param>
283
+ /// <returns>The wrapper VisualElement.</returns>
284
+ private VisualElement CreatePopupCreditElement(bool removeExtraSpace)
285
+ {
286
+ VisualElement popupCreditElement = new VisualElement();
287
+ popupCreditElement.style.flexDirection = FlexDirection.Row;
288
+ popupCreditElement.style.flexWrap = Wrap.Wrap;
289
+ popupCreditElement.style.alignItems = Align.Center;
290
+
291
+ if (!removeExtraSpace)
292
+ {
293
+ popupCreditElement.style.marginTop = new StyleLength(2.5f);
294
+ }
295
+ else
296
+ {
297
+ popupCreditElement.style.marginTop = new StyleLength(0.0f);
298
+ popupCreditElement.style.marginBottom = new StyleLength(0.0f);
299
+ popupCreditElement.style.paddingTop = new StyleLength(0.0f);
300
+ popupCreditElement.style.paddingBottom = new StyleLength(0.0f);
301
+ }
302
+
303
+ return popupCreditElement;
304
+ }
305
+
306
+ private void SetCredits(List<CesiumCredit> onScreenCredits, List<CesiumCredit> popupCredits)
307
+ {
308
+ if (this._onScreenCredits != null && this._popupCredits != null)
309
+ {
310
+ this.SetCreditsOnVisualElements(
311
+ this._onScreenCredits,
312
+ onScreenCredits,
313
+ this._popupCredits,
314
+ popupCredits,
315
+ true);
316
+ }
317
+
318
+ #if UNITY_EDITOR
319
+ ArrayList sceneViews = SceneView.sceneViews;
320
+ for (int i = 0; i < sceneViews.Count; i++)
321
+ {
322
+ this.UpdateCreditsInSceneView((SceneView)sceneViews[i], onScreenCredits, popupCredits);
323
+ }
324
+ #endif
325
+ }
326
+
327
+ /// <summary>
328
+ /// Takes the given <see cref="CesiumCredit"/> lists and converts them to UI components. These
329
+ /// elements are then added to the given VisualElements, which each represent the on-screen and popup
330
+ /// portions of the credit display.
331
+ /// </summary>
332
+ /// <param name="onScreenElement">The VisualElement used to display on-screen credits.</param>
333
+ /// <param name="onScreenCredits">The list of CesiumCredits to be shown on-screen.</param>
334
+ /// <param name="popupElement">The VisualElement used to display credits in the attribution panel.</param>
335
+ /// <param name="popupCredits">The list of CesiumCredits to be shown in the data attribution panel.</param>
336
+ /// <param name="removeExtraSpace">Whether or not to remove extra space between entries.
337
+ /// This is mainly used to account for visual discrepancies between the SceneView and GameView windows.</param>
338
+ private void SetCreditsOnVisualElements(
339
+ VisualElement onScreenElement,
340
+ List<CesiumCredit> onScreenCredits,
341
+ VisualElement popupElement,
342
+ List<CesiumCredit> popupCredits,
343
+ bool removeExtraSpace)
344
+ {
345
+ onScreenElement.Clear();
346
+ popupElement.Clear();
347
+
348
+ for (int i = 0, creditCount = onScreenCredits.Count; i < creditCount; i++)
349
+ {
350
+ CesiumCredit credit = onScreenCredits[i];
351
+ List<VisualElement> visualElements = this.ConvertCreditToVisualElements(credit, removeExtraSpace);
352
+
353
+ if (i > 0)
354
+ {
355
+ onScreenElement.Add(this.CreateLabelFromText(this._delimiter, false));
356
+ }
357
+
358
+ for (int j = 0, elementCount = visualElements.Count; j < elementCount; j++)
359
+ {
360
+ onScreenElement.Add(visualElements[j]);
361
+ }
362
+ }
363
+
364
+ for (int i = 0, creditCount = popupCredits.Count; i < creditCount; i++)
365
+ {
366
+ CesiumCredit credit = popupCredits[i];
367
+ List<VisualElement> visualElements = this.ConvertCreditToVisualElements(credit, removeExtraSpace);
368
+
369
+ // Put the inline credit components in one container so they can be vertically stacked by the popup.
370
+ VisualElement popupCreditElement = CreatePopupCreditElement(removeExtraSpace);
371
+
372
+ for (int j = 0, elementCount = visualElements.Count; j < elementCount; j++)
373
+ {
374
+ popupCreditElement.Add(visualElements[j]);
375
+ }
376
+
377
+ popupElement.Add(popupCreditElement);
378
+ }
379
+
380
+ if (popupCredits.Count > 0)
381
+ {
382
+ if (onScreenCredits.Count > 0)
383
+ {
384
+ onScreenElement.Add(this.CreateLabelFromText(this._delimiter, false));
385
+ }
386
+
387
+ onScreenElement.Add(this.CreateDataAttributionElement(popupElement));
388
+ }
389
+ }
390
+
391
+ private void OnDisable()
392
+ {
393
+ #if UNITY_EDITOR
394
+ ArrayList sceneViews = SceneView.sceneViews;
395
+ for (int i = 0; i < sceneViews.Count; i++)
396
+ {
397
+ this.RemoveCreditsFromSceneView((SceneView)sceneViews[i]);
398
+ }
399
+ #endif
400
+ }
401
+ }
402
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: e53599f84ab62d94092435eae4a9ec6c
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,21 @@
1
+ using Reinterop;
2
+ using UnityEngine;
3
+
4
+ namespace CesiumForUnity
5
+ {
6
+ /// <summary>
7
+ /// A raster overlay that can be used to debug tilesets by shading each tile with a random color.
8
+ /// </summary>
9
+ [ReinteropNativeImplementation(
10
+ "CesiumForUnityNative::CesiumDebugColorizeTilesRasterOverlayImpl",
11
+ "CesiumDebugColorizeTilesRasterOverlayImpl.h")]
12
+ [AddComponentMenu("Cesium/Cesium Debug Colorize Tiles Raster Overlay")]
13
+ [IconAttribute("Packages/com.cesium.unity/Editor/Resources/Cesium-24x24.png")]
14
+ public partial class CesiumDebugColorizeTilesRasterOverlay : CesiumRasterOverlay
15
+ {
16
+ /// <inheritdoc/>
17
+ protected override partial void AddToTileset(Cesium3DTileset tileset);
18
+ /// <inheritdoc/>
19
+ protected override partial void RemoveFromTileset(Cesium3DTileset tileset);
20
+ }
21
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: 2fdfde1230d7c3b49b13b76a10b1327d
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -0,0 +1,107 @@
1
+ using Reinterop;
2
+ using Unity.Mathematics;
3
+ using UnityEngine;
4
+
5
+
6
+ namespace CesiumForUnity
7
+ {
8
+ [ReinteropNativeImplementation("CesiumForUnityNative::CesiumEllipsoidImpl", "CesiumEllipsoidImpl.h")]
9
+ [IconAttribute("Packages/com.cesium.unity/Editor/Resources/Cesium-24x24.png")]
10
+ [CreateAssetMenu(menuName = "Cesium/Ellipsoid")]
11
+ public partial class CesiumEllipsoid : ScriptableObject
12
+ {
13
+ /// <summary>
14
+ /// Obtain a WGS84 ellipsoid.
15
+ /// </summary>
16
+ public static CesiumEllipsoid WGS84
17
+ {
18
+ get
19
+ {
20
+ if (_cachedWgs84 == null)
21
+ {
22
+ _cachedWgs84 = CreateInstance<CesiumEllipsoid>();
23
+ _cachedWgs84.name = "WGS84";
24
+ _cachedWgs84.SetRadii(CesiumWgs84Ellipsoid.GetRadii());
25
+ }
26
+
27
+ return _cachedWgs84;
28
+ }
29
+ }
30
+
31
+ private static CesiumEllipsoid _cachedWgs84;
32
+
33
+ [SerializeField]
34
+ private double3 _radii = new double3(1.0, 1.0, 1.0);
35
+
36
+ internal double3 radii
37
+ {
38
+ get => _radii;
39
+ set => _radii = value;
40
+ }
41
+
42
+ /// <summary>
43
+ /// Gets the maximum radius of the ellipsoid in any dimension.
44
+ /// </summary>
45
+ /// <returns>The maximum radius of the ellipsoid.</returns>
46
+ public double GetMaximumRadius()
47
+ {
48
+ return math.cmax(this.GetRadii());
49
+ }
50
+
51
+ /// <summary>
52
+ /// Gets the minimum radius of the ellipsoid in any dimension.
53
+ /// </summary>
54
+ /// <returns>The minimum radius of the ellipsoid.</returns>
55
+ public double GetMinimumRadius()
56
+ {
57
+ return math.cmin(this.GetRadii());
58
+ }
59
+
60
+ /// <summary>
61
+ /// Returns the radii of this ellipsoid.
62
+ /// </summary>
63
+ public partial double3 GetRadii();
64
+
65
+ /// <summary>
66
+ /// Sets the radii of this ellipsoid to the given values.
67
+ /// </summary>
68
+ /// <param name="newRadii">The new (x, y, z) radii of the ellipsoid.</param>
69
+ public partial void SetRadii(double3 newRadii);
70
+
71
+ /// <summary>
72
+ /// Scale the given Ellipsoid-Centered, Ellipsoid-Fixed (ECEF) position along the geodetic surface normal
73
+ /// so that it is on the surface of the ellipsoid. If the position is at the center of the
74
+ /// ellipsoid, the result will be null.
75
+ /// </summary>
76
+ /// <param name="ellipsoidCenteredEllipsoidFixed">The ECEF position in meters.</param>
77
+ /// <returns>The scaled position, or null if the position is at the center of the ellipsoid.</returns>
78
+ public partial double3? ScaleToGeodeticSurface(double3 ellipsoidCenteredEllipsoidFixed);
79
+
80
+ /// <summary>
81
+ /// Computes the normal of the plane tangent to the surface of the ellipsoid at the provided
82
+ /// Ellipsoid-Centered, Ellipsoid-Fixed position.
83
+ /// </summary>
84
+ /// <param name="ellipsoidCenteredEllipsoidFixed">The ECEF position in meters.</param>
85
+ /// <returns>The normal at the ECEF position</returns>
86
+ public partial double3 GeodeticSurfaceNormal(double3 ellipsoidCenteredEllipsoidFixed);
87
+
88
+ /// <summary>
89
+ /// Convert longitude, latitude, and height to Ellipsoid-Centered, Ellipsoid-Fixed (ECEF) coordinates.
90
+ /// </summary>
91
+ /// <param name="longitudeLatitudeHeight">
92
+ /// The longitude (X) and latitude (Y) are in degrees. The height (Z) is in meters above the ellipsoid,
93
+ /// and should not be confused with a geoid, orthometric, or mean sea level height.</param>
94
+ /// <returns>The ECEF coordinates in meters.</returns>
95
+ public partial double3 LongitudeLatitudeHeightToCenteredFixed(double3 longitudeLatitudeHeight);
96
+
97
+ /// <summary>
98
+ /// Convert Ellipsoid-Centered, Ellipsoid-Fixed (ECEF) coordinates to longitude, latitude, and height.
99
+ /// </summary>
100
+ /// <param name="ellipsoidCenteredEllipsoidFixed">The ECEF coordinates in meters.</param>
101
+ /// <returns>
102
+ /// The longitude (X) and latitude (Y) are in degrees. The height (Z) is in meters above the ellipsoid,
103
+ /// and should not be confused with a geoid, orthometric, or mean sea level height.
104
+ /// </returns>
105
+ public partial double3 CenteredFixedToLongitudeLatitudeHeight(double3 ellipsoidCenteredEllipsoidFixed);
106
+ }
107
+ }
@@ -0,0 +1,11 @@
1
+ fileFormatVersion: 2
2
+ guid: b804adc3b6f529547be7580b9ddc8d86
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant: