@itwin/core-orbitgt 3.0.0-dev.100

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 (818) hide show
  1. package/CHANGELOG.md +515 -0
  2. package/lib/cjs/core-orbitgt.d.ts +27 -0
  3. package/lib/cjs/core-orbitgt.d.ts.map +1 -0
  4. package/lib/cjs/core-orbitgt.js +59 -0
  5. package/lib/cjs/core-orbitgt.js.map +1 -0
  6. package/lib/cjs/pointcloud/format/opc/AttributeMask.d.ts +31 -0
  7. package/lib/cjs/pointcloud/format/opc/AttributeMask.d.ts.map +1 -0
  8. package/lib/cjs/pointcloud/format/opc/AttributeMask.js +48 -0
  9. package/lib/cjs/pointcloud/format/opc/AttributeMask.js.map +1 -0
  10. package/lib/cjs/pointcloud/format/opc/AttributeReader.d.ts +64 -0
  11. package/lib/cjs/pointcloud/format/opc/AttributeReader.d.ts.map +1 -0
  12. package/lib/cjs/pointcloud/format/opc/AttributeReader.js +25 -0
  13. package/lib/cjs/pointcloud/format/opc/AttributeReader.js.map +1 -0
  14. package/lib/cjs/pointcloud/format/opc/BlockRecord.d.ts +55 -0
  15. package/lib/cjs/pointcloud/format/opc/BlockRecord.d.ts.map +1 -0
  16. package/lib/cjs/pointcloud/format/opc/BlockRecord.js +85 -0
  17. package/lib/cjs/pointcloud/format/opc/BlockRecord.js.map +1 -0
  18. package/lib/cjs/pointcloud/format/opc/ContainerFile.d.ts +86 -0
  19. package/lib/cjs/pointcloud/format/opc/ContainerFile.d.ts.map +1 -0
  20. package/lib/cjs/pointcloud/format/opc/ContainerFile.js +200 -0
  21. package/lib/cjs/pointcloud/format/opc/ContainerFile.js.map +1 -0
  22. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.d.ts +56 -0
  23. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.d.ts.map +1 -0
  24. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.js +76 -0
  25. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.js.map +1 -0
  26. package/lib/cjs/pointcloud/format/opc/DirectoryReader.d.ts +76 -0
  27. package/lib/cjs/pointcloud/format/opc/DirectoryReader.d.ts.map +1 -0
  28. package/lib/cjs/pointcloud/format/opc/DirectoryReader.js +170 -0
  29. package/lib/cjs/pointcloud/format/opc/DirectoryReader.js.map +1 -0
  30. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.d.ts +60 -0
  31. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.d.ts.map +1 -0
  32. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.js +90 -0
  33. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.js.map +1 -0
  34. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.d.ts +107 -0
  35. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.d.ts.map +1 -0
  36. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.js +198 -0
  37. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.js.map +1 -0
  38. package/lib/cjs/pointcloud/format/opc/FileAccess.d.ts +40 -0
  39. package/lib/cjs/pointcloud/format/opc/FileAccess.d.ts.map +1 -0
  40. package/lib/cjs/pointcloud/format/opc/FileAccess.js +49 -0
  41. package/lib/cjs/pointcloud/format/opc/FileAccess.js.map +1 -0
  42. package/lib/cjs/pointcloud/format/opc/FileReader.d.ts +119 -0
  43. package/lib/cjs/pointcloud/format/opc/FileReader.d.ts.map +1 -0
  44. package/lib/cjs/pointcloud/format/opc/FileReader.js +249 -0
  45. package/lib/cjs/pointcloud/format/opc/FileReader.js.map +1 -0
  46. package/lib/cjs/pointcloud/format/opc/FileRecord.d.ts +90 -0
  47. package/lib/cjs/pointcloud/format/opc/FileRecord.d.ts.map +1 -0
  48. package/lib/cjs/pointcloud/format/opc/FileRecord.js +126 -0
  49. package/lib/cjs/pointcloud/format/opc/FileRecord.js.map +1 -0
  50. package/lib/cjs/pointcloud/format/opc/GeometryReader.d.ts +80 -0
  51. package/lib/cjs/pointcloud/format/opc/GeometryReader.d.ts.map +1 -0
  52. package/lib/cjs/pointcloud/format/opc/GeometryReader.js +164 -0
  53. package/lib/cjs/pointcloud/format/opc/GeometryReader.js.map +1 -0
  54. package/lib/cjs/pointcloud/format/opc/GeometryRecord.d.ts +54 -0
  55. package/lib/cjs/pointcloud/format/opc/GeometryRecord.d.ts.map +1 -0
  56. package/lib/cjs/pointcloud/format/opc/GeometryRecord.js +108 -0
  57. package/lib/cjs/pointcloud/format/opc/GeometryRecord.js.map +1 -0
  58. package/lib/cjs/pointcloud/format/opc/OPCReader.d.ts +158 -0
  59. package/lib/cjs/pointcloud/format/opc/OPCReader.d.ts.map +1 -0
  60. package/lib/cjs/pointcloud/format/opc/OPCReader.js +320 -0
  61. package/lib/cjs/pointcloud/format/opc/OPCReader.js.map +1 -0
  62. package/lib/cjs/pointcloud/format/opc/PointReader.d.ts +73 -0
  63. package/lib/cjs/pointcloud/format/opc/PointReader.d.ts.map +1 -0
  64. package/lib/cjs/pointcloud/format/opc/PointReader.js +153 -0
  65. package/lib/cjs/pointcloud/format/opc/PointReader.js.map +1 -0
  66. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.d.ts +64 -0
  67. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.d.ts.map +1 -0
  68. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.js +93 -0
  69. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.js.map +1 -0
  70. package/lib/cjs/pointcloud/format/opc/TileRecord.d.ts +89 -0
  71. package/lib/cjs/pointcloud/format/opc/TileRecord.d.ts.map +1 -0
  72. package/lib/cjs/pointcloud/format/opc/TileRecord.js +162 -0
  73. package/lib/cjs/pointcloud/format/opc/TileRecord.js.map +1 -0
  74. package/lib/cjs/pointcloud/model/AttributeTypes.d.ts +38 -0
  75. package/lib/cjs/pointcloud/model/AttributeTypes.d.ts.map +1 -0
  76. package/lib/cjs/pointcloud/model/AttributeTypes.js +65 -0
  77. package/lib/cjs/pointcloud/model/AttributeTypes.js.map +1 -0
  78. package/lib/cjs/pointcloud/model/AttributeValue.d.ts +248 -0
  79. package/lib/cjs/pointcloud/model/AttributeValue.d.ts.map +1 -0
  80. package/lib/cjs/pointcloud/model/AttributeValue.js +509 -0
  81. package/lib/cjs/pointcloud/model/AttributeValue.js.map +1 -0
  82. package/lib/cjs/pointcloud/model/BlockIndex.d.ts +50 -0
  83. package/lib/cjs/pointcloud/model/BlockIndex.d.ts.map +1 -0
  84. package/lib/cjs/pointcloud/model/BlockIndex.js +49 -0
  85. package/lib/cjs/pointcloud/model/BlockIndex.js.map +1 -0
  86. package/lib/cjs/pointcloud/model/CloudPoint.d.ts +211 -0
  87. package/lib/cjs/pointcloud/model/CloudPoint.d.ts.map +1 -0
  88. package/lib/cjs/pointcloud/model/CloudPoint.js +319 -0
  89. package/lib/cjs/pointcloud/model/CloudPoint.js.map +1 -0
  90. package/lib/cjs/pointcloud/model/Grid.d.ts +92 -0
  91. package/lib/cjs/pointcloud/model/Grid.d.ts.map +1 -0
  92. package/lib/cjs/pointcloud/model/Grid.js +130 -0
  93. package/lib/cjs/pointcloud/model/Grid.js.map +1 -0
  94. package/lib/cjs/pointcloud/model/GridIndex.d.ts +67 -0
  95. package/lib/cjs/pointcloud/model/GridIndex.d.ts.map +1 -0
  96. package/lib/cjs/pointcloud/model/GridIndex.js +94 -0
  97. package/lib/cjs/pointcloud/model/GridIndex.js.map +1 -0
  98. package/lib/cjs/pointcloud/model/PointAttribute.d.ts +209 -0
  99. package/lib/cjs/pointcloud/model/PointAttribute.d.ts.map +1 -0
  100. package/lib/cjs/pointcloud/model/PointAttribute.js +375 -0
  101. package/lib/cjs/pointcloud/model/PointAttribute.js.map +1 -0
  102. package/lib/cjs/pointcloud/model/PointCloudReader.d.ts +157 -0
  103. package/lib/cjs/pointcloud/model/PointCloudReader.d.ts.map +1 -0
  104. package/lib/cjs/pointcloud/model/PointCloudReader.js +190 -0
  105. package/lib/cjs/pointcloud/model/PointCloudReader.js.map +1 -0
  106. package/lib/cjs/pointcloud/model/PointData.d.ts +18 -0
  107. package/lib/cjs/pointcloud/model/PointData.d.ts.map +1 -0
  108. package/lib/cjs/pointcloud/model/PointData.js +25 -0
  109. package/lib/cjs/pointcloud/model/PointData.js.map +1 -0
  110. package/lib/cjs/pointcloud/model/PointDataRaw.d.ts +35 -0
  111. package/lib/cjs/pointcloud/model/PointDataRaw.d.ts.map +1 -0
  112. package/lib/cjs/pointcloud/model/PointDataRaw.js +70 -0
  113. package/lib/cjs/pointcloud/model/PointDataRaw.js.map +1 -0
  114. package/lib/cjs/pointcloud/model/ReadRequest.d.ts +176 -0
  115. package/lib/cjs/pointcloud/model/ReadRequest.d.ts.map +1 -0
  116. package/lib/cjs/pointcloud/model/ReadRequest.js +240 -0
  117. package/lib/cjs/pointcloud/model/ReadRequest.js.map +1 -0
  118. package/lib/cjs/pointcloud/model/StandardAttributes.d.ts +41 -0
  119. package/lib/cjs/pointcloud/model/StandardAttributes.d.ts.map +1 -0
  120. package/lib/cjs/pointcloud/model/StandardAttributes.js +48 -0
  121. package/lib/cjs/pointcloud/model/StandardAttributes.js.map +1 -0
  122. package/lib/cjs/pointcloud/model/TileIndex.d.ts +48 -0
  123. package/lib/cjs/pointcloud/model/TileIndex.d.ts.map +1 -0
  124. package/lib/cjs/pointcloud/model/TileIndex.js +48 -0
  125. package/lib/cjs/pointcloud/model/TileIndex.js.map +1 -0
  126. package/lib/cjs/pointcloud/render/AViewRequest.d.ts +39 -0
  127. package/lib/cjs/pointcloud/render/AViewRequest.d.ts.map +1 -0
  128. package/lib/cjs/pointcloud/render/AViewRequest.js +25 -0
  129. package/lib/cjs/pointcloud/render/AViewRequest.js.map +1 -0
  130. package/lib/cjs/pointcloud/render/Block.d.ts +68 -0
  131. package/lib/cjs/pointcloud/render/Block.d.ts.map +1 -0
  132. package/lib/cjs/pointcloud/render/Block.js +120 -0
  133. package/lib/cjs/pointcloud/render/Block.js.map +1 -0
  134. package/lib/cjs/pointcloud/render/DataManager.d.ts +137 -0
  135. package/lib/cjs/pointcloud/render/DataManager.d.ts.map +1 -0
  136. package/lib/cjs/pointcloud/render/DataManager.js +343 -0
  137. package/lib/cjs/pointcloud/render/DataManager.js.map +1 -0
  138. package/lib/cjs/pointcloud/render/FrameData.d.ts +31 -0
  139. package/lib/cjs/pointcloud/render/FrameData.d.ts.map +1 -0
  140. package/lib/cjs/pointcloud/render/FrameData.js +40 -0
  141. package/lib/cjs/pointcloud/render/FrameData.js.map +1 -0
  142. package/lib/cjs/pointcloud/render/Level.d.ts +91 -0
  143. package/lib/cjs/pointcloud/render/Level.d.ts.map +1 -0
  144. package/lib/cjs/pointcloud/render/Level.js +120 -0
  145. package/lib/cjs/pointcloud/render/Level.js.map +1 -0
  146. package/lib/cjs/pointcloud/render/TileLoadSorter.d.ts +61 -0
  147. package/lib/cjs/pointcloud/render/TileLoadSorter.d.ts.map +1 -0
  148. package/lib/cjs/pointcloud/render/TileLoadSorter.js +100 -0
  149. package/lib/cjs/pointcloud/render/TileLoadSorter.js.map +1 -0
  150. package/lib/cjs/pointcloud/render/ViewTree.d.ts +114 -0
  151. package/lib/cjs/pointcloud/render/ViewTree.d.ts.map +1 -0
  152. package/lib/cjs/pointcloud/render/ViewTree.js +364 -0
  153. package/lib/cjs/pointcloud/render/ViewTree.js.map +1 -0
  154. package/lib/cjs/spatial/crs/CRSEngine.d.ts +56 -0
  155. package/lib/cjs/spatial/crs/CRSEngine.d.ts.map +1 -0
  156. package/lib/cjs/spatial/crs/CRSEngine.js +94 -0
  157. package/lib/cjs/spatial/crs/CRSEngine.js.map +1 -0
  158. package/lib/cjs/spatial/crs/CRSManager.d.ts +50 -0
  159. package/lib/cjs/spatial/crs/CRSManager.d.ts.map +1 -0
  160. package/lib/cjs/spatial/crs/CRSManager.js +110 -0
  161. package/lib/cjs/spatial/crs/CRSManager.js.map +1 -0
  162. package/lib/cjs/spatial/ecrs/Axis.d.ts +78 -0
  163. package/lib/cjs/spatial/ecrs/Axis.d.ts.map +1 -0
  164. package/lib/cjs/spatial/ecrs/Axis.js +94 -0
  165. package/lib/cjs/spatial/ecrs/Axis.js.map +1 -0
  166. package/lib/cjs/spatial/ecrs/CRS.d.ts +448 -0
  167. package/lib/cjs/spatial/ecrs/CRS.d.ts.map +1 -0
  168. package/lib/cjs/spatial/ecrs/CRS.js +931 -0
  169. package/lib/cjs/spatial/ecrs/CRS.js.map +1 -0
  170. package/lib/cjs/spatial/ecrs/CoordinateSystem.d.ts +143 -0
  171. package/lib/cjs/spatial/ecrs/CoordinateSystem.d.ts.map +1 -0
  172. package/lib/cjs/spatial/ecrs/CoordinateSystem.js +327 -0
  173. package/lib/cjs/spatial/ecrs/CoordinateSystem.js.map +1 -0
  174. package/lib/cjs/spatial/ecrs/DataFileUnit.d.ts +11 -0
  175. package/lib/cjs/spatial/ecrs/DataFileUnit.d.ts.map +1 -0
  176. package/lib/cjs/spatial/ecrs/DataFileUnit.js +105 -0
  177. package/lib/cjs/spatial/ecrs/DataFileUnit.js.map +1 -0
  178. package/lib/cjs/spatial/ecrs/Datum.d.ts +112 -0
  179. package/lib/cjs/spatial/ecrs/Datum.d.ts.map +1 -0
  180. package/lib/cjs/spatial/ecrs/Datum.js +167 -0
  181. package/lib/cjs/spatial/ecrs/Datum.js.map +1 -0
  182. package/lib/cjs/spatial/ecrs/Ellipsoid.d.ts +189 -0
  183. package/lib/cjs/spatial/ecrs/Ellipsoid.d.ts.map +1 -0
  184. package/lib/cjs/spatial/ecrs/Ellipsoid.js +337 -0
  185. package/lib/cjs/spatial/ecrs/Ellipsoid.js.map +1 -0
  186. package/lib/cjs/spatial/ecrs/OnlineEngine.d.ts +49 -0
  187. package/lib/cjs/spatial/ecrs/OnlineEngine.d.ts.map +1 -0
  188. package/lib/cjs/spatial/ecrs/OnlineEngine.js +103 -0
  189. package/lib/cjs/spatial/ecrs/OnlineEngine.js.map +1 -0
  190. package/lib/cjs/spatial/ecrs/OnlineRegistry.d.ts +38 -0
  191. package/lib/cjs/spatial/ecrs/OnlineRegistry.d.ts.map +1 -0
  192. package/lib/cjs/spatial/ecrs/OnlineRegistry.js +77 -0
  193. package/lib/cjs/spatial/ecrs/OnlineRegistry.js.map +1 -0
  194. package/lib/cjs/spatial/ecrs/Operation.d.ts +192 -0
  195. package/lib/cjs/spatial/ecrs/Operation.d.ts.map +1 -0
  196. package/lib/cjs/spatial/ecrs/Operation.js +346 -0
  197. package/lib/cjs/spatial/ecrs/Operation.js.map +1 -0
  198. package/lib/cjs/spatial/ecrs/OperationMethod.d.ts +72 -0
  199. package/lib/cjs/spatial/ecrs/OperationMethod.d.ts.map +1 -0
  200. package/lib/cjs/spatial/ecrs/OperationMethod.js +76 -0
  201. package/lib/cjs/spatial/ecrs/OperationMethod.js.map +1 -0
  202. package/lib/cjs/spatial/ecrs/ParameterValue.d.ts +50 -0
  203. package/lib/cjs/spatial/ecrs/ParameterValue.d.ts.map +1 -0
  204. package/lib/cjs/spatial/ecrs/ParameterValue.js +66 -0
  205. package/lib/cjs/spatial/ecrs/ParameterValue.js.map +1 -0
  206. package/lib/cjs/spatial/ecrs/ParameterValueList.d.ts +73 -0
  207. package/lib/cjs/spatial/ecrs/ParameterValueList.d.ts.map +1 -0
  208. package/lib/cjs/spatial/ecrs/ParameterValueList.js +121 -0
  209. package/lib/cjs/spatial/ecrs/ParameterValueList.js.map +1 -0
  210. package/lib/cjs/spatial/ecrs/PrimeMeridian.d.ts +79 -0
  211. package/lib/cjs/spatial/ecrs/PrimeMeridian.d.ts.map +1 -0
  212. package/lib/cjs/spatial/ecrs/PrimeMeridian.js +109 -0
  213. package/lib/cjs/spatial/ecrs/PrimeMeridian.js.map +1 -0
  214. package/lib/cjs/spatial/ecrs/Registry.d.ts +110 -0
  215. package/lib/cjs/spatial/ecrs/Registry.d.ts.map +1 -0
  216. package/lib/cjs/spatial/ecrs/Registry.js +208 -0
  217. package/lib/cjs/spatial/ecrs/Registry.js.map +1 -0
  218. package/lib/cjs/spatial/ecrs/Transform.d.ts +78 -0
  219. package/lib/cjs/spatial/ecrs/Transform.d.ts.map +1 -0
  220. package/lib/cjs/spatial/ecrs/Transform.js +397 -0
  221. package/lib/cjs/spatial/ecrs/Transform.js.map +1 -0
  222. package/lib/cjs/spatial/ecrs/Unit.d.ts +171 -0
  223. package/lib/cjs/spatial/ecrs/Unit.d.ts.map +1 -0
  224. package/lib/cjs/spatial/ecrs/Unit.js +337 -0
  225. package/lib/cjs/spatial/ecrs/Unit.js.map +1 -0
  226. package/lib/cjs/spatial/ecrs/VerticalModel.d.ts +70 -0
  227. package/lib/cjs/spatial/ecrs/VerticalModel.d.ts.map +1 -0
  228. package/lib/cjs/spatial/ecrs/VerticalModel.js +89 -0
  229. package/lib/cjs/spatial/ecrs/VerticalModel.js.map +1 -0
  230. package/lib/cjs/spatial/ecrs/WellKnownText.d.ts +154 -0
  231. package/lib/cjs/spatial/ecrs/WellKnownText.d.ts.map +1 -0
  232. package/lib/cjs/spatial/ecrs/WellKnownText.js +495 -0
  233. package/lib/cjs/spatial/ecrs/WellKnownText.js.map +1 -0
  234. package/lib/cjs/spatial/ecrs/WellKnownTextNode.d.ts +70 -0
  235. package/lib/cjs/spatial/ecrs/WellKnownTextNode.d.ts.map +1 -0
  236. package/lib/cjs/spatial/ecrs/WellKnownTextNode.js +129 -0
  237. package/lib/cjs/spatial/ecrs/WellKnownTextNode.js.map +1 -0
  238. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.d.ts +102 -0
  239. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.d.ts.map +1 -0
  240. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.js +163 -0
  241. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.js.map +1 -0
  242. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts +80 -0
  243. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts.map +1 -0
  244. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.js +126 -0
  245. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.js.map +1 -0
  246. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts +48 -0
  247. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts.map +1 -0
  248. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js +74 -0
  249. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js.map +1 -0
  250. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.d.ts +73 -0
  251. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.d.ts.map +1 -0
  252. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.js +130 -0
  253. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.js.map +1 -0
  254. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.d.ts +121 -0
  255. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.d.ts.map +1 -0
  256. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.js +180 -0
  257. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.js.map +1 -0
  258. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.d.ts +74 -0
  259. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.d.ts.map +1 -0
  260. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.js +113 -0
  261. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.js.map +1 -0
  262. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.d.ts +97 -0
  263. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.d.ts.map +1 -0
  264. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.js +174 -0
  265. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.js.map +1 -0
  266. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.d.ts +124 -0
  267. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.d.ts.map +1 -0
  268. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.js +209 -0
  269. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.js.map +1 -0
  270. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.d.ts +109 -0
  271. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.d.ts.map +1 -0
  272. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.js +184 -0
  273. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.js.map +1 -0
  274. package/lib/cjs/spatial/ecrs/transformation/PositionVector.d.ts +91 -0
  275. package/lib/cjs/spatial/ecrs/transformation/PositionVector.d.ts.map +1 -0
  276. package/lib/cjs/spatial/ecrs/transformation/PositionVector.js +131 -0
  277. package/lib/cjs/spatial/ecrs/transformation/PositionVector.js.map +1 -0
  278. package/lib/cjs/spatial/geom/Bounds.d.ts +34 -0
  279. package/lib/cjs/spatial/geom/Bounds.d.ts.map +1 -0
  280. package/lib/cjs/spatial/geom/Bounds.js +157 -0
  281. package/lib/cjs/spatial/geom/Bounds.js.map +1 -0
  282. package/lib/cjs/spatial/geom/Coordinate.d.ts +62 -0
  283. package/lib/cjs/spatial/geom/Coordinate.d.ts.map +1 -0
  284. package/lib/cjs/spatial/geom/Coordinate.js +187 -0
  285. package/lib/cjs/spatial/geom/Coordinate.js.map +1 -0
  286. package/lib/cjs/spatial/geom/Line.d.ts +226 -0
  287. package/lib/cjs/spatial/geom/Line.d.ts.map +1 -0
  288. package/lib/cjs/spatial/geom/Line.js +433 -0
  289. package/lib/cjs/spatial/geom/Line.js.map +1 -0
  290. package/lib/cjs/spatial/geom/Transform.d.ts +341 -0
  291. package/lib/cjs/spatial/geom/Transform.d.ts.map +1 -0
  292. package/lib/cjs/spatial/geom/Transform.js +749 -0
  293. package/lib/cjs/spatial/geom/Transform.js.map +1 -0
  294. package/lib/cjs/system/buffer/ABuffer.d.ts +52 -0
  295. package/lib/cjs/system/buffer/ABuffer.d.ts.map +1 -0
  296. package/lib/cjs/system/buffer/ABuffer.js +91 -0
  297. package/lib/cjs/system/buffer/ABuffer.js.map +1 -0
  298. package/lib/cjs/system/buffer/Float32Buffer.d.ts +47 -0
  299. package/lib/cjs/system/buffer/Float32Buffer.d.ts.map +1 -0
  300. package/lib/cjs/system/buffer/Float32Buffer.js +61 -0
  301. package/lib/cjs/system/buffer/Float32Buffer.js.map +1 -0
  302. package/lib/cjs/system/buffer/LittleEndian.d.ts +150 -0
  303. package/lib/cjs/system/buffer/LittleEndian.d.ts.map +1 -0
  304. package/lib/cjs/system/buffer/LittleEndian.js +304 -0
  305. package/lib/cjs/system/buffer/LittleEndian.js.map +1 -0
  306. package/lib/cjs/system/buffer/Uint16Buffer.d.ts +50 -0
  307. package/lib/cjs/system/buffer/Uint16Buffer.d.ts.map +1 -0
  308. package/lib/cjs/system/buffer/Uint16Buffer.js +66 -0
  309. package/lib/cjs/system/buffer/Uint16Buffer.js.map +1 -0
  310. package/lib/cjs/system/buffer/Uint8Buffer.d.ts +50 -0
  311. package/lib/cjs/system/buffer/Uint8Buffer.d.ts.map +1 -0
  312. package/lib/cjs/system/buffer/Uint8Buffer.js +66 -0
  313. package/lib/cjs/system/buffer/Uint8Buffer.js.map +1 -0
  314. package/lib/cjs/system/collection/AList.d.ts +31 -0
  315. package/lib/cjs/system/collection/AList.d.ts.map +1 -0
  316. package/lib/cjs/system/collection/AList.js +71 -0
  317. package/lib/cjs/system/collection/AList.js.map +1 -0
  318. package/lib/cjs/system/collection/IntMap.d.ts +19 -0
  319. package/lib/cjs/system/collection/IntMap.d.ts.map +1 -0
  320. package/lib/cjs/system/collection/IntMap.js +36 -0
  321. package/lib/cjs/system/collection/IntMap.js.map +1 -0
  322. package/lib/cjs/system/collection/StringMap.d.ts +27 -0
  323. package/lib/cjs/system/collection/StringMap.d.ts.map +1 -0
  324. package/lib/cjs/system/collection/StringMap.js +64 -0
  325. package/lib/cjs/system/collection/StringMap.js.map +1 -0
  326. package/lib/cjs/system/io/ABufferInStream.d.ts +30 -0
  327. package/lib/cjs/system/io/ABufferInStream.d.ts.map +1 -0
  328. package/lib/cjs/system/io/ABufferInStream.js +47 -0
  329. package/lib/cjs/system/io/ABufferInStream.js.map +1 -0
  330. package/lib/cjs/system/io/InStream.d.ts +24 -0
  331. package/lib/cjs/system/io/InStream.d.ts.map +1 -0
  332. package/lib/cjs/system/io/InStream.js +35 -0
  333. package/lib/cjs/system/io/InStream.js.map +1 -0
  334. package/lib/cjs/system/io/OutStream.d.ts +24 -0
  335. package/lib/cjs/system/io/OutStream.d.ts.map +1 -0
  336. package/lib/cjs/system/io/OutStream.js +34 -0
  337. package/lib/cjs/system/io/OutStream.js.map +1 -0
  338. package/lib/cjs/system/runtime/ALong.d.ts +330 -0
  339. package/lib/cjs/system/runtime/ALong.d.ts.map +1 -0
  340. package/lib/cjs/system/runtime/ALong.js +688 -0
  341. package/lib/cjs/system/runtime/ALong.js.map +1 -0
  342. package/lib/cjs/system/runtime/ASystem.d.ts +15 -0
  343. package/lib/cjs/system/runtime/ASystem.d.ts.map +1 -0
  344. package/lib/cjs/system/runtime/ASystem.js +32 -0
  345. package/lib/cjs/system/runtime/ASystem.js.map +1 -0
  346. package/lib/cjs/system/runtime/Downloader.d.ts +18 -0
  347. package/lib/cjs/system/runtime/Downloader.d.ts.map +1 -0
  348. package/lib/cjs/system/runtime/Downloader.js +39 -0
  349. package/lib/cjs/system/runtime/Downloader.js.map +1 -0
  350. package/lib/cjs/system/runtime/DownloaderNode.d.ts +19 -0
  351. package/lib/cjs/system/runtime/DownloaderNode.d.ts.map +1 -0
  352. package/lib/cjs/system/runtime/DownloaderNode.js +130 -0
  353. package/lib/cjs/system/runtime/DownloaderNode.js.map +1 -0
  354. package/lib/cjs/system/runtime/DownloaderXhr.d.ts +19 -0
  355. package/lib/cjs/system/runtime/DownloaderXhr.d.ts.map +1 -0
  356. package/lib/cjs/system/runtime/DownloaderXhr.js +132 -0
  357. package/lib/cjs/system/runtime/DownloaderXhr.js.map +1 -0
  358. package/lib/cjs/system/runtime/Message.d.ts +17 -0
  359. package/lib/cjs/system/runtime/Message.d.ts.map +1 -0
  360. package/lib/cjs/system/runtime/Message.js +40 -0
  361. package/lib/cjs/system/runtime/Message.js.map +1 -0
  362. package/lib/cjs/system/runtime/Numbers.d.ts +35 -0
  363. package/lib/cjs/system/runtime/Numbers.d.ts.map +1 -0
  364. package/lib/cjs/system/runtime/Numbers.js +88 -0
  365. package/lib/cjs/system/runtime/Numbers.js.map +1 -0
  366. package/lib/cjs/system/runtime/Strings.d.ts +50 -0
  367. package/lib/cjs/system/runtime/Strings.d.ts.map +1 -0
  368. package/lib/cjs/system/runtime/Strings.js +189 -0
  369. package/lib/cjs/system/runtime/Strings.js.map +1 -0
  370. package/lib/cjs/system/runtime/iComparator.d.ts +13 -0
  371. package/lib/cjs/system/runtime/iComparator.d.ts.map +1 -0
  372. package/lib/cjs/system/runtime/iComparator.js +10 -0
  373. package/lib/cjs/system/runtime/iComparator.js.map +1 -0
  374. package/lib/cjs/system/storage/CacheList.d.ts +40 -0
  375. package/lib/cjs/system/storage/CacheList.d.ts.map +1 -0
  376. package/lib/cjs/system/storage/CacheList.js +81 -0
  377. package/lib/cjs/system/storage/CacheList.js.map +1 -0
  378. package/lib/cjs/system/storage/CachedItem.d.ts +22 -0
  379. package/lib/cjs/system/storage/CachedItem.d.ts.map +1 -0
  380. package/lib/cjs/system/storage/CachedItem.js +26 -0
  381. package/lib/cjs/system/storage/CachedItem.js.map +1 -0
  382. package/lib/cjs/system/storage/ContentLoader.d.ts +65 -0
  383. package/lib/cjs/system/storage/ContentLoader.d.ts.map +1 -0
  384. package/lib/cjs/system/storage/ContentLoader.js +96 -0
  385. package/lib/cjs/system/storage/ContentLoader.js.map +1 -0
  386. package/lib/cjs/system/storage/FileContent.d.ts +20 -0
  387. package/lib/cjs/system/storage/FileContent.d.ts.map +1 -0
  388. package/lib/cjs/system/storage/FileContent.js +25 -0
  389. package/lib/cjs/system/storage/FileContent.js.map +1 -0
  390. package/lib/cjs/system/storage/FileRange.d.ts +21 -0
  391. package/lib/cjs/system/storage/FileRange.d.ts.map +1 -0
  392. package/lib/cjs/system/storage/FileRange.js +25 -0
  393. package/lib/cjs/system/storage/FileRange.js.map +1 -0
  394. package/lib/cjs/system/storage/FileStorage.d.ts +45 -0
  395. package/lib/cjs/system/storage/FileStorage.d.ts.map +1 -0
  396. package/lib/cjs/system/storage/FileStorage.js +63 -0
  397. package/lib/cjs/system/storage/FileStorage.js.map +1 -0
  398. package/lib/cjs/system/storage/NodeFS.d.ts +42 -0
  399. package/lib/cjs/system/storage/NodeFS.d.ts.map +1 -0
  400. package/lib/cjs/system/storage/NodeFS.js +80 -0
  401. package/lib/cjs/system/storage/NodeFS.js.map +1 -0
  402. package/lib/cjs/system/storage/PageCachedFile.d.ts +55 -0
  403. package/lib/cjs/system/storage/PageCachedFile.d.ts.map +1 -0
  404. package/lib/cjs/system/storage/PageCachedFile.js +166 -0
  405. package/lib/cjs/system/storage/PageCachedFile.js.map +1 -0
  406. package/lib/cjs/system/storage/UrlFS.d.ts +54 -0
  407. package/lib/cjs/system/storage/UrlFS.d.ts.map +1 -0
  408. package/lib/cjs/system/storage/UrlFS.js +115 -0
  409. package/lib/cjs/system/storage/UrlFS.js.map +1 -0
  410. package/lib/esm/core-orbitgt.d.ts +27 -0
  411. package/lib/esm/core-orbitgt.d.ts.map +1 -0
  412. package/lib/esm/core-orbitgt.js +32 -0
  413. package/lib/esm/core-orbitgt.js.map +1 -0
  414. package/lib/esm/pointcloud/format/opc/AttributeMask.d.ts +31 -0
  415. package/lib/esm/pointcloud/format/opc/AttributeMask.d.ts.map +1 -0
  416. package/lib/esm/pointcloud/format/opc/AttributeMask.js +44 -0
  417. package/lib/esm/pointcloud/format/opc/AttributeMask.js.map +1 -0
  418. package/lib/esm/pointcloud/format/opc/AttributeReader.d.ts +64 -0
  419. package/lib/esm/pointcloud/format/opc/AttributeReader.d.ts.map +1 -0
  420. package/lib/esm/pointcloud/format/opc/AttributeReader.js +21 -0
  421. package/lib/esm/pointcloud/format/opc/AttributeReader.js.map +1 -0
  422. package/lib/esm/pointcloud/format/opc/BlockRecord.d.ts +55 -0
  423. package/lib/esm/pointcloud/format/opc/BlockRecord.d.ts.map +1 -0
  424. package/lib/esm/pointcloud/format/opc/BlockRecord.js +81 -0
  425. package/lib/esm/pointcloud/format/opc/BlockRecord.js.map +1 -0
  426. package/lib/esm/pointcloud/format/opc/ContainerFile.d.ts +86 -0
  427. package/lib/esm/pointcloud/format/opc/ContainerFile.d.ts.map +1 -0
  428. package/lib/esm/pointcloud/format/opc/ContainerFile.js +196 -0
  429. package/lib/esm/pointcloud/format/opc/ContainerFile.js.map +1 -0
  430. package/lib/esm/pointcloud/format/opc/ContainerFilePart.d.ts +56 -0
  431. package/lib/esm/pointcloud/format/opc/ContainerFilePart.d.ts.map +1 -0
  432. package/lib/esm/pointcloud/format/opc/ContainerFilePart.js +72 -0
  433. package/lib/esm/pointcloud/format/opc/ContainerFilePart.js.map +1 -0
  434. package/lib/esm/pointcloud/format/opc/DirectoryReader.d.ts +76 -0
  435. package/lib/esm/pointcloud/format/opc/DirectoryReader.d.ts.map +1 -0
  436. package/lib/esm/pointcloud/format/opc/DirectoryReader.js +166 -0
  437. package/lib/esm/pointcloud/format/opc/DirectoryReader.js.map +1 -0
  438. package/lib/esm/pointcloud/format/opc/DirectoryRecord.d.ts +60 -0
  439. package/lib/esm/pointcloud/format/opc/DirectoryRecord.d.ts.map +1 -0
  440. package/lib/esm/pointcloud/format/opc/DirectoryRecord.js +86 -0
  441. package/lib/esm/pointcloud/format/opc/DirectoryRecord.js.map +1 -0
  442. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.d.ts +107 -0
  443. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.d.ts.map +1 -0
  444. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.js +194 -0
  445. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.js.map +1 -0
  446. package/lib/esm/pointcloud/format/opc/FileAccess.d.ts +40 -0
  447. package/lib/esm/pointcloud/format/opc/FileAccess.d.ts.map +1 -0
  448. package/lib/esm/pointcloud/format/opc/FileAccess.js +45 -0
  449. package/lib/esm/pointcloud/format/opc/FileAccess.js.map +1 -0
  450. package/lib/esm/pointcloud/format/opc/FileReader.d.ts +119 -0
  451. package/lib/esm/pointcloud/format/opc/FileReader.d.ts.map +1 -0
  452. package/lib/esm/pointcloud/format/opc/FileReader.js +245 -0
  453. package/lib/esm/pointcloud/format/opc/FileReader.js.map +1 -0
  454. package/lib/esm/pointcloud/format/opc/FileRecord.d.ts +90 -0
  455. package/lib/esm/pointcloud/format/opc/FileRecord.d.ts.map +1 -0
  456. package/lib/esm/pointcloud/format/opc/FileRecord.js +122 -0
  457. package/lib/esm/pointcloud/format/opc/FileRecord.js.map +1 -0
  458. package/lib/esm/pointcloud/format/opc/GeometryReader.d.ts +80 -0
  459. package/lib/esm/pointcloud/format/opc/GeometryReader.d.ts.map +1 -0
  460. package/lib/esm/pointcloud/format/opc/GeometryReader.js +160 -0
  461. package/lib/esm/pointcloud/format/opc/GeometryReader.js.map +1 -0
  462. package/lib/esm/pointcloud/format/opc/GeometryRecord.d.ts +54 -0
  463. package/lib/esm/pointcloud/format/opc/GeometryRecord.d.ts.map +1 -0
  464. package/lib/esm/pointcloud/format/opc/GeometryRecord.js +104 -0
  465. package/lib/esm/pointcloud/format/opc/GeometryRecord.js.map +1 -0
  466. package/lib/esm/pointcloud/format/opc/OPCReader.d.ts +158 -0
  467. package/lib/esm/pointcloud/format/opc/OPCReader.d.ts.map +1 -0
  468. package/lib/esm/pointcloud/format/opc/OPCReader.js +316 -0
  469. package/lib/esm/pointcloud/format/opc/OPCReader.js.map +1 -0
  470. package/lib/esm/pointcloud/format/opc/PointReader.d.ts +73 -0
  471. package/lib/esm/pointcloud/format/opc/PointReader.d.ts.map +1 -0
  472. package/lib/esm/pointcloud/format/opc/PointReader.js +149 -0
  473. package/lib/esm/pointcloud/format/opc/PointReader.js.map +1 -0
  474. package/lib/esm/pointcloud/format/opc/TileReadBuffer.d.ts +64 -0
  475. package/lib/esm/pointcloud/format/opc/TileReadBuffer.d.ts.map +1 -0
  476. package/lib/esm/pointcloud/format/opc/TileReadBuffer.js +89 -0
  477. package/lib/esm/pointcloud/format/opc/TileReadBuffer.js.map +1 -0
  478. package/lib/esm/pointcloud/format/opc/TileRecord.d.ts +89 -0
  479. package/lib/esm/pointcloud/format/opc/TileRecord.d.ts.map +1 -0
  480. package/lib/esm/pointcloud/format/opc/TileRecord.js +158 -0
  481. package/lib/esm/pointcloud/format/opc/TileRecord.js.map +1 -0
  482. package/lib/esm/pointcloud/model/AttributeTypes.d.ts +38 -0
  483. package/lib/esm/pointcloud/model/AttributeTypes.d.ts.map +1 -0
  484. package/lib/esm/pointcloud/model/AttributeTypes.js +61 -0
  485. package/lib/esm/pointcloud/model/AttributeTypes.js.map +1 -0
  486. package/lib/esm/pointcloud/model/AttributeValue.d.ts +248 -0
  487. package/lib/esm/pointcloud/model/AttributeValue.d.ts.map +1 -0
  488. package/lib/esm/pointcloud/model/AttributeValue.js +505 -0
  489. package/lib/esm/pointcloud/model/AttributeValue.js.map +1 -0
  490. package/lib/esm/pointcloud/model/BlockIndex.d.ts +50 -0
  491. package/lib/esm/pointcloud/model/BlockIndex.d.ts.map +1 -0
  492. package/lib/esm/pointcloud/model/BlockIndex.js +45 -0
  493. package/lib/esm/pointcloud/model/BlockIndex.js.map +1 -0
  494. package/lib/esm/pointcloud/model/CloudPoint.d.ts +211 -0
  495. package/lib/esm/pointcloud/model/CloudPoint.d.ts.map +1 -0
  496. package/lib/esm/pointcloud/model/CloudPoint.js +315 -0
  497. package/lib/esm/pointcloud/model/CloudPoint.js.map +1 -0
  498. package/lib/esm/pointcloud/model/Grid.d.ts +92 -0
  499. package/lib/esm/pointcloud/model/Grid.d.ts.map +1 -0
  500. package/lib/esm/pointcloud/model/Grid.js +126 -0
  501. package/lib/esm/pointcloud/model/Grid.js.map +1 -0
  502. package/lib/esm/pointcloud/model/GridIndex.d.ts +67 -0
  503. package/lib/esm/pointcloud/model/GridIndex.d.ts.map +1 -0
  504. package/lib/esm/pointcloud/model/GridIndex.js +90 -0
  505. package/lib/esm/pointcloud/model/GridIndex.js.map +1 -0
  506. package/lib/esm/pointcloud/model/PointAttribute.d.ts +209 -0
  507. package/lib/esm/pointcloud/model/PointAttribute.d.ts.map +1 -0
  508. package/lib/esm/pointcloud/model/PointAttribute.js +371 -0
  509. package/lib/esm/pointcloud/model/PointAttribute.js.map +1 -0
  510. package/lib/esm/pointcloud/model/PointCloudReader.d.ts +157 -0
  511. package/lib/esm/pointcloud/model/PointCloudReader.d.ts.map +1 -0
  512. package/lib/esm/pointcloud/model/PointCloudReader.js +186 -0
  513. package/lib/esm/pointcloud/model/PointCloudReader.js.map +1 -0
  514. package/lib/esm/pointcloud/model/PointData.d.ts +18 -0
  515. package/lib/esm/pointcloud/model/PointData.d.ts.map +1 -0
  516. package/lib/esm/pointcloud/model/PointData.js +21 -0
  517. package/lib/esm/pointcloud/model/PointData.js.map +1 -0
  518. package/lib/esm/pointcloud/model/PointDataRaw.d.ts +35 -0
  519. package/lib/esm/pointcloud/model/PointDataRaw.d.ts.map +1 -0
  520. package/lib/esm/pointcloud/model/PointDataRaw.js +66 -0
  521. package/lib/esm/pointcloud/model/PointDataRaw.js.map +1 -0
  522. package/lib/esm/pointcloud/model/ReadRequest.d.ts +176 -0
  523. package/lib/esm/pointcloud/model/ReadRequest.d.ts.map +1 -0
  524. package/lib/esm/pointcloud/model/ReadRequest.js +236 -0
  525. package/lib/esm/pointcloud/model/ReadRequest.js.map +1 -0
  526. package/lib/esm/pointcloud/model/StandardAttributes.d.ts +41 -0
  527. package/lib/esm/pointcloud/model/StandardAttributes.d.ts.map +1 -0
  528. package/lib/esm/pointcloud/model/StandardAttributes.js +44 -0
  529. package/lib/esm/pointcloud/model/StandardAttributes.js.map +1 -0
  530. package/lib/esm/pointcloud/model/TileIndex.d.ts +48 -0
  531. package/lib/esm/pointcloud/model/TileIndex.d.ts.map +1 -0
  532. package/lib/esm/pointcloud/model/TileIndex.js +44 -0
  533. package/lib/esm/pointcloud/model/TileIndex.js.map +1 -0
  534. package/lib/esm/pointcloud/render/AViewRequest.d.ts +39 -0
  535. package/lib/esm/pointcloud/render/AViewRequest.d.ts.map +1 -0
  536. package/lib/esm/pointcloud/render/AViewRequest.js +21 -0
  537. package/lib/esm/pointcloud/render/AViewRequest.js.map +1 -0
  538. package/lib/esm/pointcloud/render/Block.d.ts +68 -0
  539. package/lib/esm/pointcloud/render/Block.d.ts.map +1 -0
  540. package/lib/esm/pointcloud/render/Block.js +116 -0
  541. package/lib/esm/pointcloud/render/Block.js.map +1 -0
  542. package/lib/esm/pointcloud/render/DataManager.d.ts +137 -0
  543. package/lib/esm/pointcloud/render/DataManager.d.ts.map +1 -0
  544. package/lib/esm/pointcloud/render/DataManager.js +339 -0
  545. package/lib/esm/pointcloud/render/DataManager.js.map +1 -0
  546. package/lib/esm/pointcloud/render/FrameData.d.ts +31 -0
  547. package/lib/esm/pointcloud/render/FrameData.d.ts.map +1 -0
  548. package/lib/esm/pointcloud/render/FrameData.js +36 -0
  549. package/lib/esm/pointcloud/render/FrameData.js.map +1 -0
  550. package/lib/esm/pointcloud/render/Level.d.ts +91 -0
  551. package/lib/esm/pointcloud/render/Level.d.ts.map +1 -0
  552. package/lib/esm/pointcloud/render/Level.js +116 -0
  553. package/lib/esm/pointcloud/render/Level.js.map +1 -0
  554. package/lib/esm/pointcloud/render/TileLoadSorter.d.ts +61 -0
  555. package/lib/esm/pointcloud/render/TileLoadSorter.d.ts.map +1 -0
  556. package/lib/esm/pointcloud/render/TileLoadSorter.js +96 -0
  557. package/lib/esm/pointcloud/render/TileLoadSorter.js.map +1 -0
  558. package/lib/esm/pointcloud/render/ViewTree.d.ts +114 -0
  559. package/lib/esm/pointcloud/render/ViewTree.d.ts.map +1 -0
  560. package/lib/esm/pointcloud/render/ViewTree.js +360 -0
  561. package/lib/esm/pointcloud/render/ViewTree.js.map +1 -0
  562. package/lib/esm/spatial/crs/CRSEngine.d.ts +56 -0
  563. package/lib/esm/spatial/crs/CRSEngine.d.ts.map +1 -0
  564. package/lib/esm/spatial/crs/CRSEngine.js +90 -0
  565. package/lib/esm/spatial/crs/CRSEngine.js.map +1 -0
  566. package/lib/esm/spatial/crs/CRSManager.d.ts +50 -0
  567. package/lib/esm/spatial/crs/CRSManager.d.ts.map +1 -0
  568. package/lib/esm/spatial/crs/CRSManager.js +106 -0
  569. package/lib/esm/spatial/crs/CRSManager.js.map +1 -0
  570. package/lib/esm/spatial/ecrs/Axis.d.ts +78 -0
  571. package/lib/esm/spatial/ecrs/Axis.d.ts.map +1 -0
  572. package/lib/esm/spatial/ecrs/Axis.js +90 -0
  573. package/lib/esm/spatial/ecrs/Axis.js.map +1 -0
  574. package/lib/esm/spatial/ecrs/CRS.d.ts +448 -0
  575. package/lib/esm/spatial/ecrs/CRS.d.ts.map +1 -0
  576. package/lib/esm/spatial/ecrs/CRS.js +927 -0
  577. package/lib/esm/spatial/ecrs/CRS.js.map +1 -0
  578. package/lib/esm/spatial/ecrs/CoordinateSystem.d.ts +143 -0
  579. package/lib/esm/spatial/ecrs/CoordinateSystem.d.ts.map +1 -0
  580. package/lib/esm/spatial/ecrs/CoordinateSystem.js +323 -0
  581. package/lib/esm/spatial/ecrs/CoordinateSystem.js.map +1 -0
  582. package/lib/esm/spatial/ecrs/DataFileUnit.d.ts +11 -0
  583. package/lib/esm/spatial/ecrs/DataFileUnit.d.ts.map +1 -0
  584. package/lib/esm/spatial/ecrs/DataFileUnit.js +101 -0
  585. package/lib/esm/spatial/ecrs/DataFileUnit.js.map +1 -0
  586. package/lib/esm/spatial/ecrs/Datum.d.ts +112 -0
  587. package/lib/esm/spatial/ecrs/Datum.d.ts.map +1 -0
  588. package/lib/esm/spatial/ecrs/Datum.js +163 -0
  589. package/lib/esm/spatial/ecrs/Datum.js.map +1 -0
  590. package/lib/esm/spatial/ecrs/Ellipsoid.d.ts +189 -0
  591. package/lib/esm/spatial/ecrs/Ellipsoid.d.ts.map +1 -0
  592. package/lib/esm/spatial/ecrs/Ellipsoid.js +333 -0
  593. package/lib/esm/spatial/ecrs/Ellipsoid.js.map +1 -0
  594. package/lib/esm/spatial/ecrs/OnlineEngine.d.ts +49 -0
  595. package/lib/esm/spatial/ecrs/OnlineEngine.d.ts.map +1 -0
  596. package/lib/esm/spatial/ecrs/OnlineEngine.js +99 -0
  597. package/lib/esm/spatial/ecrs/OnlineEngine.js.map +1 -0
  598. package/lib/esm/spatial/ecrs/OnlineRegistry.d.ts +38 -0
  599. package/lib/esm/spatial/ecrs/OnlineRegistry.d.ts.map +1 -0
  600. package/lib/esm/spatial/ecrs/OnlineRegistry.js +73 -0
  601. package/lib/esm/spatial/ecrs/OnlineRegistry.js.map +1 -0
  602. package/lib/esm/spatial/ecrs/Operation.d.ts +192 -0
  603. package/lib/esm/spatial/ecrs/Operation.d.ts.map +1 -0
  604. package/lib/esm/spatial/ecrs/Operation.js +342 -0
  605. package/lib/esm/spatial/ecrs/Operation.js.map +1 -0
  606. package/lib/esm/spatial/ecrs/OperationMethod.d.ts +72 -0
  607. package/lib/esm/spatial/ecrs/OperationMethod.d.ts.map +1 -0
  608. package/lib/esm/spatial/ecrs/OperationMethod.js +72 -0
  609. package/lib/esm/spatial/ecrs/OperationMethod.js.map +1 -0
  610. package/lib/esm/spatial/ecrs/ParameterValue.d.ts +50 -0
  611. package/lib/esm/spatial/ecrs/ParameterValue.d.ts.map +1 -0
  612. package/lib/esm/spatial/ecrs/ParameterValue.js +62 -0
  613. package/lib/esm/spatial/ecrs/ParameterValue.js.map +1 -0
  614. package/lib/esm/spatial/ecrs/ParameterValueList.d.ts +73 -0
  615. package/lib/esm/spatial/ecrs/ParameterValueList.d.ts.map +1 -0
  616. package/lib/esm/spatial/ecrs/ParameterValueList.js +117 -0
  617. package/lib/esm/spatial/ecrs/ParameterValueList.js.map +1 -0
  618. package/lib/esm/spatial/ecrs/PrimeMeridian.d.ts +79 -0
  619. package/lib/esm/spatial/ecrs/PrimeMeridian.d.ts.map +1 -0
  620. package/lib/esm/spatial/ecrs/PrimeMeridian.js +105 -0
  621. package/lib/esm/spatial/ecrs/PrimeMeridian.js.map +1 -0
  622. package/lib/esm/spatial/ecrs/Registry.d.ts +110 -0
  623. package/lib/esm/spatial/ecrs/Registry.d.ts.map +1 -0
  624. package/lib/esm/spatial/ecrs/Registry.js +204 -0
  625. package/lib/esm/spatial/ecrs/Registry.js.map +1 -0
  626. package/lib/esm/spatial/ecrs/Transform.d.ts +78 -0
  627. package/lib/esm/spatial/ecrs/Transform.d.ts.map +1 -0
  628. package/lib/esm/spatial/ecrs/Transform.js +393 -0
  629. package/lib/esm/spatial/ecrs/Transform.js.map +1 -0
  630. package/lib/esm/spatial/ecrs/Unit.d.ts +171 -0
  631. package/lib/esm/spatial/ecrs/Unit.d.ts.map +1 -0
  632. package/lib/esm/spatial/ecrs/Unit.js +333 -0
  633. package/lib/esm/spatial/ecrs/Unit.js.map +1 -0
  634. package/lib/esm/spatial/ecrs/VerticalModel.d.ts +70 -0
  635. package/lib/esm/spatial/ecrs/VerticalModel.d.ts.map +1 -0
  636. package/lib/esm/spatial/ecrs/VerticalModel.js +85 -0
  637. package/lib/esm/spatial/ecrs/VerticalModel.js.map +1 -0
  638. package/lib/esm/spatial/ecrs/WellKnownText.d.ts +154 -0
  639. package/lib/esm/spatial/ecrs/WellKnownText.d.ts.map +1 -0
  640. package/lib/esm/spatial/ecrs/WellKnownText.js +491 -0
  641. package/lib/esm/spatial/ecrs/WellKnownText.js.map +1 -0
  642. package/lib/esm/spatial/ecrs/WellKnownTextNode.d.ts +70 -0
  643. package/lib/esm/spatial/ecrs/WellKnownTextNode.d.ts.map +1 -0
  644. package/lib/esm/spatial/ecrs/WellKnownTextNode.js +125 -0
  645. package/lib/esm/spatial/ecrs/WellKnownTextNode.js.map +1 -0
  646. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.d.ts +102 -0
  647. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.d.ts.map +1 -0
  648. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.js +159 -0
  649. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.js.map +1 -0
  650. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts +80 -0
  651. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts.map +1 -0
  652. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.js +122 -0
  653. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.js.map +1 -0
  654. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts +48 -0
  655. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts.map +1 -0
  656. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js +70 -0
  657. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js.map +1 -0
  658. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.d.ts +73 -0
  659. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.d.ts.map +1 -0
  660. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.js +126 -0
  661. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.js.map +1 -0
  662. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.d.ts +121 -0
  663. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.d.ts.map +1 -0
  664. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.js +176 -0
  665. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.js.map +1 -0
  666. package/lib/esm/spatial/ecrs/projection/Mercator1SP.d.ts +74 -0
  667. package/lib/esm/spatial/ecrs/projection/Mercator1SP.d.ts.map +1 -0
  668. package/lib/esm/spatial/ecrs/projection/Mercator1SP.js +109 -0
  669. package/lib/esm/spatial/ecrs/projection/Mercator1SP.js.map +1 -0
  670. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.d.ts +97 -0
  671. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.d.ts.map +1 -0
  672. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.js +170 -0
  673. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.js.map +1 -0
  674. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.d.ts +124 -0
  675. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.d.ts.map +1 -0
  676. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.js +205 -0
  677. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.js.map +1 -0
  678. package/lib/esm/spatial/ecrs/projection/TransverseMercator.d.ts +109 -0
  679. package/lib/esm/spatial/ecrs/projection/TransverseMercator.d.ts.map +1 -0
  680. package/lib/esm/spatial/ecrs/projection/TransverseMercator.js +180 -0
  681. package/lib/esm/spatial/ecrs/projection/TransverseMercator.js.map +1 -0
  682. package/lib/esm/spatial/ecrs/transformation/PositionVector.d.ts +91 -0
  683. package/lib/esm/spatial/ecrs/transformation/PositionVector.d.ts.map +1 -0
  684. package/lib/esm/spatial/ecrs/transformation/PositionVector.js +127 -0
  685. package/lib/esm/spatial/ecrs/transformation/PositionVector.js.map +1 -0
  686. package/lib/esm/spatial/geom/Bounds.d.ts +34 -0
  687. package/lib/esm/spatial/geom/Bounds.d.ts.map +1 -0
  688. package/lib/esm/spatial/geom/Bounds.js +153 -0
  689. package/lib/esm/spatial/geom/Bounds.js.map +1 -0
  690. package/lib/esm/spatial/geom/Coordinate.d.ts +62 -0
  691. package/lib/esm/spatial/geom/Coordinate.d.ts.map +1 -0
  692. package/lib/esm/spatial/geom/Coordinate.js +183 -0
  693. package/lib/esm/spatial/geom/Coordinate.js.map +1 -0
  694. package/lib/esm/spatial/geom/Line.d.ts +226 -0
  695. package/lib/esm/spatial/geom/Line.d.ts.map +1 -0
  696. package/lib/esm/spatial/geom/Line.js +429 -0
  697. package/lib/esm/spatial/geom/Line.js.map +1 -0
  698. package/lib/esm/spatial/geom/Transform.d.ts +341 -0
  699. package/lib/esm/spatial/geom/Transform.d.ts.map +1 -0
  700. package/lib/esm/spatial/geom/Transform.js +745 -0
  701. package/lib/esm/spatial/geom/Transform.js.map +1 -0
  702. package/lib/esm/system/buffer/ABuffer.d.ts +52 -0
  703. package/lib/esm/system/buffer/ABuffer.d.ts.map +1 -0
  704. package/lib/esm/system/buffer/ABuffer.js +87 -0
  705. package/lib/esm/system/buffer/ABuffer.js.map +1 -0
  706. package/lib/esm/system/buffer/Float32Buffer.d.ts +47 -0
  707. package/lib/esm/system/buffer/Float32Buffer.d.ts.map +1 -0
  708. package/lib/esm/system/buffer/Float32Buffer.js +57 -0
  709. package/lib/esm/system/buffer/Float32Buffer.js.map +1 -0
  710. package/lib/esm/system/buffer/LittleEndian.d.ts +150 -0
  711. package/lib/esm/system/buffer/LittleEndian.d.ts.map +1 -0
  712. package/lib/esm/system/buffer/LittleEndian.js +300 -0
  713. package/lib/esm/system/buffer/LittleEndian.js.map +1 -0
  714. package/lib/esm/system/buffer/Uint16Buffer.d.ts +50 -0
  715. package/lib/esm/system/buffer/Uint16Buffer.d.ts.map +1 -0
  716. package/lib/esm/system/buffer/Uint16Buffer.js +62 -0
  717. package/lib/esm/system/buffer/Uint16Buffer.js.map +1 -0
  718. package/lib/esm/system/buffer/Uint8Buffer.d.ts +50 -0
  719. package/lib/esm/system/buffer/Uint8Buffer.d.ts.map +1 -0
  720. package/lib/esm/system/buffer/Uint8Buffer.js +62 -0
  721. package/lib/esm/system/buffer/Uint8Buffer.js.map +1 -0
  722. package/lib/esm/system/collection/AList.d.ts +31 -0
  723. package/lib/esm/system/collection/AList.d.ts.map +1 -0
  724. package/lib/esm/system/collection/AList.js +67 -0
  725. package/lib/esm/system/collection/AList.js.map +1 -0
  726. package/lib/esm/system/collection/IntMap.d.ts +19 -0
  727. package/lib/esm/system/collection/IntMap.d.ts.map +1 -0
  728. package/lib/esm/system/collection/IntMap.js +32 -0
  729. package/lib/esm/system/collection/IntMap.js.map +1 -0
  730. package/lib/esm/system/collection/StringMap.d.ts +27 -0
  731. package/lib/esm/system/collection/StringMap.d.ts.map +1 -0
  732. package/lib/esm/system/collection/StringMap.js +60 -0
  733. package/lib/esm/system/collection/StringMap.js.map +1 -0
  734. package/lib/esm/system/io/ABufferInStream.d.ts +30 -0
  735. package/lib/esm/system/io/ABufferInStream.d.ts.map +1 -0
  736. package/lib/esm/system/io/ABufferInStream.js +43 -0
  737. package/lib/esm/system/io/ABufferInStream.js.map +1 -0
  738. package/lib/esm/system/io/InStream.d.ts +24 -0
  739. package/lib/esm/system/io/InStream.d.ts.map +1 -0
  740. package/lib/esm/system/io/InStream.js +31 -0
  741. package/lib/esm/system/io/InStream.js.map +1 -0
  742. package/lib/esm/system/io/OutStream.d.ts +24 -0
  743. package/lib/esm/system/io/OutStream.d.ts.map +1 -0
  744. package/lib/esm/system/io/OutStream.js +30 -0
  745. package/lib/esm/system/io/OutStream.js.map +1 -0
  746. package/lib/esm/system/runtime/ALong.d.ts +330 -0
  747. package/lib/esm/system/runtime/ALong.d.ts.map +1 -0
  748. package/lib/esm/system/runtime/ALong.js +684 -0
  749. package/lib/esm/system/runtime/ALong.js.map +1 -0
  750. package/lib/esm/system/runtime/ASystem.d.ts +15 -0
  751. package/lib/esm/system/runtime/ASystem.d.ts.map +1 -0
  752. package/lib/esm/system/runtime/ASystem.js +28 -0
  753. package/lib/esm/system/runtime/ASystem.js.map +1 -0
  754. package/lib/esm/system/runtime/Downloader.d.ts +18 -0
  755. package/lib/esm/system/runtime/Downloader.d.ts.map +1 -0
  756. package/lib/esm/system/runtime/Downloader.js +35 -0
  757. package/lib/esm/system/runtime/Downloader.js.map +1 -0
  758. package/lib/esm/system/runtime/DownloaderNode.d.ts +19 -0
  759. package/lib/esm/system/runtime/DownloaderNode.d.ts.map +1 -0
  760. package/lib/esm/system/runtime/DownloaderNode.js +126 -0
  761. package/lib/esm/system/runtime/DownloaderNode.js.map +1 -0
  762. package/lib/esm/system/runtime/DownloaderXhr.d.ts +19 -0
  763. package/lib/esm/system/runtime/DownloaderXhr.d.ts.map +1 -0
  764. package/lib/esm/system/runtime/DownloaderXhr.js +128 -0
  765. package/lib/esm/system/runtime/DownloaderXhr.js.map +1 -0
  766. package/lib/esm/system/runtime/Message.d.ts +17 -0
  767. package/lib/esm/system/runtime/Message.d.ts.map +1 -0
  768. package/lib/esm/system/runtime/Message.js +36 -0
  769. package/lib/esm/system/runtime/Message.js.map +1 -0
  770. package/lib/esm/system/runtime/Numbers.d.ts +35 -0
  771. package/lib/esm/system/runtime/Numbers.d.ts.map +1 -0
  772. package/lib/esm/system/runtime/Numbers.js +84 -0
  773. package/lib/esm/system/runtime/Numbers.js.map +1 -0
  774. package/lib/esm/system/runtime/Strings.d.ts +50 -0
  775. package/lib/esm/system/runtime/Strings.d.ts.map +1 -0
  776. package/lib/esm/system/runtime/Strings.js +185 -0
  777. package/lib/esm/system/runtime/Strings.js.map +1 -0
  778. package/lib/esm/system/runtime/iComparator.d.ts +13 -0
  779. package/lib/esm/system/runtime/iComparator.d.ts.map +1 -0
  780. package/lib/esm/system/runtime/iComparator.js +9 -0
  781. package/lib/esm/system/runtime/iComparator.js.map +1 -0
  782. package/lib/esm/system/storage/CacheList.d.ts +40 -0
  783. package/lib/esm/system/storage/CacheList.d.ts.map +1 -0
  784. package/lib/esm/system/storage/CacheList.js +77 -0
  785. package/lib/esm/system/storage/CacheList.js.map +1 -0
  786. package/lib/esm/system/storage/CachedItem.d.ts +22 -0
  787. package/lib/esm/system/storage/CachedItem.d.ts.map +1 -0
  788. package/lib/esm/system/storage/CachedItem.js +22 -0
  789. package/lib/esm/system/storage/CachedItem.js.map +1 -0
  790. package/lib/esm/system/storage/ContentLoader.d.ts +65 -0
  791. package/lib/esm/system/storage/ContentLoader.d.ts.map +1 -0
  792. package/lib/esm/system/storage/ContentLoader.js +92 -0
  793. package/lib/esm/system/storage/ContentLoader.js.map +1 -0
  794. package/lib/esm/system/storage/FileContent.d.ts +20 -0
  795. package/lib/esm/system/storage/FileContent.d.ts.map +1 -0
  796. package/lib/esm/system/storage/FileContent.js +21 -0
  797. package/lib/esm/system/storage/FileContent.js.map +1 -0
  798. package/lib/esm/system/storage/FileRange.d.ts +21 -0
  799. package/lib/esm/system/storage/FileRange.d.ts.map +1 -0
  800. package/lib/esm/system/storage/FileRange.js +21 -0
  801. package/lib/esm/system/storage/FileRange.js.map +1 -0
  802. package/lib/esm/system/storage/FileStorage.d.ts +45 -0
  803. package/lib/esm/system/storage/FileStorage.d.ts.map +1 -0
  804. package/lib/esm/system/storage/FileStorage.js +59 -0
  805. package/lib/esm/system/storage/FileStorage.js.map +1 -0
  806. package/lib/esm/system/storage/NodeFS.d.ts +42 -0
  807. package/lib/esm/system/storage/NodeFS.d.ts.map +1 -0
  808. package/lib/esm/system/storage/NodeFS.js +76 -0
  809. package/lib/esm/system/storage/NodeFS.js.map +1 -0
  810. package/lib/esm/system/storage/PageCachedFile.d.ts +55 -0
  811. package/lib/esm/system/storage/PageCachedFile.d.ts.map +1 -0
  812. package/lib/esm/system/storage/PageCachedFile.js +162 -0
  813. package/lib/esm/system/storage/PageCachedFile.js.map +1 -0
  814. package/lib/esm/system/storage/UrlFS.d.ts +54 -0
  815. package/lib/esm/system/storage/UrlFS.d.ts.map +1 -0
  816. package/lib/esm/system/storage/UrlFS.js +111 -0
  817. package/lib/esm/system/storage/UrlFS.js.map +1 -0
  818. package/package.json +60 -0
