@itwin/core-orbitgt 4.0.0-dev.8 → 4.0.0-dev.81

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 (782) hide show
  1. package/CHANGELOG.md +41 -1
  2. package/lib/cjs/core-orbitgt.d.ts +26 -26
  3. package/lib/cjs/core-orbitgt.js +62 -58
  4. package/lib/cjs/core-orbitgt.js.map +1 -1
  5. package/lib/cjs/pointcloud/format/opc/AttributeMask.d.ts +30 -30
  6. package/lib/cjs/pointcloud/format/opc/AttributeMask.js +47 -47
  7. package/lib/cjs/pointcloud/format/opc/AttributeMask.js.map +1 -1
  8. package/lib/cjs/pointcloud/format/opc/AttributeReader.d.ts +63 -63
  9. package/lib/cjs/pointcloud/format/opc/AttributeReader.d.ts.map +1 -1
  10. package/lib/cjs/pointcloud/format/opc/AttributeReader.js +24 -24
  11. package/lib/cjs/pointcloud/format/opc/AttributeReader.js.map +1 -1
  12. package/lib/cjs/pointcloud/format/opc/BlockRecord.d.ts +54 -54
  13. package/lib/cjs/pointcloud/format/opc/BlockRecord.d.ts.map +1 -1
  14. package/lib/cjs/pointcloud/format/opc/BlockRecord.js +84 -84
  15. package/lib/cjs/pointcloud/format/opc/BlockRecord.js.map +1 -1
  16. package/lib/cjs/pointcloud/format/opc/ContainerFile.d.ts +85 -85
  17. package/lib/cjs/pointcloud/format/opc/ContainerFile.d.ts.map +1 -1
  18. package/lib/cjs/pointcloud/format/opc/ContainerFile.js +199 -199
  19. package/lib/cjs/pointcloud/format/opc/ContainerFile.js.map +1 -1
  20. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.d.ts +55 -55
  21. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.js +75 -75
  22. package/lib/cjs/pointcloud/format/opc/ContainerFilePart.js.map +1 -1
  23. package/lib/cjs/pointcloud/format/opc/DirectoryReader.d.ts +75 -75
  24. package/lib/cjs/pointcloud/format/opc/DirectoryReader.d.ts.map +1 -1
  25. package/lib/cjs/pointcloud/format/opc/DirectoryReader.js +169 -169
  26. package/lib/cjs/pointcloud/format/opc/DirectoryReader.js.map +1 -1
  27. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.d.ts +59 -59
  28. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.d.ts.map +1 -1
  29. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.js +89 -89
  30. package/lib/cjs/pointcloud/format/opc/DirectoryRecord.js.map +1 -1
  31. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.d.ts +106 -106
  32. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.d.ts.map +1 -1
  33. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.js +197 -197
  34. package/lib/cjs/pointcloud/format/opc/EmbeddedAttributeReader.js.map +1 -1
  35. package/lib/cjs/pointcloud/format/opc/FileAccess.d.ts +39 -39
  36. package/lib/cjs/pointcloud/format/opc/FileAccess.js +48 -48
  37. package/lib/cjs/pointcloud/format/opc/FileAccess.js.map +1 -1
  38. package/lib/cjs/pointcloud/format/opc/FileReader.d.ts +118 -118
  39. package/lib/cjs/pointcloud/format/opc/FileReader.d.ts.map +1 -1
  40. package/lib/cjs/pointcloud/format/opc/FileReader.js +248 -248
  41. package/lib/cjs/pointcloud/format/opc/FileReader.js.map +1 -1
  42. package/lib/cjs/pointcloud/format/opc/FileRecord.d.ts +89 -89
  43. package/lib/cjs/pointcloud/format/opc/FileRecord.d.ts.map +1 -1
  44. package/lib/cjs/pointcloud/format/opc/FileRecord.js +125 -125
  45. package/lib/cjs/pointcloud/format/opc/FileRecord.js.map +1 -1
  46. package/lib/cjs/pointcloud/format/opc/GeometryReader.d.ts +79 -79
  47. package/lib/cjs/pointcloud/format/opc/GeometryReader.d.ts.map +1 -1
  48. package/lib/cjs/pointcloud/format/opc/GeometryReader.js +163 -163
  49. package/lib/cjs/pointcloud/format/opc/GeometryReader.js.map +1 -1
  50. package/lib/cjs/pointcloud/format/opc/GeometryRecord.d.ts +53 -53
  51. package/lib/cjs/pointcloud/format/opc/GeometryRecord.js +107 -107
  52. package/lib/cjs/pointcloud/format/opc/GeometryRecord.js.map +1 -1
  53. package/lib/cjs/pointcloud/format/opc/OPCReader.d.ts +157 -157
  54. package/lib/cjs/pointcloud/format/opc/OPCReader.d.ts.map +1 -1
  55. package/lib/cjs/pointcloud/format/opc/OPCReader.js +319 -319
  56. package/lib/cjs/pointcloud/format/opc/OPCReader.js.map +1 -1
  57. package/lib/cjs/pointcloud/format/opc/PointReader.d.ts +72 -72
  58. package/lib/cjs/pointcloud/format/opc/PointReader.d.ts.map +1 -1
  59. package/lib/cjs/pointcloud/format/opc/PointReader.js +152 -152
  60. package/lib/cjs/pointcloud/format/opc/PointReader.js.map +1 -1
  61. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.d.ts +63 -63
  62. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.d.ts.map +1 -1
  63. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.js +92 -92
  64. package/lib/cjs/pointcloud/format/opc/TileReadBuffer.js.map +1 -1
  65. package/lib/cjs/pointcloud/format/opc/TileRecord.d.ts +88 -88
  66. package/lib/cjs/pointcloud/format/opc/TileRecord.d.ts.map +1 -1
  67. package/lib/cjs/pointcloud/format/opc/TileRecord.js +161 -161
  68. package/lib/cjs/pointcloud/format/opc/TileRecord.js.map +1 -1
  69. package/lib/cjs/pointcloud/model/AttributeTypes.d.ts +37 -37
  70. package/lib/cjs/pointcloud/model/AttributeTypes.d.ts.map +1 -1
  71. package/lib/cjs/pointcloud/model/AttributeTypes.js +64 -64
  72. package/lib/cjs/pointcloud/model/AttributeTypes.js.map +1 -1
  73. package/lib/cjs/pointcloud/model/AttributeValue.d.ts +247 -247
  74. package/lib/cjs/pointcloud/model/AttributeValue.d.ts.map +1 -1
  75. package/lib/cjs/pointcloud/model/AttributeValue.js +508 -508
  76. package/lib/cjs/pointcloud/model/AttributeValue.js.map +1 -1
  77. package/lib/cjs/pointcloud/model/BlockIndex.d.ts +49 -49
  78. package/lib/cjs/pointcloud/model/BlockIndex.d.ts.map +1 -1
  79. package/lib/cjs/pointcloud/model/BlockIndex.js +48 -48
  80. package/lib/cjs/pointcloud/model/BlockIndex.js.map +1 -1
  81. package/lib/cjs/pointcloud/model/CloudPoint.d.ts +210 -210
  82. package/lib/cjs/pointcloud/model/CloudPoint.d.ts.map +1 -1
  83. package/lib/cjs/pointcloud/model/CloudPoint.js +318 -318
  84. package/lib/cjs/pointcloud/model/CloudPoint.js.map +1 -1
  85. package/lib/cjs/pointcloud/model/Grid.d.ts +91 -91
  86. package/lib/cjs/pointcloud/model/Grid.d.ts.map +1 -1
  87. package/lib/cjs/pointcloud/model/Grid.js +129 -129
  88. package/lib/cjs/pointcloud/model/Grid.js.map +1 -1
  89. package/lib/cjs/pointcloud/model/GridIndex.d.ts +66 -66
  90. package/lib/cjs/pointcloud/model/GridIndex.d.ts.map +1 -1
  91. package/lib/cjs/pointcloud/model/GridIndex.js +93 -93
  92. package/lib/cjs/pointcloud/model/GridIndex.js.map +1 -1
  93. package/lib/cjs/pointcloud/model/PointAttribute.d.ts +208 -208
  94. package/lib/cjs/pointcloud/model/PointAttribute.d.ts.map +1 -1
  95. package/lib/cjs/pointcloud/model/PointAttribute.js +374 -374
  96. package/lib/cjs/pointcloud/model/PointAttribute.js.map +1 -1
  97. package/lib/cjs/pointcloud/model/PointCloudReader.d.ts +156 -156
  98. package/lib/cjs/pointcloud/model/PointCloudReader.d.ts.map +1 -1
  99. package/lib/cjs/pointcloud/model/PointCloudReader.js +189 -189
  100. package/lib/cjs/pointcloud/model/PointCloudReader.js.map +1 -1
  101. package/lib/cjs/pointcloud/model/PointData.d.ts +17 -17
  102. package/lib/cjs/pointcloud/model/PointData.js +24 -24
  103. package/lib/cjs/pointcloud/model/PointData.js.map +1 -1
  104. package/lib/cjs/pointcloud/model/PointDataRaw.d.ts +34 -34
  105. package/lib/cjs/pointcloud/model/PointDataRaw.d.ts.map +1 -1
  106. package/lib/cjs/pointcloud/model/PointDataRaw.js +69 -69
  107. package/lib/cjs/pointcloud/model/PointDataRaw.js.map +1 -1
  108. package/lib/cjs/pointcloud/model/ReadRequest.d.ts +175 -175
  109. package/lib/cjs/pointcloud/model/ReadRequest.d.ts.map +1 -1
  110. package/lib/cjs/pointcloud/model/ReadRequest.js +239 -239
  111. package/lib/cjs/pointcloud/model/ReadRequest.js.map +1 -1
  112. package/lib/cjs/pointcloud/model/StandardAttributes.d.ts +40 -40
  113. package/lib/cjs/pointcloud/model/StandardAttributes.d.ts.map +1 -1
  114. package/lib/cjs/pointcloud/model/StandardAttributes.js +47 -47
  115. package/lib/cjs/pointcloud/model/StandardAttributes.js.map +1 -1
  116. package/lib/cjs/pointcloud/model/TileIndex.d.ts +47 -47
  117. package/lib/cjs/pointcloud/model/TileIndex.d.ts.map +1 -1
  118. package/lib/cjs/pointcloud/model/TileIndex.js +47 -47
  119. package/lib/cjs/pointcloud/model/TileIndex.js.map +1 -1
  120. package/lib/cjs/pointcloud/render/AViewRequest.d.ts +38 -38
  121. package/lib/cjs/pointcloud/render/AViewRequest.d.ts.map +1 -1
  122. package/lib/cjs/pointcloud/render/AViewRequest.js +24 -24
  123. package/lib/cjs/pointcloud/render/AViewRequest.js.map +1 -1
  124. package/lib/cjs/pointcloud/render/Block.d.ts +67 -67
  125. package/lib/cjs/pointcloud/render/Block.js +119 -119
  126. package/lib/cjs/pointcloud/render/Block.js.map +1 -1
  127. package/lib/cjs/pointcloud/render/DataManager.d.ts +136 -136
  128. package/lib/cjs/pointcloud/render/DataManager.d.ts.map +1 -1
  129. package/lib/cjs/pointcloud/render/DataManager.js +342 -342
  130. package/lib/cjs/pointcloud/render/DataManager.js.map +1 -1
  131. package/lib/cjs/pointcloud/render/FrameData.d.ts +30 -30
  132. package/lib/cjs/pointcloud/render/FrameData.js +39 -39
  133. package/lib/cjs/pointcloud/render/FrameData.js.map +1 -1
  134. package/lib/cjs/pointcloud/render/Level.d.ts +90 -90
  135. package/lib/cjs/pointcloud/render/Level.d.ts.map +1 -1
  136. package/lib/cjs/pointcloud/render/Level.js +119 -119
  137. package/lib/cjs/pointcloud/render/Level.js.map +1 -1
  138. package/lib/cjs/pointcloud/render/TileLoadSorter.d.ts +60 -60
  139. package/lib/cjs/pointcloud/render/TileLoadSorter.d.ts.map +1 -1
  140. package/lib/cjs/pointcloud/render/TileLoadSorter.js +99 -99
  141. package/lib/cjs/pointcloud/render/TileLoadSorter.js.map +1 -1
  142. package/lib/cjs/pointcloud/render/ViewTree.d.ts +113 -113
  143. package/lib/cjs/pointcloud/render/ViewTree.d.ts.map +1 -1
  144. package/lib/cjs/pointcloud/render/ViewTree.js +363 -363
  145. package/lib/cjs/pointcloud/render/ViewTree.js.map +1 -1
  146. package/lib/cjs/spatial/crs/CRSEngine.d.ts +55 -55
  147. package/lib/cjs/spatial/crs/CRSEngine.js +93 -93
  148. package/lib/cjs/spatial/crs/CRSEngine.js.map +1 -1
  149. package/lib/cjs/spatial/crs/CRSManager.d.ts +49 -49
  150. package/lib/cjs/spatial/crs/CRSManager.js +109 -109
  151. package/lib/cjs/spatial/crs/CRSManager.js.map +1 -1
  152. package/lib/cjs/spatial/ecrs/Axis.d.ts +77 -77
  153. package/lib/cjs/spatial/ecrs/Axis.d.ts.map +1 -1
  154. package/lib/cjs/spatial/ecrs/Axis.js +93 -93
  155. package/lib/cjs/spatial/ecrs/Axis.js.map +1 -1
  156. package/lib/cjs/spatial/ecrs/CRS.d.ts +447 -447
  157. package/lib/cjs/spatial/ecrs/CRS.d.ts.map +1 -1
  158. package/lib/cjs/spatial/ecrs/CRS.js +930 -930
  159. package/lib/cjs/spatial/ecrs/CRS.js.map +1 -1
  160. package/lib/cjs/spatial/ecrs/CoordinateSystem.d.ts +142 -142
  161. package/lib/cjs/spatial/ecrs/CoordinateSystem.d.ts.map +1 -1
  162. package/lib/cjs/spatial/ecrs/CoordinateSystem.js +326 -326
  163. package/lib/cjs/spatial/ecrs/CoordinateSystem.js.map +1 -1
  164. package/lib/cjs/spatial/ecrs/DataFileUnit.d.ts +10 -10
  165. package/lib/cjs/spatial/ecrs/DataFileUnit.js +104 -104
  166. package/lib/cjs/spatial/ecrs/DataFileUnit.js.map +1 -1
  167. package/lib/cjs/spatial/ecrs/Datum.d.ts +111 -111
  168. package/lib/cjs/spatial/ecrs/Datum.d.ts.map +1 -1
  169. package/lib/cjs/spatial/ecrs/Datum.js +166 -166
  170. package/lib/cjs/spatial/ecrs/Datum.js.map +1 -1
  171. package/lib/cjs/spatial/ecrs/Ellipsoid.d.ts +188 -188
  172. package/lib/cjs/spatial/ecrs/Ellipsoid.d.ts.map +1 -1
  173. package/lib/cjs/spatial/ecrs/Ellipsoid.js +336 -336
  174. package/lib/cjs/spatial/ecrs/Ellipsoid.js.map +1 -1
  175. package/lib/cjs/spatial/ecrs/OnlineEngine.d.ts +48 -48
  176. package/lib/cjs/spatial/ecrs/OnlineEngine.js +102 -102
  177. package/lib/cjs/spatial/ecrs/OnlineEngine.js.map +1 -1
  178. package/lib/cjs/spatial/ecrs/OnlineRegistry.d.ts +37 -37
  179. package/lib/cjs/spatial/ecrs/OnlineRegistry.d.ts.map +1 -1
  180. package/lib/cjs/spatial/ecrs/OnlineRegistry.js +76 -76
  181. package/lib/cjs/spatial/ecrs/OnlineRegistry.js.map +1 -1
  182. package/lib/cjs/spatial/ecrs/Operation.d.ts +191 -191
  183. package/lib/cjs/spatial/ecrs/Operation.d.ts.map +1 -1
  184. package/lib/cjs/spatial/ecrs/Operation.js +345 -345
  185. package/lib/cjs/spatial/ecrs/Operation.js.map +1 -1
  186. package/lib/cjs/spatial/ecrs/OperationMethod.d.ts +71 -71
  187. package/lib/cjs/spatial/ecrs/OperationMethod.d.ts.map +1 -1
  188. package/lib/cjs/spatial/ecrs/OperationMethod.js +75 -75
  189. package/lib/cjs/spatial/ecrs/OperationMethod.js.map +1 -1
  190. package/lib/cjs/spatial/ecrs/ParameterValue.d.ts +49 -49
  191. package/lib/cjs/spatial/ecrs/ParameterValue.d.ts.map +1 -1
  192. package/lib/cjs/spatial/ecrs/ParameterValue.js +65 -65
  193. package/lib/cjs/spatial/ecrs/ParameterValue.js.map +1 -1
  194. package/lib/cjs/spatial/ecrs/ParameterValueList.d.ts +72 -72
  195. package/lib/cjs/spatial/ecrs/ParameterValueList.d.ts.map +1 -1
  196. package/lib/cjs/spatial/ecrs/ParameterValueList.js +120 -120
  197. package/lib/cjs/spatial/ecrs/ParameterValueList.js.map +1 -1
  198. package/lib/cjs/spatial/ecrs/PrimeMeridian.d.ts +78 -78
  199. package/lib/cjs/spatial/ecrs/PrimeMeridian.d.ts.map +1 -1
  200. package/lib/cjs/spatial/ecrs/PrimeMeridian.js +108 -108
  201. package/lib/cjs/spatial/ecrs/PrimeMeridian.js.map +1 -1
  202. package/lib/cjs/spatial/ecrs/Registry.d.ts +109 -109
  203. package/lib/cjs/spatial/ecrs/Registry.d.ts.map +1 -1
  204. package/lib/cjs/spatial/ecrs/Registry.js +207 -207
  205. package/lib/cjs/spatial/ecrs/Registry.js.map +1 -1
  206. package/lib/cjs/spatial/ecrs/Transform.d.ts +77 -77
  207. package/lib/cjs/spatial/ecrs/Transform.d.ts.map +1 -1
  208. package/lib/cjs/spatial/ecrs/Transform.js +396 -396
  209. package/lib/cjs/spatial/ecrs/Transform.js.map +1 -1
  210. package/lib/cjs/spatial/ecrs/Unit.d.ts +170 -170
  211. package/lib/cjs/spatial/ecrs/Unit.d.ts.map +1 -1
  212. package/lib/cjs/spatial/ecrs/Unit.js +336 -336
  213. package/lib/cjs/spatial/ecrs/Unit.js.map +1 -1
  214. package/lib/cjs/spatial/ecrs/VerticalModel.d.ts +69 -69
  215. package/lib/cjs/spatial/ecrs/VerticalModel.d.ts.map +1 -1
  216. package/lib/cjs/spatial/ecrs/VerticalModel.js +88 -88
  217. package/lib/cjs/spatial/ecrs/VerticalModel.js.map +1 -1
  218. package/lib/cjs/spatial/ecrs/WellKnownText.d.ts +153 -153
  219. package/lib/cjs/spatial/ecrs/WellKnownText.d.ts.map +1 -1
  220. package/lib/cjs/spatial/ecrs/WellKnownText.js +494 -494
  221. package/lib/cjs/spatial/ecrs/WellKnownText.js.map +1 -1
  222. package/lib/cjs/spatial/ecrs/WellKnownTextNode.d.ts +69 -69
  223. package/lib/cjs/spatial/ecrs/WellKnownTextNode.d.ts.map +1 -1
  224. package/lib/cjs/spatial/ecrs/WellKnownTextNode.js +128 -128
  225. package/lib/cjs/spatial/ecrs/WellKnownTextNode.js.map +1 -1
  226. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.d.ts +101 -101
  227. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.d.ts.map +1 -1
  228. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.js +162 -162
  229. package/lib/cjs/spatial/ecrs/projection/HotineObliqueMercator.js.map +1 -1
  230. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts +79 -79
  231. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts.map +1 -1
  232. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.js +125 -125
  233. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConic.js.map +1 -1
  234. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts +47 -47
  235. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts.map +1 -1
  236. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js +73 -73
  237. package/lib/cjs/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js.map +1 -1
  238. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.d.ts +72 -72
  239. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.d.ts.map +1 -1
  240. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.js +129 -129
  241. package/lib/cjs/spatial/ecrs/projection/LambertConical1SP.js.map +1 -1
  242. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.d.ts +120 -120
  243. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.d.ts.map +1 -1
  244. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.js +179 -179
  245. package/lib/cjs/spatial/ecrs/projection/LambertConical2SP.js.map +1 -1
  246. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.d.ts +73 -73
  247. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.d.ts.map +1 -1
  248. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.js +112 -112
  249. package/lib/cjs/spatial/ecrs/projection/Mercator1SP.js.map +1 -1
  250. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.d.ts +96 -96
  251. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.d.ts.map +1 -1
  252. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.js +173 -173
  253. package/lib/cjs/spatial/ecrs/projection/ObliqueMercator.js.map +1 -1
  254. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.d.ts +123 -123
  255. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.d.ts.map +1 -1
  256. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.js +208 -208
  257. package/lib/cjs/spatial/ecrs/projection/ObliqueStereographic.js.map +1 -1
  258. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.d.ts +108 -108
  259. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.d.ts.map +1 -1
  260. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.js +183 -183
  261. package/lib/cjs/spatial/ecrs/projection/TransverseMercator.js.map +1 -1
  262. package/lib/cjs/spatial/ecrs/transformation/PositionVector.d.ts +90 -90
  263. package/lib/cjs/spatial/ecrs/transformation/PositionVector.d.ts.map +1 -1
  264. package/lib/cjs/spatial/ecrs/transformation/PositionVector.js +130 -130
  265. package/lib/cjs/spatial/ecrs/transformation/PositionVector.js.map +1 -1
  266. package/lib/cjs/spatial/geom/Bounds.d.ts +33 -33
  267. package/lib/cjs/spatial/geom/Bounds.d.ts.map +1 -1
  268. package/lib/cjs/spatial/geom/Bounds.js +156 -156
  269. package/lib/cjs/spatial/geom/Bounds.js.map +1 -1
  270. package/lib/cjs/spatial/geom/Coordinate.d.ts +61 -61
  271. package/lib/cjs/spatial/geom/Coordinate.d.ts.map +1 -1
  272. package/lib/cjs/spatial/geom/Coordinate.js +186 -186
  273. package/lib/cjs/spatial/geom/Coordinate.js.map +1 -1
  274. package/lib/cjs/spatial/geom/Line.d.ts +225 -225
  275. package/lib/cjs/spatial/geom/Line.d.ts.map +1 -1
  276. package/lib/cjs/spatial/geom/Line.js +432 -432
  277. package/lib/cjs/spatial/geom/Line.js.map +1 -1
  278. package/lib/cjs/spatial/geom/Transform.d.ts +340 -340
  279. package/lib/cjs/spatial/geom/Transform.d.ts.map +1 -1
  280. package/lib/cjs/spatial/geom/Transform.js +748 -748
  281. package/lib/cjs/spatial/geom/Transform.js.map +1 -1
  282. package/lib/cjs/system/buffer/ABuffer.d.ts +51 -51
  283. package/lib/cjs/system/buffer/ABuffer.d.ts.map +1 -1
  284. package/lib/cjs/system/buffer/ABuffer.js +90 -90
  285. package/lib/cjs/system/buffer/ABuffer.js.map +1 -1
  286. package/lib/cjs/system/buffer/Float32Buffer.d.ts +46 -46
  287. package/lib/cjs/system/buffer/Float32Buffer.d.ts.map +1 -1
  288. package/lib/cjs/system/buffer/Float32Buffer.js +60 -60
  289. package/lib/cjs/system/buffer/Float32Buffer.js.map +1 -1
  290. package/lib/cjs/system/buffer/LittleEndian.d.ts +149 -149
  291. package/lib/cjs/system/buffer/LittleEndian.d.ts.map +1 -1
  292. package/lib/cjs/system/buffer/LittleEndian.js +303 -303
  293. package/lib/cjs/system/buffer/LittleEndian.js.map +1 -1
  294. package/lib/cjs/system/buffer/Uint16Buffer.d.ts +49 -49
  295. package/lib/cjs/system/buffer/Uint16Buffer.d.ts.map +1 -1
  296. package/lib/cjs/system/buffer/Uint16Buffer.js +65 -65
  297. package/lib/cjs/system/buffer/Uint16Buffer.js.map +1 -1
  298. package/lib/cjs/system/buffer/Uint8Buffer.d.ts +49 -49
  299. package/lib/cjs/system/buffer/Uint8Buffer.d.ts.map +1 -1
  300. package/lib/cjs/system/buffer/Uint8Buffer.js +65 -65
  301. package/lib/cjs/system/buffer/Uint8Buffer.js.map +1 -1
  302. package/lib/cjs/system/collection/AList.d.ts +30 -30
  303. package/lib/cjs/system/collection/AList.d.ts.map +1 -1
  304. package/lib/cjs/system/collection/AList.js +70 -70
  305. package/lib/cjs/system/collection/AList.js.map +1 -1
  306. package/lib/cjs/system/collection/IntMap.d.ts +18 -18
  307. package/lib/cjs/system/collection/IntMap.d.ts.map +1 -1
  308. package/lib/cjs/system/collection/IntMap.js +35 -35
  309. package/lib/cjs/system/collection/IntMap.js.map +1 -1
  310. package/lib/cjs/system/collection/StringMap.d.ts +26 -26
  311. package/lib/cjs/system/collection/StringMap.d.ts.map +1 -1
  312. package/lib/cjs/system/collection/StringMap.js +63 -63
  313. package/lib/cjs/system/collection/StringMap.js.map +1 -1
  314. package/lib/cjs/system/io/ABufferInStream.d.ts +29 -29
  315. package/lib/cjs/system/io/ABufferInStream.d.ts.map +1 -1
  316. package/lib/cjs/system/io/ABufferInStream.js +46 -46
  317. package/lib/cjs/system/io/ABufferInStream.js.map +1 -1
  318. package/lib/cjs/system/io/InStream.d.ts +23 -23
  319. package/lib/cjs/system/io/InStream.d.ts.map +1 -1
  320. package/lib/cjs/system/io/InStream.js +34 -34
  321. package/lib/cjs/system/io/InStream.js.map +1 -1
  322. package/lib/cjs/system/io/OutStream.d.ts +23 -23
  323. package/lib/cjs/system/io/OutStream.d.ts.map +1 -1
  324. package/lib/cjs/system/io/OutStream.js +33 -33
  325. package/lib/cjs/system/io/OutStream.js.map +1 -1
  326. package/lib/cjs/system/runtime/ALong.d.ts +329 -329
  327. package/lib/cjs/system/runtime/ALong.d.ts.map +1 -1
  328. package/lib/cjs/system/runtime/ALong.js +687 -687
  329. package/lib/cjs/system/runtime/ALong.js.map +1 -1
  330. package/lib/cjs/system/runtime/ASystem.d.ts +14 -14
  331. package/lib/cjs/system/runtime/ASystem.js +31 -31
  332. package/lib/cjs/system/runtime/ASystem.js.map +1 -1
  333. package/lib/cjs/system/runtime/Downloader.d.ts +17 -17
  334. package/lib/cjs/system/runtime/Downloader.js +38 -38
  335. package/lib/cjs/system/runtime/Downloader.js.map +1 -1
  336. package/lib/cjs/system/runtime/DownloaderNode.d.ts +18 -18
  337. package/lib/cjs/system/runtime/DownloaderNode.js +129 -129
  338. package/lib/cjs/system/runtime/DownloaderNode.js.map +1 -1
  339. package/lib/cjs/system/runtime/DownloaderXhr.d.ts +18 -18
  340. package/lib/cjs/system/runtime/DownloaderXhr.js +131 -131
  341. package/lib/cjs/system/runtime/DownloaderXhr.js.map +1 -1
  342. package/lib/cjs/system/runtime/Message.d.ts +16 -16
  343. package/lib/cjs/system/runtime/Message.js +39 -39
  344. package/lib/cjs/system/runtime/Message.js.map +1 -1
  345. package/lib/cjs/system/runtime/Numbers.d.ts +34 -34
  346. package/lib/cjs/system/runtime/Numbers.d.ts.map +1 -1
  347. package/lib/cjs/system/runtime/Numbers.js +87 -87
  348. package/lib/cjs/system/runtime/Numbers.js.map +1 -1
  349. package/lib/cjs/system/runtime/Strings.d.ts +49 -49
  350. package/lib/cjs/system/runtime/Strings.d.ts.map +1 -1
  351. package/lib/cjs/system/runtime/Strings.js +188 -188
  352. package/lib/cjs/system/runtime/Strings.js.map +1 -1
  353. package/lib/cjs/system/runtime/iComparator.d.ts +12 -12
  354. package/lib/cjs/system/runtime/iComparator.d.ts.map +1 -1
  355. package/lib/cjs/system/runtime/iComparator.js +9 -9
  356. package/lib/cjs/system/runtime/iComparator.js.map +1 -1
  357. package/lib/cjs/system/storage/CacheList.d.ts +39 -39
  358. package/lib/cjs/system/storage/CacheList.d.ts.map +1 -1
  359. package/lib/cjs/system/storage/CacheList.js +80 -80
  360. package/lib/cjs/system/storage/CacheList.js.map +1 -1
  361. package/lib/cjs/system/storage/CachedItem.d.ts +21 -21
  362. package/lib/cjs/system/storage/CachedItem.d.ts.map +1 -1
  363. package/lib/cjs/system/storage/CachedItem.js +25 -25
  364. package/lib/cjs/system/storage/CachedItem.js.map +1 -1
  365. package/lib/cjs/system/storage/ContentLoader.d.ts +64 -64
  366. package/lib/cjs/system/storage/ContentLoader.d.ts.map +1 -1
  367. package/lib/cjs/system/storage/ContentLoader.js +95 -95
  368. package/lib/cjs/system/storage/ContentLoader.js.map +1 -1
  369. package/lib/cjs/system/storage/FileContent.d.ts +19 -19
  370. package/lib/cjs/system/storage/FileContent.js +24 -24
  371. package/lib/cjs/system/storage/FileContent.js.map +1 -1
  372. package/lib/cjs/system/storage/FileRange.d.ts +20 -20
  373. package/lib/cjs/system/storage/FileRange.d.ts.map +1 -1
  374. package/lib/cjs/system/storage/FileRange.js +24 -24
  375. package/lib/cjs/system/storage/FileRange.js.map +1 -1
  376. package/lib/cjs/system/storage/FileStorage.d.ts +44 -44
  377. package/lib/cjs/system/storage/FileStorage.d.ts.map +1 -1
  378. package/lib/cjs/system/storage/FileStorage.js +62 -62
  379. package/lib/cjs/system/storage/FileStorage.js.map +1 -1
  380. package/lib/cjs/system/storage/NodeFS.d.ts +41 -41
  381. package/lib/cjs/system/storage/NodeFS.d.ts.map +1 -1
  382. package/lib/cjs/system/storage/NodeFS.js +79 -79
  383. package/lib/cjs/system/storage/NodeFS.js.map +1 -1
  384. package/lib/cjs/system/storage/PageCachedFile.d.ts +54 -54
  385. package/lib/cjs/system/storage/PageCachedFile.d.ts.map +1 -1
  386. package/lib/cjs/system/storage/PageCachedFile.js +165 -165
  387. package/lib/cjs/system/storage/PageCachedFile.js.map +1 -1
  388. package/lib/cjs/system/storage/UrlFS.d.ts +53 -53
  389. package/lib/cjs/system/storage/UrlFS.d.ts.map +1 -1
  390. package/lib/cjs/system/storage/UrlFS.js +114 -114
  391. package/lib/cjs/system/storage/UrlFS.js.map +1 -1
  392. package/lib/esm/core-orbitgt.d.ts +26 -26
  393. package/lib/esm/core-orbitgt.js +31 -31
  394. package/lib/esm/core-orbitgt.js.map +1 -1
  395. package/lib/esm/pointcloud/format/opc/AttributeMask.d.ts +30 -30
  396. package/lib/esm/pointcloud/format/opc/AttributeMask.js +43 -43
  397. package/lib/esm/pointcloud/format/opc/AttributeMask.js.map +1 -1
  398. package/lib/esm/pointcloud/format/opc/AttributeReader.d.ts +63 -63
  399. package/lib/esm/pointcloud/format/opc/AttributeReader.d.ts.map +1 -1
  400. package/lib/esm/pointcloud/format/opc/AttributeReader.js +20 -20
  401. package/lib/esm/pointcloud/format/opc/AttributeReader.js.map +1 -1
  402. package/lib/esm/pointcloud/format/opc/BlockRecord.d.ts +54 -54
  403. package/lib/esm/pointcloud/format/opc/BlockRecord.d.ts.map +1 -1
  404. package/lib/esm/pointcloud/format/opc/BlockRecord.js +81 -80
  405. package/lib/esm/pointcloud/format/opc/BlockRecord.js.map +1 -1
  406. package/lib/esm/pointcloud/format/opc/ContainerFile.d.ts +85 -85
  407. package/lib/esm/pointcloud/format/opc/ContainerFile.d.ts.map +1 -1
  408. package/lib/esm/pointcloud/format/opc/ContainerFile.js +196 -195
  409. package/lib/esm/pointcloud/format/opc/ContainerFile.js.map +1 -1
  410. package/lib/esm/pointcloud/format/opc/ContainerFilePart.d.ts +55 -55
  411. package/lib/esm/pointcloud/format/opc/ContainerFilePart.js +71 -71
  412. package/lib/esm/pointcloud/format/opc/ContainerFilePart.js.map +1 -1
  413. package/lib/esm/pointcloud/format/opc/DirectoryReader.d.ts +75 -75
  414. package/lib/esm/pointcloud/format/opc/DirectoryReader.d.ts.map +1 -1
  415. package/lib/esm/pointcloud/format/opc/DirectoryReader.js +165 -165
  416. package/lib/esm/pointcloud/format/opc/DirectoryReader.js.map +1 -1
  417. package/lib/esm/pointcloud/format/opc/DirectoryRecord.d.ts +59 -59
  418. package/lib/esm/pointcloud/format/opc/DirectoryRecord.d.ts.map +1 -1
  419. package/lib/esm/pointcloud/format/opc/DirectoryRecord.js +85 -85
  420. package/lib/esm/pointcloud/format/opc/DirectoryRecord.js.map +1 -1
  421. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.d.ts +106 -106
  422. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.d.ts.map +1 -1
  423. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.js +193 -193
  424. package/lib/esm/pointcloud/format/opc/EmbeddedAttributeReader.js.map +1 -1
  425. package/lib/esm/pointcloud/format/opc/FileAccess.d.ts +39 -39
  426. package/lib/esm/pointcloud/format/opc/FileAccess.js +44 -44
  427. package/lib/esm/pointcloud/format/opc/FileAccess.js.map +1 -1
  428. package/lib/esm/pointcloud/format/opc/FileReader.d.ts +118 -118
  429. package/lib/esm/pointcloud/format/opc/FileReader.d.ts.map +1 -1
  430. package/lib/esm/pointcloud/format/opc/FileReader.js +245 -244
  431. package/lib/esm/pointcloud/format/opc/FileReader.js.map +1 -1
  432. package/lib/esm/pointcloud/format/opc/FileRecord.d.ts +89 -89
  433. package/lib/esm/pointcloud/format/opc/FileRecord.d.ts.map +1 -1
  434. package/lib/esm/pointcloud/format/opc/FileRecord.js +121 -121
  435. package/lib/esm/pointcloud/format/opc/FileRecord.js.map +1 -1
  436. package/lib/esm/pointcloud/format/opc/GeometryReader.d.ts +79 -79
  437. package/lib/esm/pointcloud/format/opc/GeometryReader.d.ts.map +1 -1
  438. package/lib/esm/pointcloud/format/opc/GeometryReader.js +160 -159
  439. package/lib/esm/pointcloud/format/opc/GeometryReader.js.map +1 -1
  440. package/lib/esm/pointcloud/format/opc/GeometryRecord.d.ts +53 -53
  441. package/lib/esm/pointcloud/format/opc/GeometryRecord.js +103 -103
  442. package/lib/esm/pointcloud/format/opc/GeometryRecord.js.map +1 -1
  443. package/lib/esm/pointcloud/format/opc/OPCReader.d.ts +157 -157
  444. package/lib/esm/pointcloud/format/opc/OPCReader.d.ts.map +1 -1
  445. package/lib/esm/pointcloud/format/opc/OPCReader.js +315 -315
  446. package/lib/esm/pointcloud/format/opc/OPCReader.js.map +1 -1
  447. package/lib/esm/pointcloud/format/opc/PointReader.d.ts +72 -72
  448. package/lib/esm/pointcloud/format/opc/PointReader.d.ts.map +1 -1
  449. package/lib/esm/pointcloud/format/opc/PointReader.js +148 -148
  450. package/lib/esm/pointcloud/format/opc/PointReader.js.map +1 -1
  451. package/lib/esm/pointcloud/format/opc/TileReadBuffer.d.ts +63 -63
  452. package/lib/esm/pointcloud/format/opc/TileReadBuffer.d.ts.map +1 -1
  453. package/lib/esm/pointcloud/format/opc/TileReadBuffer.js +88 -88
  454. package/lib/esm/pointcloud/format/opc/TileReadBuffer.js.map +1 -1
  455. package/lib/esm/pointcloud/format/opc/TileRecord.d.ts +88 -88
  456. package/lib/esm/pointcloud/format/opc/TileRecord.d.ts.map +1 -1
  457. package/lib/esm/pointcloud/format/opc/TileRecord.js +158 -157
  458. package/lib/esm/pointcloud/format/opc/TileRecord.js.map +1 -1
  459. package/lib/esm/pointcloud/model/AttributeTypes.d.ts +37 -37
  460. package/lib/esm/pointcloud/model/AttributeTypes.d.ts.map +1 -1
  461. package/lib/esm/pointcloud/model/AttributeTypes.js +61 -60
  462. package/lib/esm/pointcloud/model/AttributeTypes.js.map +1 -1
  463. package/lib/esm/pointcloud/model/AttributeValue.d.ts +247 -247
  464. package/lib/esm/pointcloud/model/AttributeValue.d.ts.map +1 -1
  465. package/lib/esm/pointcloud/model/AttributeValue.js +505 -504
  466. package/lib/esm/pointcloud/model/AttributeValue.js.map +1 -1
  467. package/lib/esm/pointcloud/model/BlockIndex.d.ts +49 -49
  468. package/lib/esm/pointcloud/model/BlockIndex.d.ts.map +1 -1
  469. package/lib/esm/pointcloud/model/BlockIndex.js +44 -44
  470. package/lib/esm/pointcloud/model/BlockIndex.js.map +1 -1
  471. package/lib/esm/pointcloud/model/CloudPoint.d.ts +210 -210
  472. package/lib/esm/pointcloud/model/CloudPoint.d.ts.map +1 -1
  473. package/lib/esm/pointcloud/model/CloudPoint.js +315 -314
  474. package/lib/esm/pointcloud/model/CloudPoint.js.map +1 -1
  475. package/lib/esm/pointcloud/model/Grid.d.ts +91 -91
  476. package/lib/esm/pointcloud/model/Grid.d.ts.map +1 -1
  477. package/lib/esm/pointcloud/model/Grid.js +125 -125
  478. package/lib/esm/pointcloud/model/Grid.js.map +1 -1
  479. package/lib/esm/pointcloud/model/GridIndex.d.ts +66 -66
  480. package/lib/esm/pointcloud/model/GridIndex.d.ts.map +1 -1
  481. package/lib/esm/pointcloud/model/GridIndex.js +89 -89
  482. package/lib/esm/pointcloud/model/GridIndex.js.map +1 -1
  483. package/lib/esm/pointcloud/model/PointAttribute.d.ts +208 -208
  484. package/lib/esm/pointcloud/model/PointAttribute.d.ts.map +1 -1
  485. package/lib/esm/pointcloud/model/PointAttribute.js +370 -370
  486. package/lib/esm/pointcloud/model/PointAttribute.js.map +1 -1
  487. package/lib/esm/pointcloud/model/PointCloudReader.d.ts +156 -156
  488. package/lib/esm/pointcloud/model/PointCloudReader.d.ts.map +1 -1
  489. package/lib/esm/pointcloud/model/PointCloudReader.js +185 -185
  490. package/lib/esm/pointcloud/model/PointCloudReader.js.map +1 -1
  491. package/lib/esm/pointcloud/model/PointData.d.ts +17 -17
  492. package/lib/esm/pointcloud/model/PointData.js +20 -20
  493. package/lib/esm/pointcloud/model/PointData.js.map +1 -1
  494. package/lib/esm/pointcloud/model/PointDataRaw.d.ts +34 -34
  495. package/lib/esm/pointcloud/model/PointDataRaw.d.ts.map +1 -1
  496. package/lib/esm/pointcloud/model/PointDataRaw.js +66 -65
  497. package/lib/esm/pointcloud/model/PointDataRaw.js.map +1 -1
  498. package/lib/esm/pointcloud/model/ReadRequest.d.ts +175 -175
  499. package/lib/esm/pointcloud/model/ReadRequest.d.ts.map +1 -1
  500. package/lib/esm/pointcloud/model/ReadRequest.js +236 -235
  501. package/lib/esm/pointcloud/model/ReadRequest.js.map +1 -1
  502. package/lib/esm/pointcloud/model/StandardAttributes.d.ts +40 -40
  503. package/lib/esm/pointcloud/model/StandardAttributes.d.ts.map +1 -1
  504. package/lib/esm/pointcloud/model/StandardAttributes.js +44 -43
  505. package/lib/esm/pointcloud/model/StandardAttributes.js.map +1 -1
  506. package/lib/esm/pointcloud/model/TileIndex.d.ts +47 -47
  507. package/lib/esm/pointcloud/model/TileIndex.d.ts.map +1 -1
  508. package/lib/esm/pointcloud/model/TileIndex.js +43 -43
  509. package/lib/esm/pointcloud/model/TileIndex.js.map +1 -1
  510. package/lib/esm/pointcloud/render/AViewRequest.d.ts +38 -38
  511. package/lib/esm/pointcloud/render/AViewRequest.d.ts.map +1 -1
  512. package/lib/esm/pointcloud/render/AViewRequest.js +20 -20
  513. package/lib/esm/pointcloud/render/AViewRequest.js.map +1 -1
  514. package/lib/esm/pointcloud/render/Block.d.ts +67 -67
  515. package/lib/esm/pointcloud/render/Block.js +115 -115
  516. package/lib/esm/pointcloud/render/Block.js.map +1 -1
  517. package/lib/esm/pointcloud/render/DataManager.d.ts +136 -136
  518. package/lib/esm/pointcloud/render/DataManager.d.ts.map +1 -1
  519. package/lib/esm/pointcloud/render/DataManager.js +339 -338
  520. package/lib/esm/pointcloud/render/DataManager.js.map +1 -1
  521. package/lib/esm/pointcloud/render/FrameData.d.ts +30 -30
  522. package/lib/esm/pointcloud/render/FrameData.js +35 -35
  523. package/lib/esm/pointcloud/render/FrameData.js.map +1 -1
  524. package/lib/esm/pointcloud/render/Level.d.ts +90 -90
  525. package/lib/esm/pointcloud/render/Level.d.ts.map +1 -1
  526. package/lib/esm/pointcloud/render/Level.js +115 -115
  527. package/lib/esm/pointcloud/render/Level.js.map +1 -1
  528. package/lib/esm/pointcloud/render/TileLoadSorter.d.ts +60 -60
  529. package/lib/esm/pointcloud/render/TileLoadSorter.d.ts.map +1 -1
  530. package/lib/esm/pointcloud/render/TileLoadSorter.js +96 -95
  531. package/lib/esm/pointcloud/render/TileLoadSorter.js.map +1 -1
  532. package/lib/esm/pointcloud/render/ViewTree.d.ts +113 -113
  533. package/lib/esm/pointcloud/render/ViewTree.d.ts.map +1 -1
  534. package/lib/esm/pointcloud/render/ViewTree.js +360 -359
  535. package/lib/esm/pointcloud/render/ViewTree.js.map +1 -1
  536. package/lib/esm/spatial/crs/CRSEngine.d.ts +55 -55
  537. package/lib/esm/spatial/crs/CRSEngine.js +89 -89
  538. package/lib/esm/spatial/crs/CRSEngine.js.map +1 -1
  539. package/lib/esm/spatial/crs/CRSManager.d.ts +49 -49
  540. package/lib/esm/spatial/crs/CRSManager.js +106 -105
  541. package/lib/esm/spatial/crs/CRSManager.js.map +1 -1
  542. package/lib/esm/spatial/ecrs/Axis.d.ts +77 -77
  543. package/lib/esm/spatial/ecrs/Axis.d.ts.map +1 -1
  544. package/lib/esm/spatial/ecrs/Axis.js +89 -89
  545. package/lib/esm/spatial/ecrs/Axis.js.map +1 -1
  546. package/lib/esm/spatial/ecrs/CRS.d.ts +447 -447
  547. package/lib/esm/spatial/ecrs/CRS.d.ts.map +1 -1
  548. package/lib/esm/spatial/ecrs/CRS.js +927 -926
  549. package/lib/esm/spatial/ecrs/CRS.js.map +1 -1
  550. package/lib/esm/spatial/ecrs/CoordinateSystem.d.ts +142 -142
  551. package/lib/esm/spatial/ecrs/CoordinateSystem.d.ts.map +1 -1
  552. package/lib/esm/spatial/ecrs/CoordinateSystem.js +323 -322
  553. package/lib/esm/spatial/ecrs/CoordinateSystem.js.map +1 -1
  554. package/lib/esm/spatial/ecrs/DataFileUnit.d.ts +10 -10
  555. package/lib/esm/spatial/ecrs/DataFileUnit.js +101 -100
  556. package/lib/esm/spatial/ecrs/DataFileUnit.js.map +1 -1
  557. package/lib/esm/spatial/ecrs/Datum.d.ts +111 -111
  558. package/lib/esm/spatial/ecrs/Datum.d.ts.map +1 -1
  559. package/lib/esm/spatial/ecrs/Datum.js +163 -162
  560. package/lib/esm/spatial/ecrs/Datum.js.map +1 -1
  561. package/lib/esm/spatial/ecrs/Ellipsoid.d.ts +188 -188
  562. package/lib/esm/spatial/ecrs/Ellipsoid.d.ts.map +1 -1
  563. package/lib/esm/spatial/ecrs/Ellipsoid.js +332 -332
  564. package/lib/esm/spatial/ecrs/Ellipsoid.js.map +1 -1
  565. package/lib/esm/spatial/ecrs/OnlineEngine.d.ts +48 -48
  566. package/lib/esm/spatial/ecrs/OnlineEngine.js +98 -98
  567. package/lib/esm/spatial/ecrs/OnlineEngine.js.map +1 -1
  568. package/lib/esm/spatial/ecrs/OnlineRegistry.d.ts +37 -37
  569. package/lib/esm/spatial/ecrs/OnlineRegistry.d.ts.map +1 -1
  570. package/lib/esm/spatial/ecrs/OnlineRegistry.js +73 -72
  571. package/lib/esm/spatial/ecrs/OnlineRegistry.js.map +1 -1
  572. package/lib/esm/spatial/ecrs/Operation.d.ts +191 -191
  573. package/lib/esm/spatial/ecrs/Operation.d.ts.map +1 -1
  574. package/lib/esm/spatial/ecrs/Operation.js +342 -341
  575. package/lib/esm/spatial/ecrs/Operation.js.map +1 -1
  576. package/lib/esm/spatial/ecrs/OperationMethod.d.ts +71 -71
  577. package/lib/esm/spatial/ecrs/OperationMethod.d.ts.map +1 -1
  578. package/lib/esm/spatial/ecrs/OperationMethod.js +71 -71
  579. package/lib/esm/spatial/ecrs/OperationMethod.js.map +1 -1
  580. package/lib/esm/spatial/ecrs/ParameterValue.d.ts +49 -49
  581. package/lib/esm/spatial/ecrs/ParameterValue.d.ts.map +1 -1
  582. package/lib/esm/spatial/ecrs/ParameterValue.js +61 -61
  583. package/lib/esm/spatial/ecrs/ParameterValue.js.map +1 -1
  584. package/lib/esm/spatial/ecrs/ParameterValueList.d.ts +72 -72
  585. package/lib/esm/spatial/ecrs/ParameterValueList.d.ts.map +1 -1
  586. package/lib/esm/spatial/ecrs/ParameterValueList.js +116 -116
  587. package/lib/esm/spatial/ecrs/ParameterValueList.js.map +1 -1
  588. package/lib/esm/spatial/ecrs/PrimeMeridian.d.ts +78 -78
  589. package/lib/esm/spatial/ecrs/PrimeMeridian.d.ts.map +1 -1
  590. package/lib/esm/spatial/ecrs/PrimeMeridian.js +104 -104
  591. package/lib/esm/spatial/ecrs/PrimeMeridian.js.map +1 -1
  592. package/lib/esm/spatial/ecrs/Registry.d.ts +109 -109
  593. package/lib/esm/spatial/ecrs/Registry.d.ts.map +1 -1
  594. package/lib/esm/spatial/ecrs/Registry.js +204 -203
  595. package/lib/esm/spatial/ecrs/Registry.js.map +1 -1
  596. package/lib/esm/spatial/ecrs/Transform.d.ts +77 -77
  597. package/lib/esm/spatial/ecrs/Transform.d.ts.map +1 -1
  598. package/lib/esm/spatial/ecrs/Transform.js +393 -392
  599. package/lib/esm/spatial/ecrs/Transform.js.map +1 -1
  600. package/lib/esm/spatial/ecrs/Unit.d.ts +170 -170
  601. package/lib/esm/spatial/ecrs/Unit.d.ts.map +1 -1
  602. package/lib/esm/spatial/ecrs/Unit.js +333 -332
  603. package/lib/esm/spatial/ecrs/Unit.js.map +1 -1
  604. package/lib/esm/spatial/ecrs/VerticalModel.d.ts +69 -69
  605. package/lib/esm/spatial/ecrs/VerticalModel.d.ts.map +1 -1
  606. package/lib/esm/spatial/ecrs/VerticalModel.js +84 -84
  607. package/lib/esm/spatial/ecrs/VerticalModel.js.map +1 -1
  608. package/lib/esm/spatial/ecrs/WellKnownText.d.ts +153 -153
  609. package/lib/esm/spatial/ecrs/WellKnownText.d.ts.map +1 -1
  610. package/lib/esm/spatial/ecrs/WellKnownText.js +491 -490
  611. package/lib/esm/spatial/ecrs/WellKnownText.js.map +1 -1
  612. package/lib/esm/spatial/ecrs/WellKnownTextNode.d.ts +69 -69
  613. package/lib/esm/spatial/ecrs/WellKnownTextNode.d.ts.map +1 -1
  614. package/lib/esm/spatial/ecrs/WellKnownTextNode.js +124 -124
  615. package/lib/esm/spatial/ecrs/WellKnownTextNode.js.map +1 -1
  616. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.d.ts +101 -101
  617. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.d.ts.map +1 -1
  618. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.js +159 -158
  619. package/lib/esm/spatial/ecrs/projection/HotineObliqueMercator.js.map +1 -1
  620. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts +79 -79
  621. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.d.ts.map +1 -1
  622. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.js +122 -121
  623. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConic.js.map +1 -1
  624. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts +47 -47
  625. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.d.ts.map +1 -1
  626. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js +70 -69
  627. package/lib/esm/spatial/ecrs/projection/KrovakObliqueConformalConicEN.js.map +1 -1
  628. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.d.ts +72 -72
  629. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.d.ts.map +1 -1
  630. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.js +126 -125
  631. package/lib/esm/spatial/ecrs/projection/LambertConical1SP.js.map +1 -1
  632. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.d.ts +120 -120
  633. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.d.ts.map +1 -1
  634. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.js +176 -175
  635. package/lib/esm/spatial/ecrs/projection/LambertConical2SP.js.map +1 -1
  636. package/lib/esm/spatial/ecrs/projection/Mercator1SP.d.ts +73 -73
  637. package/lib/esm/spatial/ecrs/projection/Mercator1SP.d.ts.map +1 -1
  638. package/lib/esm/spatial/ecrs/projection/Mercator1SP.js +109 -108
  639. package/lib/esm/spatial/ecrs/projection/Mercator1SP.js.map +1 -1
  640. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.d.ts +96 -96
  641. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.d.ts.map +1 -1
  642. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.js +170 -169
  643. package/lib/esm/spatial/ecrs/projection/ObliqueMercator.js.map +1 -1
  644. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.d.ts +123 -123
  645. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.d.ts.map +1 -1
  646. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.js +205 -204
  647. package/lib/esm/spatial/ecrs/projection/ObliqueStereographic.js.map +1 -1
  648. package/lib/esm/spatial/ecrs/projection/TransverseMercator.d.ts +108 -108
  649. package/lib/esm/spatial/ecrs/projection/TransverseMercator.d.ts.map +1 -1
  650. package/lib/esm/spatial/ecrs/projection/TransverseMercator.js +180 -179
  651. package/lib/esm/spatial/ecrs/projection/TransverseMercator.js.map +1 -1
  652. package/lib/esm/spatial/ecrs/transformation/PositionVector.d.ts +90 -90
  653. package/lib/esm/spatial/ecrs/transformation/PositionVector.d.ts.map +1 -1
  654. package/lib/esm/spatial/ecrs/transformation/PositionVector.js +127 -126
  655. package/lib/esm/spatial/ecrs/transformation/PositionVector.js.map +1 -1
  656. package/lib/esm/spatial/geom/Bounds.d.ts +33 -33
  657. package/lib/esm/spatial/geom/Bounds.d.ts.map +1 -1
  658. package/lib/esm/spatial/geom/Bounds.js +152 -152
  659. package/lib/esm/spatial/geom/Bounds.js.map +1 -1
  660. package/lib/esm/spatial/geom/Coordinate.d.ts +61 -61
  661. package/lib/esm/spatial/geom/Coordinate.d.ts.map +1 -1
  662. package/lib/esm/spatial/geom/Coordinate.js +182 -182
  663. package/lib/esm/spatial/geom/Coordinate.js.map +1 -1
  664. package/lib/esm/spatial/geom/Line.d.ts +225 -225
  665. package/lib/esm/spatial/geom/Line.d.ts.map +1 -1
  666. package/lib/esm/spatial/geom/Line.js +428 -428
  667. package/lib/esm/spatial/geom/Line.js.map +1 -1
  668. package/lib/esm/spatial/geom/Transform.d.ts +340 -340
  669. package/lib/esm/spatial/geom/Transform.d.ts.map +1 -1
  670. package/lib/esm/spatial/geom/Transform.js +744 -744
  671. package/lib/esm/spatial/geom/Transform.js.map +1 -1
  672. package/lib/esm/system/buffer/ABuffer.d.ts +51 -51
  673. package/lib/esm/system/buffer/ABuffer.d.ts.map +1 -1
  674. package/lib/esm/system/buffer/ABuffer.js +86 -86
  675. package/lib/esm/system/buffer/ABuffer.js.map +1 -1
  676. package/lib/esm/system/buffer/Float32Buffer.d.ts +46 -46
  677. package/lib/esm/system/buffer/Float32Buffer.d.ts.map +1 -1
  678. package/lib/esm/system/buffer/Float32Buffer.js +57 -56
  679. package/lib/esm/system/buffer/Float32Buffer.js.map +1 -1
  680. package/lib/esm/system/buffer/LittleEndian.d.ts +149 -149
  681. package/lib/esm/system/buffer/LittleEndian.d.ts.map +1 -1
  682. package/lib/esm/system/buffer/LittleEndian.js +299 -299
  683. package/lib/esm/system/buffer/LittleEndian.js.map +1 -1
  684. package/lib/esm/system/buffer/Uint16Buffer.d.ts +49 -49
  685. package/lib/esm/system/buffer/Uint16Buffer.d.ts.map +1 -1
  686. package/lib/esm/system/buffer/Uint16Buffer.js +62 -61
  687. package/lib/esm/system/buffer/Uint16Buffer.js.map +1 -1
  688. package/lib/esm/system/buffer/Uint8Buffer.d.ts +49 -49
  689. package/lib/esm/system/buffer/Uint8Buffer.d.ts.map +1 -1
  690. package/lib/esm/system/buffer/Uint8Buffer.js +62 -61
  691. package/lib/esm/system/buffer/Uint8Buffer.js.map +1 -1
  692. package/lib/esm/system/collection/AList.d.ts +30 -30
  693. package/lib/esm/system/collection/AList.d.ts.map +1 -1
  694. package/lib/esm/system/collection/AList.js +66 -66
  695. package/lib/esm/system/collection/AList.js.map +1 -1
  696. package/lib/esm/system/collection/IntMap.d.ts +18 -18
  697. package/lib/esm/system/collection/IntMap.d.ts.map +1 -1
  698. package/lib/esm/system/collection/IntMap.js +31 -31
  699. package/lib/esm/system/collection/IntMap.js.map +1 -1
  700. package/lib/esm/system/collection/StringMap.d.ts +26 -26
  701. package/lib/esm/system/collection/StringMap.d.ts.map +1 -1
  702. package/lib/esm/system/collection/StringMap.js +59 -59
  703. package/lib/esm/system/collection/StringMap.js.map +1 -1
  704. package/lib/esm/system/io/ABufferInStream.d.ts +29 -29
  705. package/lib/esm/system/io/ABufferInStream.d.ts.map +1 -1
  706. package/lib/esm/system/io/ABufferInStream.js +42 -42
  707. package/lib/esm/system/io/ABufferInStream.js.map +1 -1
  708. package/lib/esm/system/io/InStream.d.ts +23 -23
  709. package/lib/esm/system/io/InStream.d.ts.map +1 -1
  710. package/lib/esm/system/io/InStream.js +30 -30
  711. package/lib/esm/system/io/InStream.js.map +1 -1
  712. package/lib/esm/system/io/OutStream.d.ts +23 -23
  713. package/lib/esm/system/io/OutStream.d.ts.map +1 -1
  714. package/lib/esm/system/io/OutStream.js +29 -29
  715. package/lib/esm/system/io/OutStream.js.map +1 -1
  716. package/lib/esm/system/runtime/ALong.d.ts +329 -329
  717. package/lib/esm/system/runtime/ALong.d.ts.map +1 -1
  718. package/lib/esm/system/runtime/ALong.js +684 -683
  719. package/lib/esm/system/runtime/ALong.js.map +1 -1
  720. package/lib/esm/system/runtime/ASystem.d.ts +14 -14
  721. package/lib/esm/system/runtime/ASystem.js +28 -27
  722. package/lib/esm/system/runtime/ASystem.js.map +1 -1
  723. package/lib/esm/system/runtime/Downloader.d.ts +17 -17
  724. package/lib/esm/system/runtime/Downloader.js +35 -34
  725. package/lib/esm/system/runtime/Downloader.js.map +1 -1
  726. package/lib/esm/system/runtime/DownloaderNode.d.ts +18 -18
  727. package/lib/esm/system/runtime/DownloaderNode.js +125 -125
  728. package/lib/esm/system/runtime/DownloaderNode.js.map +1 -1
  729. package/lib/esm/system/runtime/DownloaderXhr.d.ts +18 -18
  730. package/lib/esm/system/runtime/DownloaderXhr.js +127 -127
  731. package/lib/esm/system/runtime/DownloaderXhr.js.map +1 -1
  732. package/lib/esm/system/runtime/Message.d.ts +16 -16
  733. package/lib/esm/system/runtime/Message.js +36 -35
  734. package/lib/esm/system/runtime/Message.js.map +1 -1
  735. package/lib/esm/system/runtime/Numbers.d.ts +34 -34
  736. package/lib/esm/system/runtime/Numbers.d.ts.map +1 -1
  737. package/lib/esm/system/runtime/Numbers.js +84 -83
  738. package/lib/esm/system/runtime/Numbers.js.map +1 -1
  739. package/lib/esm/system/runtime/Strings.d.ts +49 -49
  740. package/lib/esm/system/runtime/Strings.d.ts.map +1 -1
  741. package/lib/esm/system/runtime/Strings.js +185 -184
  742. package/lib/esm/system/runtime/Strings.js.map +1 -1
  743. package/lib/esm/system/runtime/iComparator.d.ts +12 -12
  744. package/lib/esm/system/runtime/iComparator.d.ts.map +1 -1
  745. package/lib/esm/system/runtime/iComparator.js +8 -8
  746. package/lib/esm/system/runtime/iComparator.js.map +1 -1
  747. package/lib/esm/system/storage/CacheList.d.ts +39 -39
  748. package/lib/esm/system/storage/CacheList.d.ts.map +1 -1
  749. package/lib/esm/system/storage/CacheList.js +76 -76
  750. package/lib/esm/system/storage/CacheList.js.map +1 -1
  751. package/lib/esm/system/storage/CachedItem.d.ts +21 -21
  752. package/lib/esm/system/storage/CachedItem.d.ts.map +1 -1
  753. package/lib/esm/system/storage/CachedItem.js +21 -21
  754. package/lib/esm/system/storage/CachedItem.js.map +1 -1
  755. package/lib/esm/system/storage/ContentLoader.d.ts +64 -64
  756. package/lib/esm/system/storage/ContentLoader.d.ts.map +1 -1
  757. package/lib/esm/system/storage/ContentLoader.js +92 -91
  758. package/lib/esm/system/storage/ContentLoader.js.map +1 -1
  759. package/lib/esm/system/storage/FileContent.d.ts +19 -19
  760. package/lib/esm/system/storage/FileContent.js +20 -20
  761. package/lib/esm/system/storage/FileContent.js.map +1 -1
  762. package/lib/esm/system/storage/FileRange.d.ts +20 -20
  763. package/lib/esm/system/storage/FileRange.d.ts.map +1 -1
  764. package/lib/esm/system/storage/FileRange.js +20 -20
  765. package/lib/esm/system/storage/FileRange.js.map +1 -1
  766. package/lib/esm/system/storage/FileStorage.d.ts +44 -44
  767. package/lib/esm/system/storage/FileStorage.d.ts.map +1 -1
  768. package/lib/esm/system/storage/FileStorage.js +58 -58
  769. package/lib/esm/system/storage/FileStorage.js.map +1 -1
  770. package/lib/esm/system/storage/NodeFS.d.ts +41 -41
  771. package/lib/esm/system/storage/NodeFS.d.ts.map +1 -1
  772. package/lib/esm/system/storage/NodeFS.js +75 -75
  773. package/lib/esm/system/storage/NodeFS.js.map +1 -1
  774. package/lib/esm/system/storage/PageCachedFile.d.ts +54 -54
  775. package/lib/esm/system/storage/PageCachedFile.d.ts.map +1 -1
  776. package/lib/esm/system/storage/PageCachedFile.js +161 -161
  777. package/lib/esm/system/storage/PageCachedFile.js.map +1 -1
  778. package/lib/esm/system/storage/UrlFS.d.ts +53 -53
  779. package/lib/esm/system/storage/UrlFS.d.ts.map +1 -1
  780. package/lib/esm/system/storage/UrlFS.js +110 -110
  781. package/lib/esm/system/storage/UrlFS.js.map +1 -1
  782. package/package.json +10 -11