@@ -0,0 +1,116 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module OrbitGT
7
+ */
8
+ import { IntMap } from "../../system/collection/IntMap";
9
+ /**
10
+ * Class Block defines a block of tiles.
11
+ *
12
+ * @version 1.0 November 2015
13
+ */
14
+ /** @internal */
15
+ export class Block {
16
+ /**
17
+ * Create a new block.
18
+ * @param index the index of the block.
19
+ */
20
+ constructor(index) {
21
+ this._index = index;
22
+ this._tileList = null;
23
+ this._tileMap = null;
24
+ }
25
+ /**
26
+ * Get the index of the block.
27
+ * @return the index of the block.
28
+ */
29
+ getBlockIndex() {
30
+ return this._index;
31
+ }
32
+ /**
33
+ * Get the spatial bounds of the block.
34
+ * @param level the level to which the block belongs.
35
+ * @return the spatial bounds of the block.
36
+ */
37
+ getBlockBounds(level) {
38
+ return level.getBlockGrid().getCellBounds(this._index.gridIndex);
39
+ }
40
+ /**
41
+ * Add a block to the list of blocks to load.
42
+ * @param blocksToLoad the list of blocks to load.
43
+ * @param block the block to add.
44
+ */
45
+ static addToLoadList(blocksToLoad, block) {
46
+ for (let i = 0; i < blocksToLoad.size(); i++)
47
+ if (blocksToLoad.get(i).same(block))
48
+ return;
49
+ blocksToLoad.add(block);
50
+ }
51
+ /**
52
+ * Set the tiles in the block.
53
+ * @param tileList the list of tiles.
54
+ */
55
+ setTiles(tileList) {
56
+ /* Store the list */
57
+ this._tileList = tileList;
58
+ /* Make the map */
59
+ this._tileMap = new IntMap();
60
+ for (let tile of this._tileList) {
61
+ let tileX = tile.gridIndex.x;
62
+ let yzMap = this._tileMap.get(tileX);
63
+ if (yzMap == null) {
64
+ yzMap = new IntMap();
65
+ this._tileMap.set(tileX, yzMap);
66
+ }
67
+ let tileY = tile.gridIndex.y;
68
+ let zMap = yzMap.get(tileY);
69
+ if (zMap == null) {
70
+ zMap = new IntMap();
71
+ yzMap.set(tileY, zMap);
72
+ }
73
+ let tileZ = tile.gridIndex.z;
74
+ zMap.set(tileZ, tile);
75
+ }
76
+ }
77
+ /**
78
+ * Have the tiles been set?
79
+ * @return true if the tiles have been set.
80
+ */
81
+ hasTiles() {
82
+ return (this._tileList != null);
83
+ }
84
+ /**
85
+ * List all tiles.
86
+ * @param blocksToLoad the list of blocks to load.
87
+ * @return all tiles (null if tiles are not loaded).
88
+ */
89
+ getTiles(blocksToLoad) {
90
+ if (this._tileList == null) {
91
+ Block.addToLoadList(blocksToLoad, this._index);
92
+ return null;
93
+ }
94
+ return this._tileList;
95
+ }
96
+ /**
97
+ * Find a tile.
98
+ * @param tileGridIndex the grid index of the tile.
99
+ * @return the tile (null if not found).
100
+ */
101
+ findTile(tileGridIndex) {
102
+ if (this._tileMap == null)
103
+ return null;
104
+ let tileX = tileGridIndex.x;
105
+ let yzMap = this._tileMap.get(tileX);
106
+ if (yzMap == null)
107
+ return null;
108
+ let tileY = tileGridIndex.y;
109
+ let zMap = yzMap.get(tileY);
110
+ if (zMap == null)
111
+ return null;
112
+ let tileZ = tileGridIndex.z;
113
+ return zMap.get(tileZ);
114
+ }
115
+ }
116
+ //# sourceMappingURL=Block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Block.js","sourceRoot":"","sources":["../../../../src/pointcloud/render/Block.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module OrbitGT\r\n */\r\n\r\n//package orbitgt.pointcloud.render;\r\n\r\ntype int8 = number;\r\ntype int16 = number;\r\ntype int32 = number;\r\ntype float32 = number;\r\ntype float64 = number;\r\n\r\nimport { Bounds } from \"../../spatial/geom/Bounds\";\r\nimport { AList } from \"../../system/collection/AList\";\r\nimport { IntMap } from \"../../system/collection/IntMap\";\r\nimport { BlockIndex } from \"../model/BlockIndex\";\r\nimport { GridIndex } from \"../model/GridIndex\";\r\nimport { TileIndex } from \"../model/TileIndex\";\r\nimport { Level } from \"./Level\";\r\n\r\n/**\r\n * Class Block defines a block of tiles.\r\n *\r\n * @version 1.0 November 2015\r\n */\r\n/** @internal */\r\nexport class Block {\r\n\t/** The index of the block */\r\n\tprivate _index: BlockIndex;\r\n\t/** The full list of tiles in the block (can be null if the tile-list has not been loaded) */\r\n\tprivate _tileList: Array<TileIndex>;\r\n\t/** The map of tiles in the block */\r\n\tprivate _tileMap: IntMap<IntMap<IntMap<TileIndex>>>;\r\n\r\n\t/**\r\n\t * Create a new block.\r\n\t * @param index the index of the block.\r\n\t */\r\n\tpublic constructor(index: BlockIndex) {\r\n\t\tthis._index = index;\r\n\t\tthis._tileList = null;\r\n\t\tthis._tileMap = null;\r\n\t}\r\n\r\n\t/**\r\n\t * Get the index of the block.\r\n\t * @return the index of the block.\r\n\t */\r\n\tpublic getBlockIndex(): BlockIndex {\r\n\t\treturn this._index;\r\n\t}\r\n\r\n\t/**\r\n\t * Get the spatial bounds of the block.\r\n\t * @param level the level to which the block belongs.\r\n\t * @return the spatial bounds of the block.\r\n\t */\r\n\tpublic getBlockBounds(level: Level): Bounds {\r\n\t\treturn level.getBlockGrid().getCellBounds(this._index.gridIndex);\r\n\t}\r\n\r\n\t/**\r\n\t * Add a block to the list of blocks to load.\r\n * @param blocksToLoad the list of blocks to load.\r\n * @param block the block to add.\r\n */\r\n\tprivate static addToLoadList(blocksToLoad: AList<BlockIndex>, block: BlockIndex): void {\r\n\t\tfor (let i: number = 0; i < blocksToLoad.size(); i++) if (blocksToLoad.get(i).same(block)) return;\r\n\t\tblocksToLoad.add(block);\r\n\t}\r\n\r\n\t/**\r\n\t * Set the tiles in the block.\r\n\t * @param tileList the list of tiles.\r\n\t */\r\n\tpublic setTiles(tileList: Array<TileIndex>): void {\r\n\t\t/* Store the list */\r\n\t\tthis._tileList = tileList;\r\n\t\t/* Make the map */\r\n\t\tthis._tileMap = new IntMap<IntMap<IntMap<TileIndex>>>();\r\n\t\tfor (let tile of this._tileList) {\r\n\t\t\tlet tileX: int32 = tile.gridIndex.x;\r\n\t\t\tlet yzMap: IntMap<IntMap<TileIndex>> = this._tileMap.get(tileX);\r\n\t\t\tif (yzMap == null) {\r\n\t\t\t\tyzMap = new IntMap<IntMap<TileIndex>>();\r\n\t\t\t\tthis._tileMap.set(tileX, yzMap);\r\n\t\t\t}\r\n\t\t\tlet tileY: int32 = tile.gridIndex.y;\r\n\t\t\tlet zMap: IntMap<TileIndex> = yzMap.get(tileY);\r\n\t\t\tif (zMap == null) {\r\n\t\t\t\tzMap = new IntMap<TileIndex>();\r\n\t\t\t\tyzMap.set(tileY, zMap);\r\n\t\t\t}\r\n\t\t\tlet tileZ: int32 = tile.gridIndex.z;\r\n\t\t\tzMap.set(tileZ, tile);\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Have the tiles been set?\r\n\t * @return true if the tiles have been set.\r\n\t */\r\n\tpublic hasTiles(): boolean {\r\n\t\treturn (this._tileList != null);\r\n\t}\r\n\r\n\t/**\r\n\t * List all tiles.\r\n * @param blocksToLoad the list of blocks to load.\r\n\t * @return all tiles (null if tiles are not loaded).\r\n\t */\r\n\tpublic getTiles(blocksToLoad: AList<BlockIndex>): Array<TileIndex> {\r\n\t\tif (this._tileList == null) {\r\n\t\t\tBlock.addToLoadList(blocksToLoad, this._index);\r\n\t\t\treturn null;\r\n\t\t}\r\n\t\treturn this._tileList;\r\n\t}\r\n\r\n\t/**\r\n\t * Find a tile.\r\n * @param tileGridIndex the grid index of the tile.\r\n\t * @return the tile (null if not found).\r\n\t */\r\n\tpublic findTile(tileGridIndex: GridIndex): TileIndex {\r\n\t\tif (this._tileMap == null) return null;\r\n\t\tlet tileX: int32 = tileGridIndex.x;\r\n\t\tlet yzMap: IntMap<IntMap<TileIndex>> = this._tileMap.get(tileX);\r\n\t\tif (yzMap == null) return null;\r\n\t\tlet tileY: int32 = tileGridIndex.y;\r\n\t\tlet zMap: IntMap<TileIndex> = yzMap.get(tileY);\r\n\t\tif (zMap == null) return null;\r\n\t\tlet tileZ: int32 = tileGridIndex.z;\r\n\t\treturn zMap.get(tileZ);\r\n\t}\r\n}\r\n"]}
@@ -0,0 +1,137 @@
1
+ /** @packageDocumentation
2
+ * @module OrbitGT
3
+ */
4
+ declare type int32 = number;
5
+ declare type float64 = number;
6
+ import { Bounds } from "../../spatial/geom/Bounds";
7
+ import { AList } from "../../system/collection/AList";
8
+ import { ALong } from "../../system/runtime/ALong";
9
+ import { BlockIndex } from "../model/BlockIndex";
10
+ import { PointCloudReader } from "../model/PointCloudReader";
11
+ import { PointData } from "../model/PointData";
12
+ import { TileIndex } from "../model/TileIndex";
13
+ import { FrameData } from "./FrameData";
14
+ import { Level } from "./Level";
15
+ import { ViewTree } from "./ViewTree";
16
+ /**
17
+ * Class DataManager manages the (shared) data model part of the rendering in multiple layers (see the CLOUD-461 issue).
18
+ *
19
+ * @version 1.0 December 2017
20
+ */
21
+ /** @internal */
22
+ export declare class DataManager {
23
+ /** The name of this module */
24
+ private static readonly MODULE;
25
+ /** The maximum size of a single file-content request */
26
+ private static readonly MAX_FILE_CONTENT_SIZE;
27
+ /** The expire time to unload unused point data (seconds) */
28
+ private static readonly POINT_DATA_EXIRE_TIME;
29
+ /** The reader of the pointcloud */
30
+ private _pointCloudReader;
31
+ /*** The CRS of the pointcloud */
32
+ private _pointCloudCRS;
33
+ /** The data format to read */
34
+ private _dataFormat;
35
+ /** The spatial index */
36
+ private _fileTileIndex;
37
+ /** The data pool */
38
+ private _dataPool;
39
+ /** The set of levels we requested (index) */
40
+ private _levelsLoading;
41
+ /** The set of levels we received (index) */
42
+ private _levelsLoaded;
43
+ /** The set of blocks we requested (key) */
44
+ private _blocksLoading;
45
+ /** The set of blocks we received (key) */
46
+ private _blocksLoaded;
47
+ /** The set of tiles we requested (key) */
48
+ private _tilesLoading;
49
+ /** The set of tiles we received (key) */
50
+ private _tilesLoaded;
51
+ /** Is new data being loaded? */
52
+ private _loadingData;
53
+ /** The time when the data loading stopped */
54
+ private _loadedDataTime;
55
+ /** The total size of data that has been loaded */
56
+ private _dataLoadSize;
57
+ /** The last garbage collection time */
58
+ private _lastGarbageCollectTime;
59
+ /**
60
+ * Create a new data model (to be shared between different views).
61
+ * @param pointCloudReader the reader of the pointcloud file.
62
+ * @param pointCloudCRS the CRS of the point cloud.
63
+ * @param dataFormat the requested data format to load point data (PointDataRaw.TYPE for example).
64
+ */
65
+ constructor(pointCloudReader: PointCloudReader, pointCloudCRS: string, dataFormat: int32);
66
+ /**
67
+ * Close the data model.
68
+ */
69
+ close(): void;
70
+ /**
71
+ * Create a spatial index of a pointcloud.
72
+ * @return the spatial index.
73
+ */
74
+ private createSpatialIndex;
75
+ /**
76
+ * Get the pointcloud reader.
77
+ * @return the pointcloud reader.
78
+ */
79
+ getPointCloudReader(): PointCloudReader;
80
+ /**
81
+ * Get the pointcloud CRS.
82
+ * @return the pointcloud CRS.
83
+ */
84
+ getPointCloudCRS(): string;
85
+ /**
86
+ * Get the bounds of the data.
87
+ * @return the bounds of the data.
88
+ */
89
+ getPointCloudBounds(): Bounds;
90
+ /**
91
+ * Get the spatial index.
92
+ * @return the spatial index.
93
+ */
94
+ getViewTree(): ViewTree;
95
+ /**
96
+ * Check if a tile has been loaded to the data pool.
97
+ * @param tileIndex the index of the tile.
98
+ * @return the point data if loaded, null otherwise.
99
+ */
100
+ isTileLoaded(tileIndex: TileIndex): PointData;
101
+ /**
102
+ * Is the model loading data?
103
+ * @return true when loading data.
104
+ */
105
+ isLoadingData(): boolean;
106
+ /**
107
+ * Get the size of the loaded data.
108
+ * @return the size of the loaded data.
109
+ */
110
+ getDataLoadSize(): ALong;
111
+ /**
112
+ * Filter the list of blocks and tiles that should be loaded.
113
+ * @param levelsToLoad the list of levels to load.
114
+ * @param blocksToLoad the list of blocks to load.
115
+ * @param tilesToLoad the list of tiles to load.
116
+ * @param levelList the filtered list of levels to load.
117
+ * @param blockList the filtered list of blocks to load.
118
+ * @param tileList the filtered list of tiles to load.
119
+ */
120
+ filterLoadList(levelsToLoad: AList<Level>, blocksToLoad: AList<BlockIndex>, tilesToLoad: AList<TileIndex>, levelList: AList<Level>, blockList: AList<BlockIndex>, tileList: AList<TileIndex>): void;
121
+ /**
122
+ * Load blocks and tiles.
123
+ * @param layer the layer requesting the load.
124
+ * @param levelList the filtered list of levels to load.
125
+ * @param blockList the filtered list of blocks to load.
126
+ * @param tileList the filtered list of tiles to load.
127
+ * @return the data model.
128
+ */
129
+ loadData(frameData: FrameData): Promise<FrameData>;
130
+ /**
131
+ * Do a garbage collect (this method can be called often, it throttles itself to once per minute).
132
+ * @param time the current time.
133
+ */
134
+ doGarbageCollect(time: float64): void;
135
+ }
136
+ export {};
137
+ //# sourceMappingURL=DataManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataManager.d.ts","sourceRoot":"","sources":["../../../../src/pointcloud/render/DataManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,339 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module OrbitGT
7
+ */
8
+ import { AList } from "../../system/collection/AList";
9
+ import { StringMap } from "../../system/collection/StringMap";
10
+ import { ALong } from "../../system/runtime/ALong";
11
+ import { ASystem } from "../../system/runtime/ASystem";
12
+ import { Message } from "../../system/runtime/Message";
13
+ import { ContentLoader } from "../../system/storage/ContentLoader";
14
+ import { Block } from "./Block";
15
+ import { Level } from "./Level";
16
+ import { ViewTree } from "./ViewTree";
17
+ /**
18
+ * Class DataManager manages the (shared) data model part of the rendering in multiple layers (see the CLOUD-461 issue).
19
+ *
20
+ * @version 1.0 December 2017
21
+ */
22
+ /** @internal */
23
+ export class DataManager {
24
+ /**
25
+ * Create a new data model (to be shared between different views).
26
+ * @param pointCloudReader the reader of the pointcloud file.
27
+ * @param pointCloudCRS the CRS of the point cloud.
28
+ * @param dataFormat the requested data format to load point data (PointDataRaw.TYPE for example).
29
+ */
30
+ constructor(pointCloudReader, pointCloudCRS, dataFormat) {
31
+ /* Store the parameters */
32
+ this._pointCloudReader = pointCloudReader;
33
+ this._pointCloudCRS = pointCloudCRS;
34
+ this._dataFormat = dataFormat;
35
+ /* Initialize */
36
+ if (this._pointCloudCRS == null)
37
+ this._pointCloudCRS = this._pointCloudReader.getFileCRS();
38
+ /* Clear */
39
+ this._fileTileIndex = this.createSpatialIndex();
40
+ this._dataPool = new StringMap();
41
+ this._levelsLoading = new StringMap();
42
+ this._levelsLoaded = new StringMap();
43
+ this._blocksLoading = new StringMap();
44
+ this._blocksLoaded = new StringMap();
45
+ this._tilesLoading = new StringMap();
46
+ this._tilesLoaded = new StringMap();
47
+ this._loadingData = false;
48
+ this._loadedDataTime = 0.0;
49
+ this._dataLoadSize = ALong.ZERO;
50
+ this._lastGarbageCollectTime = 0.0;
51
+ /* Log */
52
+ Message.print(DataManager.MODULE, "Pointcloud CRS is " + this._pointCloudCRS);
53
+ }
54
+ /**
55
+ * Close the data model.
56
+ */
57
+ close() {
58
+ if (this._pointCloudReader != null) {
59
+ this._pointCloudReader.close();
60
+ this._pointCloudReader = null;
61
+ }
62
+ this._fileTileIndex = null;
63
+ this._dataPool.clear();
64
+ this._levelsLoading.clear();
65
+ this._levelsLoaded.clear();
66
+ this._blocksLoading.clear();
67
+ this._blocksLoaded.clear();
68
+ this._tilesLoading.clear();
69
+ this._tilesLoaded.clear();
70
+ }
71
+ /**
72
+ * Create a spatial index of a pointcloud.
73
+ * @return the spatial index.
74
+ */
75
+ createSpatialIndex() {
76
+ /* Create the levels */
77
+ Message.print(DataManager.MODULE, "Creating pointcloud spatial index");
78
+ let levels = new Array(this._pointCloudReader.getLevelCount());
79
+ for (let i = 0; i < levels.length; i++) {
80
+ /* Get the grids */
81
+ let blockGrid = this._pointCloudReader.getLevelBlockGrid(i);
82
+ let tileGrid = this._pointCloudReader.getLevelTileGrid(i);
83
+ /* Get the blocks */
84
+ let blockIndexes = this._pointCloudReader.peekBlockIndexes(i);
85
+ let blockList = new Array(blockIndexes.length);
86
+ for (let j = 0; j < blockList.length; j++)
87
+ blockList[j] = new Block(blockIndexes[j]);
88
+ /* Create the level */
89
+ levels[i] = new Level(i, blockGrid, tileGrid, blockList);
90
+ Message.print(DataManager.MODULE, "Level " + i + " has " + blockList.length + " blocks");
91
+ }
92
+ /* Get the data bounds */
93
+ let dataBounds = this._pointCloudReader.getFileBounds();
94
+ Message.print(DataManager.MODULE, "The data bounds are " + dataBounds);
95
+ /* Return a new spatial index */
96
+ return new ViewTree(this, levels, dataBounds);
97
+ }
98
+ /**
99
+ * Get the pointcloud reader.
100
+ * @return the pointcloud reader.
101
+ */
102
+ getPointCloudReader() {
103
+ return this._pointCloudReader;
104
+ }
105
+ /**
106
+ * Get the pointcloud CRS.
107
+ * @return the pointcloud CRS.
108
+ */
109
+ getPointCloudCRS() {
110
+ return this._pointCloudCRS;
111
+ }
112
+ /**
113
+ * Get the bounds of the data.
114
+ * @return the bounds of the data.
115
+ */
116
+ getPointCloudBounds() {
117
+ return this._pointCloudReader.getFileBounds();
118
+ }
119
+ /**
120
+ * Get the spatial index.
121
+ * @return the spatial index.
122
+ */
123
+ getViewTree() {
124
+ return this._fileTileIndex;
125
+ }
126
+ /**
127
+ * Check if a tile has been loaded to the data pool.
128
+ * @param tileIndex the index of the tile.
129
+ * @return the point data if loaded, null otherwise.
130
+ */
131
+ isTileLoaded(tileIndex) {
132
+ return this._dataPool.get(tileIndex.key);
133
+ }
134
+ /**
135
+ * Is the model loading data?
136
+ * @return true when loading data.
137
+ */
138
+ isLoadingData() {
139
+ return this._loadingData;
140
+ }
141
+ /**
142
+ * Get the size of the loaded data.
143
+ * @return the size of the loaded data.
144
+ */
145
+ getDataLoadSize() {
146
+ return this._dataLoadSize;
147
+ }
148
+ /**
149
+ * Filter the list of blocks and tiles that should be loaded.
150
+ * @param levelsToLoad the list of levels to load.
151
+ * @param blocksToLoad the list of blocks to load.
152
+ * @param tilesToLoad the list of tiles to load.
153
+ * @param levelList the filtered list of levels to load.
154
+ * @param blockList the filtered list of blocks to load.
155
+ * @param tileList the filtered list of tiles to load.
156
+ */
157
+ filterLoadList(levelsToLoad, blocksToLoad, tilesToLoad, levelList, blockList, tileList) {
158
+ /* Filter the levels to load */
159
+ for (let i = 0; i < levelsToLoad.size(); i++) {
160
+ /* Do not request the same level twice */
161
+ let level = levelsToLoad.get(i);
162
+ if (this._levelsLoading.contains(level.getKey()))
163
+ continue;
164
+ if (this._levelsLoaded.contains(level.getKey()))
165
+ continue;
166
+ /* Add the level */
167
+ levelList.add(level);
168
+ }
169
+ levelsToLoad.clear();
170
+ /* Filter the blocks to load */
171
+ for (let i = 0; i < blocksToLoad.size(); i++) {
172
+ /* Do not request the same block twice */
173
+ let blockIndex = blocksToLoad.get(i);
174
+ if (this._blocksLoading.contains(blockIndex.key))
175
+ continue;
176
+ if (this._blocksLoaded.contains(blockIndex.key))
177
+ continue;
178
+ /* Add the block */
179
+ blockList.add(blockIndex);
180
+ }
181
+ blocksToLoad.clear();
182
+ /* Filter the tiles to load */
183
+ for (let i = 0; i < tilesToLoad.size(); i++) {
184
+ /* Do not request the same tile twice */
185
+ let tileIndex = tilesToLoad.get(i);
186
+ if (this._tilesLoading.contains(tileIndex.key))
187
+ continue;
188
+ if (this._tilesLoaded.contains(tileIndex.key))
189
+ continue;
190
+ /* Add the tile */
191
+ tileList.add(tileIndex);
192
+ }
193
+ tilesToLoad.clear();
194
+ }
195
+ /**
196
+ * Load blocks and tiles.
197
+ * @param layer the layer requesting the load.
198
+ * @param levelList the filtered list of levels to load.
199
+ * @param blockList the filtered list of blocks to load.
200
+ * @param tileList the filtered list of tiles to load.
201
+ * @return the data model.
202
+ */
203
+ async loadData(frameData) {
204
+ /* No data to load? */
205
+ if (frameData.hasMissingData() == false)
206
+ return frameData;
207
+ /* Do not make overlapping load requests */
208
+ if (this._loadingData)
209
+ return frameData;
210
+ this._loadingData = true;
211
+ /* Log */
212
+ let levelList = frameData.levelsToLoad;
213
+ let blockList = frameData.blocksToLoad;
214
+ let tileList = frameData.tilesToLoad;
215
+ // Message.print(MODULE,"Loading "+levelList.size()+" levels, "+blockList.size()+" blocks and "+tileList.size()+" tiles");
216
+ // Message.print(MODULE,"Already loaded "+this._blocksLoaded.size()+" blocks");
217
+ // Message.print(MODULE,"Already loading "+this._blocksLoading.size()+" blocks");
218
+ // Message.print(MODULE,"Already loaded "+this._tilesLoaded.size()+" tiles");
219
+ // Message.print(MODULE,"Already loading "+this._tilesLoading.size()+" tiles");
220
+ /* Define the content we are going to need */
221
+ let loadTime = ASystem.time();
222
+ let fileContents = new ContentLoader(this._pointCloudReader.getFileStorage(), this._pointCloudReader.getFileName());
223
+ /* Prepare the loading of the levels */
224
+ for (let i = 0; i < levelList.size(); i++) {
225
+ /* Prepare to load the block */
226
+ let level = levelList.get(i);
227
+ this._levelsLoading.set(level.getKey(), level);
228
+ this._pointCloudReader.readBlockIndexes(level.getIndex(), fileContents);
229
+ Message.print(DataManager.MODULE, "Loading level " + level.getIndex());
230
+ }
231
+ /* Prepare the loading of the blocks */
232
+ for (let i = 0; i < blockList.size(); i++) {
233
+ /* Prepare to load the block */
234
+ let blockIndex = blockList.get(i);
235
+ this._blocksLoading.set(blockIndex.key, blockIndex);
236
+ this._pointCloudReader.readTileIndexes(blockIndex, fileContents);
237
+ }
238
+ /* Prepare the loading of the tiles */
239
+ let loadTileCount = 0;
240
+ for (let i = 0; i < tileList.size(); i++) {
241
+ /* Prepare to load the tile */
242
+ let tileIndex = tileList.get(i);
243
+ this._tilesLoading.set(tileIndex.key, tileIndex);
244
+ this._pointCloudReader.readPointData(tileIndex, this._dataFormat, loadTime, fileContents);
245
+ loadTileCount++;
246
+ /* Do not load too many tiles at once */
247
+ if (fileContents.getTotalRequestSize() > DataManager.MAX_FILE_CONTENT_SIZE) {
248
+ /* Stop loading tiles */
249
+ Message.print(DataManager.MODULE, "Limited pointcloud content load request to " + fileContents.getTotalRequestSize() + " bytes");
250
+ break;
251
+ }
252
+ }
253
+ /* Log */
254
+ Message.print(DataManager.MODULE, "Loading of " + blockList.size() + " blocks, " + loadTileCount + "/" + tileList.size() + " tiles, " + fileContents.getTotalRequestSize() + " bytes");
255
+ /* Load the data */
256
+ this._dataLoadSize = this._dataLoadSize.addInt(fileContents.getTotalRequestSize());
257
+ fileContents = await fileContents.load();
258
+ //Message.print(MODULE,"Creating "+blockList.size()+" blocks and "+tileList.size()+" tiles");
259
+ /* Load the levels */
260
+ for (let i = 0; i < levelList.size(); i++) {
261
+ /* Load the block list */
262
+ let level = levelList.get(i);
263
+ this._levelsLoaded.set(level.getKey(), level);
264
+ this._levelsLoading.remove(level.getKey());
265
+ let blockIndexes = this._pointCloudReader.readBlockIndexes(level.getIndex(), fileContents);
266
+ /* Add the blocks */
267
+ this._fileTileIndex.setLevelBlocks(level, blockIndexes);
268
+ }
269
+ /* Load the blocks */
270
+ for (let i = 0; i < blockList.size(); i++) {
271
+ /* Load the block */
272
+ let blockIndex = blockList.get(i);
273
+ this._blocksLoaded.set(blockIndex.key, blockIndex);
274
+ this._blocksLoading.remove(blockIndex.key);
275
+ let tileIndexes = this._pointCloudReader.readTileIndexes(blockIndex, fileContents);
276
+ /* Add the block */
277
+ this._fileTileIndex.setBlockTiles(blockIndex, tileIndexes);
278
+ }
279
+ /* Load the tiles */
280
+ let newTiles = new AList();
281
+ for (let i = 0; i < loadTileCount; i++) {
282
+ /* Get the next tile */
283
+ let tileIndex = tileList.get(i);
284
+ newTiles.add(tileIndex);
285
+ /* Load the tile */
286
+ this._tilesLoaded.set(tileIndex.key, tileIndex);
287
+ this._tilesLoading.remove(tileIndex.key);
288
+ let pointData = this._pointCloudReader.readPointData(tileIndex, this._dataFormat, loadTime, fileContents);
289
+ /* Add the tile */
290
+ this._dataPool.set(tileIndex.key, pointData);
291
+ }
292
+ /* We stopped loading */
293
+ this._loadingData = false;
294
+ this._loadedDataTime = ASystem.time();
295
+ /* Log */
296
+ Message.print(DataManager.MODULE, "Created " + blockList.size() + " blocks and " + loadTileCount + " tiles");
297
+ /* Return the frame data */
298
+ return frameData;
299
+ }
300
+ /**
301
+ * Do a garbage collect (this method can be called often, it throttles itself to once per minute).
302
+ * @param time the current time.
303
+ */
304
+ doGarbageCollect(time) {
305
+ /* First call? */
306
+ if (this._lastGarbageCollectTime == 0.0)
307
+ this._lastGarbageCollectTime = time;
308
+ /* Throttle to one per minute */
309
+ if (time < this._lastGarbageCollectTime + 60.0)
310
+ return;
311
+ this._lastGarbageCollectTime = time;
312
+ /* Define the expire time */
313
+ let expireTime = (time - DataManager.POINT_DATA_EXIRE_TIME);
314
+ /* Check all loaded tiles */
315
+ let dropCount = 0;
316
+ let dataKeys = this._dataPool.keys();
317
+ for (let i = 0; i < dataKeys.size(); i++) {
318
+ /* Get the next tile */
319
+ let tileKey = dataKeys.get(i);
320
+ let pointData = this._dataPool.get(tileKey);
321
+ /* Expired? */
322
+ if (pointData.tileIndex.accessTime < expireTime) {
323
+ this._dataPool.remove(tileKey);
324
+ this._tilesLoaded.remove(tileKey);
325
+ dropCount++;
326
+ }
327
+ }
328
+ /* Log? */
329
+ if (dropCount > 0)
330
+ Message.print(DataManager.MODULE, "Dropped the point data of " + dropCount + " tiles");
331
+ }
332
+ }
333
+ /** The name of this module */
334
+ DataManager.MODULE = "DataManager";
335
+ /** The maximum size of a single file-content request */
336
+ DataManager.MAX_FILE_CONTENT_SIZE = 128 * 1024;
337
+ /** The expire time to unload unused point data (seconds) */
338
+ DataManager.POINT_DATA_EXIRE_TIME = 5 * 60.0;
339
+ //# sourceMappingURL=DataManager.js.map