@@ -1,684 +1,685 @@
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 { ASystem } from "./ASystem";
9
- import { Numbers } from "./Numbers";
10
- import { Strings } from "./Strings";
11
- /**
12
- * Class ALong defines a signed 64-bit integer using two (high and low) 64-bit floats.
13
- *
14
- * @version 1.0 February 2019
15
- */
16
- /** @internal */
17
- export class ALong {
18
- /**
19
- * Create a new value.
20
- * @param high the 32-bit high part.
21
- * @param low the 32-bit low part.
22
- */
23
- constructor(high, low) {
24
- this._high = high;
25
- this._low = low;
26
- }
27
- /**
28
- * Check if the number is zero.
29
- * @return true if zero.
30
- */
31
- isZero() {
32
- return (this._high == 0.0) && (this._low == 0.0);
33
- }
34
- /**
35
- * Check if the number is not zero.
36
- * @return true if zero.
37
- */
38
- isNonZero() {
39
- return (this.isZero() == false);
40
- }
41
- /**
42
- * Check if the number is one.
43
- * @return true if one.
44
- */
45
- isOne() {
46
- return (this._high == 0.0) && (this._low == 1.0);
47
- }
48
- /**
49
- * Check if the number is positive.
50
- * @return true if positive (false if zero).
51
- */
52
- isPositive() {
53
- return this.isZero() ? false : (this._high < ALong._U31);
54
- }
55
- /**
56
- * Check if the number is negative.
57
- * @return true if negative (false if zero).
58
- */
59
- isNegative() {
60
- return this.isZero() ? false : (this._high >= ALong._U31);
61
- }
62
- /**
63
- * Normalize the number.
64
- * @return this number for chaining operations.
65
- */
66
- static normalize2(high, low) {
67
- // normalize the low part
68
- let overflowLow = Numbers.floor(low / ALong._U32);
69
- low = (low - overflowLow * ALong._U32); // inside range [0..U32[
70
- high += overflowLow;
71
- // normalize the high part
72
- let overflowHigh = Numbers.floor(high / ALong._U32);
73
- high = (high - overflowHigh * ALong._U32); // inside range [0..U32[
74
- // return the result
75
- return new ALong(high, low);
76
- }
77
- /**
78
- * Negate the number.
79
- * @return the result.
80
- */
81
- negate() {
82
- /* Zero? */
83
- if (this.isZero()) {
84
- /* Return this immutable instance */
85
- return this;
86
- }
87
- /* Compute */
88
- let resultHigh = (ALong._U32 - 1.0 - this._high);
89
- let resultLow = (ALong._U32 - this._low);
90
- /* Overflow? */
91
- if (resultLow == ALong._U32) {
92
- resultLow = 0.0;
93
- resultHigh += 1.0; // in case we try to invert ALong.MIN_VALUE we get ALong.MIN_VALUE as a result again
94
- }
95
- /* Return the result */
96
- return new ALong(resultHigh, resultLow);
97
- }
98
- /**
99
- * Add a number.
100
- * @param value the value to add.
101
- * @return the result.
102
- */
103
- add(value) {
104
- /* Compute */
105
- let resultHigh = (this._high + value._high);
106
- let resultLow = (this._low + value._low);
107
- /* Return the result */
108
- return ALong.normalize2(resultHigh, resultLow);
109
- }
110
- /**
111
- * Add a number.
112
- * @param value the value to add.
113
- * @return the result.
114
- */
115
- addInt(value) {
116
- return this.add(ALong.fromInt(value));
117
- }
118
- /**
119
- * Increase by one.
120
- * @return the result.
121
- */
122
- increase() {
123
- return this.addInt(1);
124
- }
125
- /**
126
- * Subtract a number.
127
- * @param value the value to subtract.
128
- * @return the result.
129
- */
130
- sub(value) {
131
- return this.add(value.negate());
132
- }
133
- /**
134
- * Subtract a number.
135
- * @param value the value to subtract.
136
- * @return the result.
137
- */
138
- subInt(value) {
139
- return this.sub(ALong.fromInt(value));
140
- }
141
- /**
142
- * Decrease by one.
143
- * @return the result.
144
- */
145
- decrease() {
146
- return this.subInt(1);
147
- }
148
- /**
149
- * Multiply two unsigned 32-bit integer values.
150
- * @param v1 the first value.
151
- * @param v2 the second value.
152
- * @param high0 the initial high value of the result.
153
- * @return the unsigned 64-bit product.
154
- */
155
- static mul2(v1, v2) {
156
- /* Zero? */
157
- if (v1.isZero())
158
- return v1;
159
- if (v2.isZero())
160
- return v2;
161
- /* Make the values unsigned */
162
- let neg1 = v1.isNegative() ? 1 : 0;
163
- if (neg1 == 1)
164
- v1 = v1.negate();
165
- let neg2 = v2.isNegative() ? 1 : 0;
166
- if (neg2 == 1)
167
- v2 = v2.negate();
168
- /* Split first low into 16-bit parts */
169
- let a1 = Numbers.floor(v1._low / ALong._U16);
170
- ;
171
- let a2 = (v1._low - a1 * ALong._U16);
172
- /* Split second low into 16-bit parts */
173
- let b1 = Numbers.floor(v2._low / ALong._U16);
174
- ;
175
- let b2 = (v2._low - b1 * ALong._U16);
176
- /* Compute */
177
- let resultHigh = (v1._high * v2._low + v1._low * v2._high) + (a1 * b1);
178
- let resultLow = (a1 * b2 + a2 * b1) * ALong._U16 + (a2 * b2);
179
- let result = ALong.normalize2(resultHigh, resultLow);
180
- /* Return the result */
181
- return (neg1 + neg2 == 1) ? result.negate() : result;
182
- }
183
- /**
184
- * Multiply by a number.
185
- * @param value the value to multiply.
186
- * @return the result.
187
- */
188
- mul(value) {
189
- return ALong.mul2(this, value);
190
- }
191
- /**
192
- * Multiply by a number.
193
- * @param value the value to multiply.
194
- * @return the result.
195
- */
196
- mulInt(value) {
197
- return this.mul(ALong.fromInt(value));
198
- }
199
- /**
200
- * Divide by a number.
201
- * @param value the value to divide by.
202
- * @return the result.
203
- */
204
- div(value) {
205
- /* Division by zero? */
206
- ASystem.assertNot(value.isZero(), "ALong division by ALong zero");
207
- /* Division by one? */
208
- if (value.isOne())
209
- return this;
210
- /* Make the values unsigned */
211
- let currentValue = this;
212
- let neg1 = currentValue.isNegative();
213
- if (neg1)
214
- currentValue = currentValue.negate();
215
- let value2 = value;
216
- let neg2 = value2.isNegative();
217
- if (neg2)
218
- value2.negate();
219
- let neg = (neg1 && !neg2) || (!neg1 && neg2);
220
- /* Loop until the remainder is smaller than the value */
221
- let result = ALong.ZERO;
222
- while (currentValue.isLargerThanOrEqualTo(value2)) {
223
- /* Shift the value as much as possible */
224
- let test = value2;
225
- let times = ALong.ONE;
226
- if (test.isSmallerThan(currentValue)) {
227
- while (test.isSmallerThan(currentValue)) {
228
- test = test.mulInt(2);
229
- times = times.mulInt(2);
230
- }
231
- test = test.divInt(2);
232
- times = times.divInt(2);
233
- }
234
- /* Subtract the shifted value */
235
- currentValue = currentValue.sub(test);
236
- result = result.add(times);
237
- }
238
- /* Return the result */
239
- return (neg) ? result.negate() : result;
240
- }
241
- /**
242
- * Divide by a number.
243
- * @param value the value to divide by.
244
- * @return the result.
245
- */
246
- divInt(value) {
247
- /* Division by zero? */
248
- ASystem.assertNot(value == 0, "ALong division by int zero");
249
- /* Division by one? */
250
- if (value == 1)
251
- return this;
252
- /* Make the values unsigned */
253
- let value1 = this;
254
- let neg1 = value1.isNegative();
255
- if (neg1)
256
- value1 = value1.negate();
257
- let neg2 = (value < 0);
258
- if (neg2)
259
- value = -1 * value;
260
- let neg = (neg1 && !neg2) || (!neg1 && neg2);
261
- /* Compute */
262
- let valueF = (0.0 + value);
263
- let h1 = Numbers.floor(value1._high / valueF);
264
- let h2 = (value1._high - valueF * h1);
265
- let l1 = Numbers.floor(value1._low / valueF);
266
- let l2 = (value1._low - valueF * l1);
267
- let t = (h2 * ALong._U32 + l2);
268
- let t1 = Numbers.floor(t / valueF);
269
- let t2 = (t - valueF * t1); // remainder
270
- let result = ALong.normalize2(h1, l1 + t1);
271
- /* Return the result */
272
- return (neg) ? result.negate() : result;
273
- }
274
- /**
275
- * Modulate by a number.
276
- * @param value the value to modulate by.
277
- * @return the result.
278
- */
279
- mod(value) {
280
- /* Division by zero? */
281
- ASystem.assertNot(value.isZero(), "ALong modulo by ALong zero");
282
- /* Division by one? */
283
- if (value.isOne())
284
- return ALong.ZERO;
285
- /* Compute */
286
- let result = this.sub(this.div(value).mul(value));
287
- /* Return the result */
288
- return result;
289
- }
290
- /**
291
- * Modulate by a number.
292
- * @param value the value to modulate by.
293
- * @return the modulo value.
294
- */
295
- modInt(value) {
296
- /* Division by zero? */
297
- ASystem.assertNot(value == 0, "ALong modulo by int zero");
298
- /* Division by one? */
299
- if (value == 1)
300
- return 0;
301
- /* Make the values unsigned */
302
- let value1 = this;
303
- let neg1 = value1.isNegative();
304
- if (neg1)
305
- value1 = value1.negate();
306
- let neg2 = (value < 0);
307
- if (neg2)
308
- value = -1 * value;
309
- let neg = (neg1 && !neg2) || (!neg1 && neg2);
310
- /* Compute */
311
- let valueF = (0.0 + value);
312
- let h1 = Numbers.floor(value1._high / valueF);
313
- let h2 = (value1._high - valueF * h1);
314
- let l1 = Numbers.floor(value1._low / valueF);
315
- let l2 = (value1._low - valueF * l1);
316
- let t = (h2 * ALong._U32 + l2);
317
- let t1 = Numbers.floor(t / valueF);
318
- let t2 = (t - valueF * t1); // remainder
319
- let result = Math.trunc(t2);
320
- /* Return the result */
321
- return result;
322
- }
323
- /**
324
- * Create a new number.
325
- * @param value the 64-bit float value.
326
- * @return the new number.
327
- */
328
- static fromDouble(value) {
329
- /* Make the value unsigned */
330
- let neg = (value < 0.0);
331
- if (neg)
332
- value = (-1.0 * value);
333
- /* Compute */
334
- value = Numbers.floor(value);
335
- let high = Numbers.floor(value / ALong._U32);
336
- let low = (value - high * ALong._U32);
337
- let result = ALong.normalize2(high, low);
338
- /* Return the result */
339
- return (neg) ? result.negate() : result;
340
- }
341
- /**
342
- * Get a double.
343
- * @return the double value.
344
- */
345
- toDouble() {
346
- /* Make the value unsigned */
347
- let value = this;
348
- let neg = value.isNegative();
349
- if (neg)
350
- value = value.negate();
351
- /* Compute */
352
- let result = (value._high * ALong._U32) + value._low;
353
- if (neg)
354
- result *= -1.0;
355
- /* Return the result */
356
- return result;
357
- }
358
- /**
359
- * Create a new number.
360
- * @param value the 32-bit integer value.
361
- * @return the new number.
362
- */
363
- static fromInt(value) {
364
- return (value < 0.0) ? new ALong(ALong._U32 - 1.0, ALong._U32 + value) : new ALong(0.0, value);
365
- }
366
- /**
367
- * Get a 32-bit integer.
368
- * @return the integer value.
369
- */
370
- toInt() {
371
- /* Make the value unsigned */
372
- let value = this;
373
- let neg = value.isNegative();
374
- if (neg)
375
- value = value.negate();
376
- /* Compute */
377
- let result = value._low;
378
- if (neg)
379
- result *= -1.0;
380
- /* Return the result */
381
- return Numbers.doubleToInt(result);
382
- }
383
- /**
384
- * Create a new number.
385
- * @param i1 the 32-bit high part.
386
- * @param i0 the 32-bit low part.
387
- * @return the new number.
388
- */
389
- static fromHighLow(i1, i0) {
390
- if (i1 < 0.0)
391
- i1 += ALong._U32; // make unsigned
392
- if (i0 < 0.0)
393
- i0 += ALong._U32;
394
- return new ALong(i1, i0);
395
- }
396
- /**
397
- * Get the high part.
398
- * @return the integer value (0..4294967295)
399
- */
400
- getHigh() {
401
- return this._high;
402
- }
403
- /**
404
- * Get the low part.
405
- * @return the integer value (0..4294967295)
406
- */
407
- getLow() {
408
- return this._low;
409
- }
410
- /**
411
- * Create a new number.
412
- * @param b7 the most significant 8-bit byte of the high part (0..255).
413
- * @param b6 the most third 8-bit byte of the high part (0..255).
414
- * @param b5 the most second 8-bit byte of the high part (0..255).
415
- * @param b4 the most least 8-bit byte of the high part (0..255).
416
- * @param b3 the most significant 8-bit byte of the low part (0..255).
417
- * @param b2 the most third 8-bit byte of the low part (0..255).
418
- * @param b1 the most second 8-bit byte of the low part (0..255).
419
- * @param b0 the most least 8-bit byte of the low part (0..255).
420
- * @return the new number.
421
- */
422
- static fromBytes(b7, b6, b5, b4, b3, b2, b1, b0) {
423
- if (b7 < 0.0)
424
- b7 += ALong._U8; // make unsigned
425
- if (b6 < 0.0)
426
- b6 += ALong._U8;
427
- if (b5 < 0.0)
428
- b5 += ALong._U8;
429
- if (b4 < 0.0)
430
- b4 += ALong._U8;
431
- if (b3 < 0.0)
432
- b3 += ALong._U8;
433
- if (b2 < 0.0)
434
- b2 += ALong._U8;
435
- if (b1 < 0.0)
436
- b1 += ALong._U8;
437
- if (b0 < 0.0)
438
- b0 += ALong._U8;
439
- let high = (b7 * ALong._U24 + b6 * ALong._U16 + b5 * ALong._U8 + b4);
440
- let low = (b3 * ALong._U24 + b2 * ALong._U16 + b1 * ALong._U8 + b0);
441
- return ALong.fromHighLow(high, low);
442
- }
443
- /**
444
- * Get a byte.
445
- * @param index the index of the byte (0..7 where 0 is low).
446
- * @return the byte value (0..255)
447
- */
448
- getByte(index) {
449
- let value = (index < 4) ? this._low : this._high; // this should be unsigned
450
- let position = (index < 4) ? index : (index - 4);
451
- for (let i = 0; i < position; i++)
452
- value = Numbers.floor(value / 256.0);
453
- return Math.trunc(value % 256);
454
- }
455
- /**
456
- * Check if a number is equal.
457
- * @param value the value to check.
458
- * @return true if equal.
459
- */
460
- isEqualTo(value) {
461
- return (value._high == this._high) && (value._low == this._low);
462
- }
463
- /**
464
- * Check if a number is not equal.
465
- * @param value the value to check.
466
- * @return true if equal.
467
- */
468
- isNotEqualTo(value) {
469
- return (this.isEqualTo(value) == false);
470
- }
471
- /**
472
- * Check if a number is equal.
473
- * @param value the value to check.
474
- * @return true if equal.
475
- */
476
- same(value) {
477
- return this.isEqualTo(value);
478
- }
479
- /**
480
- * Check if a number is equal.
481
- * @param value the value to check.
482
- * @return true if equal.
483
- */
484
- equals(value) {
485
- return this.isEqualTo(value);
486
- }
487
- /**
488
- * Compare this long to another long.
489
- * @param value the other long.
490
- * @return zero if equal, positive if smaller, or negative if value is larger.
491
- */
492
- compareTo(value) {
493
- let diff = this.sub(value);
494
- if (diff.isZero())
495
- return 0;
496
- return diff.isNegative() ? -1 : 1;
497
- }
498
- /**
499
- * Check if a value is larger.
500
- * @param value the value to check.
501
- * @return true if this number is larger than the check value.
502
- */
503
- isLargerThan(value) {
504
- return (this.compareTo(value) > 0);
505
- }
506
- /**
507
- * Check if a value is larger.
508
- * @param value the value to check.
509
- * @return true if this number is larger than the check value.
510
- */
511
- isLargerThanOrEqualTo(value) {
512
- return (this.compareTo(value) >= 0);
513
- }
514
- /**
515
- * Check if a value is smaller.
516
- * @param value the value to check.
517
- * @return true if this number is smaller than the check value.
518
- */
519
- isSmallerThan(value) {
520
- return (this.compareTo(value) < 0);
521
- }
522
- /**
523
- * Check if a value is smaller.
524
- * @param value the value to check.
525
- * @return true if this number is smaller than the check value.
526
- */
527
- isSmallerThanOrEqualTo(value) {
528
- return (this.compareTo(value) <= 0);
529
- }
530
- /**
531
- * Get the maximum value.
532
- * @param v1 the first value.
533
- * @param v2 the second value.
534
- * @return the maximum value.
535
- */
536
- static max(v1, v2) {
537
- return (v2.isLargerThan(v1)) ? v2 : v1;
538
- }
539
- /**
540
- * Get the minimum value.
541
- * @param v1 the first value.
542
- * @param v2 the second value.
543
- * @return the minimum value.
544
- */
545
- static min(v1, v2) {
546
- return (v2.isSmallerThan(v1)) ? v2 : v1;
547
- }
548
- /**
549
- * Create a number from a string.
550
- * @param svalue the string value.
551
- * @param radix the radix (2 to 36).
552
- * @return the number.
553
- */
554
- static fromRadixString(svalue, radix) {
555
- /* Check the radix */
556
- ASystem.assertNot((radix < 2) || (radix > 36), "Invalid radix: " + radix);
557
- /* Common values? */
558
- if (Strings.equals(svalue, "0"))
559
- return ALong.ZERO;
560
- if (Strings.equals(svalue, "1"))
561
- return ALong.ONE;
562
- /* Negative? */
563
- let neg = Strings.startsWith(svalue, "-");
564
- if (neg)
565
- svalue = Strings.substringFrom(svalue, 1);
566
- /* Add all digits */
567
- let result = ALong.ZERO;
568
- let unit = ALong.ONE;
569
- let radixHL = ALong.fromInt(radix);
570
- let slength = Strings.getLength(svalue);
571
- for (let i = 0; i < slength; i++) {
572
- /* Add the next digit */
573
- let charCode = Strings.charCodeAt(svalue, slength - 1 - i);
574
- let digit = (charCode >= 65) ? (charCode - 65 + 10) : (charCode - 48);
575
- if (digit > 0)
576
- result = result.add(unit.mulInt(digit));
577
- unit = unit.mul(radixHL);
578
- }
579
- /* Return the result */
580
- return (neg) ? result.negate() : result;
581
- }
582
- /**
583
- * Create a number from a decimal string.
584
- * @param value the string value.
585
- * @return the number.
586
- */
587
- static fromString(value) {
588
- if (value == null)
589
- return null;
590
- return ALong.fromRadixString(value, 10);
591
- }
592
- /**
593
- * Create a number from a hexadecimal string.
594
- * @param value the string value.
595
- * @return the number.
596
- */
597
- static fromHexString(value) {
598
- if (value == null)
599
- return null;
600
- return ALong.fromRadixString(value, 16);
601
- }
602
- /**
603
- * Convert the number to a string.
604
- * @param radix the radix (2 to 36).
605
- * @return the string.
606
- */
607
- getRadixString(radix) {
608
- /* Check the radix */
609
- ASystem.assertNot((radix < 2) || (radix > 36), "Invalid radix: " + radix);
610
- /* Common values? */
611
- let value = this;
612
- if (value.isZero())
613
- return "0";
614
- /* Make the value unsigned */
615
- let neg = value.isNegative();
616
- if (neg)
617
- value = value.negate();
618
- /* Add all digits */
619
- let result = "";
620
- while (true) {
621
- /* Add the next digit */
622
- if (value.isZero())
623
- break;
624
- let digit = value.modInt(radix);
625
- value = value.divInt(radix);
626
- let sdigit = (digit < 10) ? Strings.charCodeToString(48 + digit) : Strings.charCodeToString(65 + digit - 10);
627
- result = (sdigit + result);
628
- /* Fail? */
629
- ASystem.assertNot(Strings.getLength(result) > 20, "Failed to convert longHL to string (radix " + radix + "): " + this._high + ";" + this._low);
630
- }
631
- if (neg)
632
- result = ("-" + result);
633
- /* Return the result */
634
- return result;
635
- }
636
- /**
637
- * Convert the number to a decimal string.
638
- * @return the string.
639
- */
640
- getString() {
641
- return this.getRadixString(10);
642
- }
643
- /**
644
- * Convert the number to a hexadecimal string.
645
- * @return the string.
646
- */
647
- getHexString() {
648
- return this.getRadixString(16);
649
- }
650
- /**
651
- * The standard toString method.
652
- * @see Object#toString
653
- */
654
- toString() {
655
- return this.getString();
656
- }
657
- }
658
- /** The value of a 32 bit unit */
659
- ALong._U32 = 4294967296.0;
660
- /** The value of a 31 bit unit */
661
- ALong._U31 = 2147483648.0;
662
- /** The value of a 24 bit unit */
663
- ALong._U24 = 16777216.0;
664
- /** The value of a 16 bit unit */
665
- ALong._U16 = 65536.0;
666
- /** The value of a 8 bit unit */
667
- ALong._U8 = 256.0;
668
- /** The integer value 0 */
669
- ALong.ZERO = new ALong(0.0, 0.0);
670
- /** The integer value 1 */
671
- ALong.ONE = new ALong(0.0, 1.0);
672
- /** The integer value 2 */
673
- ALong.TWO = new ALong(0.0, 2.0);
674
- /** The integer value 4 */
675
- ALong.FOUR = new ALong(0.0, 4.0);
676
- /** The integer value 10 */
677
- ALong.TEN = new ALong(0.0, 10.0);
678
- /** The integer value -1 */
679
- ALong.MINUS_ONE = new ALong(ALong._U32 - 1.0, ALong._U32 - 1.0);
680
- /** The maximum positive value of a signed_ 64-bit integer (9223372036854775807) */
681
- ALong.MAX_VALUE = new ALong(ALong._U31 - 1.0, ALong._U32 - 1.0);
682
- /** The minimum negative value of a signed 64-bit integer (-9223372036854775808) */
683
- ALong.MIN_VALUE = new ALong(ALong._U31, 0.0);
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 { ASystem } from "./ASystem";
9
+ import { Numbers } from "./Numbers";
10
+ import { Strings } from "./Strings";
11
+ /**
12
+ * Class ALong defines a signed 64-bit integer using two (high and low) 64-bit floats.
13
+ *
14
+ * @version 1.0 February 2019
15
+ */
16
+ /** @internal */
17
+ class ALong {
18
+ /**
19
+ * Create a new value.
20
+ * @param high the 32-bit high part.
21
+ * @param low the 32-bit low part.
22
+ */
23
+ constructor(high, low) {
24
+ this._high = high;
25
+ this._low = low;
26
+ }
27
+ /**
28
+ * Check if the number is zero.
29
+ * @return true if zero.
30
+ */
31
+ isZero() {
32
+ return (this._high == 0.0) && (this._low == 0.0);
33
+ }
34
+ /**
35
+ * Check if the number is not zero.
36
+ * @return true if zero.
37
+ */
38
+ isNonZero() {
39
+ return (this.isZero() == false);
40
+ }
41
+ /**
42
+ * Check if the number is one.
43
+ * @return true if one.
44
+ */
45
+ isOne() {
46
+ return (this._high == 0.0) && (this._low == 1.0);
47
+ }
48
+ /**
49
+ * Check if the number is positive.
50
+ * @return true if positive (false if zero).
51
+ */
52
+ isPositive() {
53
+ return this.isZero() ? false : (this._high < ALong._U31);
54
+ }
55
+ /**
56
+ * Check if the number is negative.
57
+ * @return true if negative (false if zero).
58
+ */
59
+ isNegative() {
60
+ return this.isZero() ? false : (this._high >= ALong._U31);
61
+ }
62
+ /**
63
+ * Normalize the number.
64
+ * @return this number for chaining operations.
65
+ */
66
+ static normalize2(high, low) {
67
+ // normalize the low part
68
+ let overflowLow = Numbers.floor(low / ALong._U32);
69
+ low = (low - overflowLow * ALong._U32); // inside range [0..U32[
70
+ high += overflowLow;
71
+ // normalize the high part
72
+ let overflowHigh = Numbers.floor(high / ALong._U32);
73
+ high = (high - overflowHigh * ALong._U32); // inside range [0..U32[
74
+ // return the result
75
+ return new ALong(high, low);
76
+ }
77
+ /**
78
+ * Negate the number.
79
+ * @return the result.
80
+ */
81
+ negate() {
82
+ /* Zero? */
83
+ if (this.isZero()) {
84
+ /* Return this immutable instance */
85
+ return this;
86
+ }
87
+ /* Compute */
88
+ let resultHigh = (ALong._U32 - 1.0 - this._high);
89
+ let resultLow = (ALong._U32 - this._low);
90
+ /* Overflow? */
91
+ if (resultLow == ALong._U32) {
92
+ resultLow = 0.0;
93
+ resultHigh += 1.0; // in case we try to invert ALong.MIN_VALUE we get ALong.MIN_VALUE as a result again
94
+ }
95
+ /* Return the result */
96
+ return new ALong(resultHigh, resultLow);
97
+ }
98
+ /**
99
+ * Add a number.
100
+ * @param value the value to add.
101
+ * @return the result.
102
+ */
103
+ add(value) {
104
+ /* Compute */
105
+ let resultHigh = (this._high + value._high);
106
+ let resultLow = (this._low + value._low);
107
+ /* Return the result */
108
+ return ALong.normalize2(resultHigh, resultLow);
109
+ }
110
+ /**
111
+ * Add a number.
112
+ * @param value the value to add.
113
+ * @return the result.
114
+ */
115
+ addInt(value) {
116
+ return this.add(ALong.fromInt(value));
117
+ }
118
+ /**
119
+ * Increase by one.
120
+ * @return the result.
121
+ */
122
+ increase() {
123
+ return this.addInt(1);
124
+ }
125
+ /**
126
+ * Subtract a number.
127
+ * @param value the value to subtract.
128
+ * @return the result.
129
+ */
130
+ sub(value) {
131
+ return this.add(value.negate());
132
+ }
133
+ /**
134
+ * Subtract a number.
135
+ * @param value the value to subtract.
136
+ * @return the result.
137
+ */
138
+ subInt(value) {
139
+ return this.sub(ALong.fromInt(value));
140
+ }
141
+ /**
142
+ * Decrease by one.
143
+ * @return the result.
144
+ */
145
+ decrease() {
146
+ return this.subInt(1);
147
+ }
148
+ /**
149
+ * Multiply two unsigned 32-bit integer values.
150
+ * @param v1 the first value.
151
+ * @param v2 the second value.
152
+ * @param high0 the initial high value of the result.
153
+ * @return the unsigned 64-bit product.
154
+ */
155
+ static mul2(v1, v2) {
156
+ /* Zero? */
157
+ if (v1.isZero())
158
+ return v1;
159
+ if (v2.isZero())
160
+ return v2;
161
+ /* Make the values unsigned */
162
+ let neg1 = v1.isNegative() ? 1 : 0;
163
+ if (neg1 == 1)
164
+ v1 = v1.negate();
165
+ let neg2 = v2.isNegative() ? 1 : 0;
166
+ if (neg2 == 1)
167
+ v2 = v2.negate();
168
+ /* Split first low into 16-bit parts */
169
+ let a1 = Numbers.floor(v1._low / ALong._U16);
170
+ ;
171
+ let a2 = (v1._low - a1 * ALong._U16);
172
+ /* Split second low into 16-bit parts */
173
+ let b1 = Numbers.floor(v2._low / ALong._U16);
174
+ ;
175
+ let b2 = (v2._low - b1 * ALong._U16);
176
+ /* Compute */
177
+ let resultHigh = (v1._high * v2._low + v1._low * v2._high) + (a1 * b1);
178
+ let resultLow = (a1 * b2 + a2 * b1) * ALong._U16 + (a2 * b2);
179
+ let result = ALong.normalize2(resultHigh, resultLow);
180
+ /* Return the result */
181
+ return (neg1 + neg2 == 1) ? result.negate() : result;
182
+ }
183
+ /**
184
+ * Multiply by a number.
185
+ * @param value the value to multiply.
186
+ * @return the result.
187
+ */
188
+ mul(value) {
189
+ return ALong.mul2(this, value);
190
+ }
191
+ /**
192
+ * Multiply by a number.
193
+ * @param value the value to multiply.
194
+ * @return the result.
195
+ */
196
+ mulInt(value) {
197
+ return this.mul(ALong.fromInt(value));
198
+ }
199
+ /**
200
+ * Divide by a number.
201
+ * @param value the value to divide by.
202
+ * @return the result.
203
+ */
204
+ div(value) {
205
+ /* Division by zero? */
206
+ ASystem.assertNot(value.isZero(), "ALong division by ALong zero");
207
+ /* Division by one? */
208
+ if (value.isOne())
209
+ return this;
210
+ /* Make the values unsigned */
211
+ let currentValue = this;
212
+ let neg1 = currentValue.isNegative();
213
+ if (neg1)
214
+ currentValue = currentValue.negate();
215
+ let value2 = value;
216
+ let neg2 = value2.isNegative();
217
+ if (neg2)
218
+ value2.negate();
219
+ let neg = (neg1 && !neg2) || (!neg1 && neg2);
220
+ /* Loop until the remainder is smaller than the value */
221
+ let result = ALong.ZERO;
222
+ while (currentValue.isLargerThanOrEqualTo(value2)) {
223
+ /* Shift the value as much as possible */
224
+ let test = value2;
225
+ let times = ALong.ONE;
226
+ if (test.isSmallerThan(currentValue)) {
227
+ while (test.isSmallerThan(currentValue)) {
228
+ test = test.mulInt(2);
229
+ times = times.mulInt(2);
230
+ }
231
+ test = test.divInt(2);
232
+ times = times.divInt(2);
233
+ }
234
+ /* Subtract the shifted value */
235
+ currentValue = currentValue.sub(test);
236
+ result = result.add(times);
237
+ }
238
+ /* Return the result */
239
+ return (neg) ? result.negate() : result;
240
+ }
241
+ /**
242
+ * Divide by a number.
243
+ * @param value the value to divide by.
244
+ * @return the result.
245
+ */
246
+ divInt(value) {
247
+ /* Division by zero? */
248
+ ASystem.assertNot(value == 0, "ALong division by int zero");
249
+ /* Division by one? */
250
+ if (value == 1)
251
+ return this;
252
+ /* Make the values unsigned */
253
+ let value1 = this;
254
+ let neg1 = value1.isNegative();
255
+ if (neg1)
256
+ value1 = value1.negate();
257
+ let neg2 = (value < 0);
258
+ if (neg2)
259
+ value = -1 * value;
260
+ let neg = (neg1 && !neg2) || (!neg1 && neg2);
261
+ /* Compute */
262
+ let valueF = (0.0 + value);
263
+ let h1 = Numbers.floor(value1._high / valueF);
264
+ let h2 = (value1._high - valueF * h1);
265
+ let l1 = Numbers.floor(value1._low / valueF);
266
+ let l2 = (value1._low - valueF * l1);
267
+ let t = (h2 * ALong._U32 + l2);
268
+ let t1 = Numbers.floor(t / valueF);
269
+ let t2 = (t - valueF * t1); // remainder
270
+ let result = ALong.normalize2(h1, l1 + t1);
271
+ /* Return the result */
272
+ return (neg) ? result.negate() : result;
273
+ }
274
+ /**
275
+ * Modulate by a number.
276
+ * @param value the value to modulate by.
277
+ * @return the result.
278
+ */
279
+ mod(value) {
280
+ /* Division by zero? */
281
+ ASystem.assertNot(value.isZero(), "ALong modulo by ALong zero");
282
+ /* Division by one? */
283
+ if (value.isOne())
284
+ return ALong.ZERO;
285
+ /* Compute */
286
+ let result = this.sub(this.div(value).mul(value));
287
+ /* Return the result */
288
+ return result;
289
+ }
290
+ /**
291
+ * Modulate by a number.
292
+ * @param value the value to modulate by.
293
+ * @return the modulo value.
294
+ */
295
+ modInt(value) {
296
+ /* Division by zero? */
297
+ ASystem.assertNot(value == 0, "ALong modulo by int zero");
298
+ /* Division by one? */
299
+ if (value == 1)
300
+ return 0;
301
+ /* Make the values unsigned */
302
+ let value1 = this;
303
+ let neg1 = value1.isNegative();
304
+ if (neg1)
305
+ value1 = value1.negate();
306
+ let neg2 = (value < 0);
307
+ if (neg2)
308
+ value = -1 * value;
309
+ let neg = (neg1 && !neg2) || (!neg1 && neg2);
310
+ /* Compute */
311
+ let valueF = (0.0 + value);
312
+ let h1 = Numbers.floor(value1._high / valueF);
313
+ let h2 = (value1._high - valueF * h1);
314
+ let l1 = Numbers.floor(value1._low / valueF);
315
+ let l2 = (value1._low - valueF * l1);
316
+ let t = (h2 * ALong._U32 + l2);
317
+ let t1 = Numbers.floor(t / valueF);
318
+ let t2 = (t - valueF * t1); // remainder
319
+ let result = Math.trunc(t2);
320
+ /* Return the result */
321
+ return result;
322
+ }
323
+ /**
324
+ * Create a new number.
325
+ * @param value the 64-bit float value.
326
+ * @return the new number.
327
+ */
328
+ static fromDouble(value) {
329
+ /* Make the value unsigned */
330
+ let neg = (value < 0.0);
331
+ if (neg)
332
+ value = (-1.0 * value);
333
+ /* Compute */
334
+ value = Numbers.floor(value);
335
+ let high = Numbers.floor(value / ALong._U32);
336
+ let low = (value - high * ALong._U32);
337
+ let result = ALong.normalize2(high, low);
338
+ /* Return the result */
339
+ return (neg) ? result.negate() : result;
340
+ }
341
+ /**
342
+ * Get a double.
343
+ * @return the double value.
344
+ */
345
+ toDouble() {
346
+ /* Make the value unsigned */
347
+ let value = this;
348
+ let neg = value.isNegative();
349
+ if (neg)
350
+ value = value.negate();
351
+ /* Compute */
352
+ let result = (value._high * ALong._U32) + value._low;
353
+ if (neg)
354
+ result *= -1.0;
355
+ /* Return the result */
356
+ return result;
357
+ }
358
+ /**
359
+ * Create a new number.
360
+ * @param value the 32-bit integer value.
361
+ * @return the new number.
362
+ */
363
+ static fromInt(value) {
364
+ return (value < 0.0) ? new ALong(ALong._U32 - 1.0, ALong._U32 + value) : new ALong(0.0, value);
365
+ }
366
+ /**
367
+ * Get a 32-bit integer.
368
+ * @return the integer value.
369
+ */
370
+ toInt() {
371
+ /* Make the value unsigned */
372
+ let value = this;
373
+ let neg = value.isNegative();
374
+ if (neg)
375
+ value = value.negate();
376
+ /* Compute */
377
+ let result = value._low;
378
+ if (neg)
379
+ result *= -1.0;
380
+ /* Return the result */
381
+ return Numbers.doubleToInt(result);
382
+ }
383
+ /**
384
+ * Create a new number.
385
+ * @param i1 the 32-bit high part.
386
+ * @param i0 the 32-bit low part.
387
+ * @return the new number.
388
+ */
389
+ static fromHighLow(i1, i0) {
390
+ if (i1 < 0.0)
391
+ i1 += ALong._U32; // make unsigned
392
+ if (i0 < 0.0)
393
+ i0 += ALong._U32;
394
+ return new ALong(i1, i0);
395
+ }
396
+ /**
397
+ * Get the high part.
398
+ * @return the integer value (0..4294967295)
399
+ */
400
+ getHigh() {
401
+ return this._high;
402
+ }
403
+ /**
404
+ * Get the low part.
405
+ * @return the integer value (0..4294967295)
406
+ */
407
+ getLow() {
408
+ return this._low;
409
+ }
410
+ /**
411
+ * Create a new number.
412
+ * @param b7 the most significant 8-bit byte of the high part (0..255).
413
+ * @param b6 the most third 8-bit byte of the high part (0..255).
414
+ * @param b5 the most second 8-bit byte of the high part (0..255).
415
+ * @param b4 the most least 8-bit byte of the high part (0..255).
416
+ * @param b3 the most significant 8-bit byte of the low part (0..255).
417
+ * @param b2 the most third 8-bit byte of the low part (0..255).
418
+ * @param b1 the most second 8-bit byte of the low part (0..255).
419
+ * @param b0 the most least 8-bit byte of the low part (0..255).
420
+ * @return the new number.
421
+ */
422
+ static fromBytes(b7, b6, b5, b4, b3, b2, b1, b0) {
423
+ if (b7 < 0.0)
424
+ b7 += ALong._U8; // make unsigned
425
+ if (b6 < 0.0)
426
+ b6 += ALong._U8;
427
+ if (b5 < 0.0)
428
+ b5 += ALong._U8;
429
+ if (b4 < 0.0)
430
+ b4 += ALong._U8;
431
+ if (b3 < 0.0)
432
+ b3 += ALong._U8;
433
+ if (b2 < 0.0)
434
+ b2 += ALong._U8;
435
+ if (b1 < 0.0)
436
+ b1 += ALong._U8;
437
+ if (b0 < 0.0)
438
+ b0 += ALong._U8;
439
+ let high = (b7 * ALong._U24 + b6 * ALong._U16 + b5 * ALong._U8 + b4);
440
+ let low = (b3 * ALong._U24 + b2 * ALong._U16 + b1 * ALong._U8 + b0);
441
+ return ALong.fromHighLow(high, low);
442
+ }
443
+ /**
444
+ * Get a byte.
445
+ * @param index the index of the byte (0..7 where 0 is low).
446
+ * @return the byte value (0..255)
447
+ */
448
+ getByte(index) {
449
+ let value = (index < 4) ? this._low : this._high; // this should be unsigned
450
+ let position = (index < 4) ? index : (index - 4);
451
+ for (let i = 0; i < position; i++)
452
+ value = Numbers.floor(value / 256.0);
453
+ return Math.trunc(value % 256);
454
+ }
455
+ /**
456
+ * Check if a number is equal.
457
+ * @param value the value to check.
458
+ * @return true if equal.
459
+ */
460
+ isEqualTo(value) {
461
+ return (value._high == this._high) && (value._low == this._low);
462
+ }
463
+ /**
464
+ * Check if a number is not equal.
465
+ * @param value the value to check.
466
+ * @return true if equal.
467
+ */
468
+ isNotEqualTo(value) {
469
+ return (this.isEqualTo(value) == false);
470
+ }
471
+ /**
472
+ * Check if a number is equal.
473
+ * @param value the value to check.
474
+ * @return true if equal.
475
+ */
476
+ same(value) {
477
+ return this.isEqualTo(value);
478
+ }
479
+ /**
480
+ * Check if a number is equal.
481
+ * @param value the value to check.
482
+ * @return true if equal.
483
+ */
484
+ equals(value) {
485
+ return this.isEqualTo(value);
486
+ }
487
+ /**
488
+ * Compare this long to another long.
489
+ * @param value the other long.
490
+ * @return zero if equal, positive if smaller, or negative if value is larger.
491
+ */
492
+ compareTo(value) {
493
+ let diff = this.sub(value);
494
+ if (diff.isZero())
495
+ return 0;
496
+ return diff.isNegative() ? -1 : 1;
497
+ }
498
+ /**
499
+ * Check if a value is larger.
500
+ * @param value the value to check.
501
+ * @return true if this number is larger than the check value.
502
+ */
503
+ isLargerThan(value) {
504
+ return (this.compareTo(value) > 0);
505
+ }
506
+ /**
507
+ * Check if a value is larger.
508
+ * @param value the value to check.
509
+ * @return true if this number is larger than the check value.
510
+ */
511
+ isLargerThanOrEqualTo(value) {
512
+ return (this.compareTo(value) >= 0);
513
+ }
514
+ /**
515
+ * Check if a value is smaller.
516
+ * @param value the value to check.
517
+ * @return true if this number is smaller than the check value.
518
+ */
519
+ isSmallerThan(value) {
520
+ return (this.compareTo(value) < 0);
521
+ }
522
+ /**
523
+ * Check if a value is smaller.
524
+ * @param value the value to check.
525
+ * @return true if this number is smaller than the check value.
526
+ */
527
+ isSmallerThanOrEqualTo(value) {
528
+ return (this.compareTo(value) <= 0);
529
+ }
530
+ /**
531
+ * Get the maximum value.
532
+ * @param v1 the first value.
533
+ * @param v2 the second value.
534
+ * @return the maximum value.
535
+ */
536
+ static max(v1, v2) {
537
+ return (v2.isLargerThan(v1)) ? v2 : v1;
538
+ }
539
+ /**
540
+ * Get the minimum value.
541
+ * @param v1 the first value.
542
+ * @param v2 the second value.
543
+ * @return the minimum value.
544
+ */
545
+ static min(v1, v2) {
546
+ return (v2.isSmallerThan(v1)) ? v2 : v1;
547
+ }
548
+ /**
549
+ * Create a number from a string.
550
+ * @param svalue the string value.
551
+ * @param radix the radix (2 to 36).
552
+ * @return the number.
553
+ */
554
+ static fromRadixString(svalue, radix) {
555
+ /* Check the radix */
556
+ ASystem.assertNot((radix < 2) || (radix > 36), "Invalid radix: " + radix);
557
+ /* Common values? */
558
+ if (Strings.equals(svalue, "0"))
559
+ return ALong.ZERO;
560
+ if (Strings.equals(svalue, "1"))
561
+ return ALong.ONE;
562
+ /* Negative? */
563
+ let neg = Strings.startsWith(svalue, "-");
564
+ if (neg)
565
+ svalue = Strings.substringFrom(svalue, 1);
566
+ /* Add all digits */
567
+ let result = ALong.ZERO;
568
+ let unit = ALong.ONE;
569
+ let radixHL = ALong.fromInt(radix);
570
+ let slength = Strings.getLength(svalue);
571
+ for (let i = 0; i < slength; i++) {
572
+ /* Add the next digit */
573
+ let charCode = Strings.charCodeAt(svalue, slength - 1 - i);
574
+ let digit = (charCode >= 65) ? (charCode - 65 + 10) : (charCode - 48);
575
+ if (digit > 0)
576
+ result = result.add(unit.mulInt(digit));
577
+ unit = unit.mul(radixHL);
578
+ }
579
+ /* Return the result */
580
+ return (neg) ? result.negate() : result;
581
+ }
582
+ /**
583
+ * Create a number from a decimal string.
584
+ * @param value the string value.
585
+ * @return the number.
586
+ */
587
+ static fromString(value) {
588
+ if (value == null)
589
+ return null;
590
+ return ALong.fromRadixString(value, 10);
591
+ }
592
+ /**
593
+ * Create a number from a hexadecimal string.
594
+ * @param value the string value.
595
+ * @return the number.
596
+ */
597
+ static fromHexString(value) {
598
+ if (value == null)
599
+ return null;
600
+ return ALong.fromRadixString(value, 16);
601
+ }
602
+ /**
603
+ * Convert the number to a string.
604
+ * @param radix the radix (2 to 36).
605
+ * @return the string.
606
+ */
607
+ getRadixString(radix) {
608
+ /* Check the radix */
609
+ ASystem.assertNot((radix < 2) || (radix > 36), "Invalid radix: " + radix);
610
+ /* Common values? */
611
+ let value = this;
612
+ if (value.isZero())
613
+ return "0";
614
+ /* Make the value unsigned */
615
+ let neg = value.isNegative();
616
+ if (neg)
617
+ value = value.negate();
618
+ /* Add all digits */
619
+ let result = "";
620
+ while (true) {
621
+ /* Add the next digit */
622
+ if (value.isZero())
623
+ break;
624
+ let digit = value.modInt(radix);
625
+ value = value.divInt(radix);
626
+ let sdigit = (digit < 10) ? Strings.charCodeToString(48 + digit) : Strings.charCodeToString(65 + digit - 10);
627
+ result = (sdigit + result);
628
+ /* Fail? */
629
+ ASystem.assertNot(Strings.getLength(result) > 20, "Failed to convert longHL to string (radix " + radix + "): " + this._high + ";" + this._low);
630
+ }
631
+ if (neg)
632
+ result = ("-" + result);
633
+ /* Return the result */
634
+ return result;
635
+ }
636
+ /**
637
+ * Convert the number to a decimal string.
638
+ * @return the string.
639
+ */
640
+ getString() {
641
+ return this.getRadixString(10);
642
+ }
643
+ /**
644
+ * Convert the number to a hexadecimal string.
645
+ * @return the string.
646
+ */
647
+ getHexString() {
648
+ return this.getRadixString(16);
649
+ }
650
+ /**
651
+ * The standard toString method.
652
+ * @see Object#toString
653
+ */
654
+ toString() {
655
+ return this.getString();
656
+ }
657
+ }
658
+ /** The value of a 32 bit unit */
659
+ ALong._U32 = 4294967296.0;
660
+ /** The value of a 31 bit unit */
661
+ ALong._U31 = 2147483648.0;
662
+ /** The value of a 24 bit unit */
663
+ ALong._U24 = 16777216.0;
664
+ /** The value of a 16 bit unit */
665
+ ALong._U16 = 65536.0;
666
+ /** The value of a 8 bit unit */
667
+ ALong._U8 = 256.0;
668
+ /** The integer value 0 */
669
+ ALong.ZERO = new ALong(0.0, 0.0);
670
+ /** The integer value 1 */
671
+ ALong.ONE = new ALong(0.0, 1.0);
672
+ /** The integer value 2 */
673
+ ALong.TWO = new ALong(0.0, 2.0);
674
+ /** The integer value 4 */
675
+ ALong.FOUR = new ALong(0.0, 4.0);
676
+ /** The integer value 10 */
677
+ ALong.TEN = new ALong(0.0, 10.0);
678
+ /** The integer value -1 */
679
+ ALong.MINUS_ONE = new ALong(ALong._U32 - 1.0, ALong._U32 - 1.0);
680
+ /** The maximum positive value of a signed_ 64-bit integer (9223372036854775807) */
681
+ ALong.MAX_VALUE = new ALong(ALong._U31 - 1.0, ALong._U32 - 1.0);
682
+ /** The minimum negative value of a signed 64-bit integer (-9223372036854775808) */
683
+ ALong.MIN_VALUE = new ALong(ALong._U31, 0.0);
684
+ export { ALong };
684
685
  //# sourceMappingURL=ALong.js.map