@itwin/core-frontend 5.11.0-dev.9 → 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (429) hide show
  1. package/CHANGELOG.md +32 -1
  2. package/lib/cjs/AccuDraw.d.ts +2 -0
  3. package/lib/cjs/AccuDraw.d.ts.map +1 -1
  4. package/lib/cjs/AccuDraw.js +9 -1
  5. package/lib/cjs/AccuDraw.js.map +1 -1
  6. package/lib/cjs/BingLocation.d.ts +4 -0
  7. package/lib/cjs/BingLocation.d.ts.map +1 -1
  8. package/lib/cjs/BingLocation.js +6 -1
  9. package/lib/cjs/BingLocation.js.map +1 -1
  10. package/lib/cjs/CesiumAccessClient.d.ts +52 -0
  11. package/lib/cjs/CesiumAccessClient.d.ts.map +1 -0
  12. package/lib/cjs/CesiumAccessClient.js +10 -0
  13. package/lib/cjs/CesiumAccessClient.js.map +1 -0
  14. package/lib/cjs/DisplayStyleState.js +2 -2
  15. package/lib/cjs/DisplayStyleState.js.map +1 -1
  16. package/lib/cjs/GeoProviders.d.ts +45 -0
  17. package/lib/cjs/GeoProviders.d.ts.map +1 -0
  18. package/lib/cjs/GeoProviders.js +49 -0
  19. package/lib/cjs/GeoProviders.js.map +1 -0
  20. package/lib/cjs/GraphicalEditingScope.d.ts +22 -1
  21. package/lib/cjs/GraphicalEditingScope.d.ts.map +1 -1
  22. package/lib/cjs/GraphicalEditingScope.js +27 -1
  23. package/lib/cjs/GraphicalEditingScope.js.map +1 -1
  24. package/lib/cjs/HitDetail.d.ts +1 -1
  25. package/lib/cjs/HitDetail.d.ts.map +1 -1
  26. package/lib/cjs/HitDetail.js +10 -7
  27. package/lib/cjs/HitDetail.js.map +1 -1
  28. package/lib/cjs/IModelApp.d.ts +33 -0
  29. package/lib/cjs/IModelApp.d.ts.map +1 -1
  30. package/lib/cjs/IModelApp.js +33 -0
  31. package/lib/cjs/IModelApp.js.map +1 -1
  32. package/lib/cjs/IModelConnection.d.ts +9 -9
  33. package/lib/cjs/IModelConnection.d.ts.map +1 -1
  34. package/lib/cjs/IModelConnection.js +21 -14
  35. package/lib/cjs/IModelConnection.js.map +1 -1
  36. package/lib/cjs/IpcApp.d.ts +1 -1
  37. package/lib/cjs/IpcApp.js +1 -1
  38. package/lib/cjs/IpcApp.js.map +1 -1
  39. package/lib/cjs/NativeApp.d.ts.map +1 -1
  40. package/lib/cjs/NativeApp.js +1 -3
  41. package/lib/cjs/NativeApp.js.map +1 -1
  42. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts +1 -1
  43. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -1
  44. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js +23 -5
  45. package/lib/cjs/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  46. package/lib/cjs/SelectionSet.d.ts +7 -7
  47. package/lib/cjs/SelectionSet.js +3 -3
  48. package/lib/cjs/SelectionSet.js.map +1 -1
  49. package/lib/cjs/SubCategoriesCache.d.ts +15 -3
  50. package/lib/cjs/SubCategoriesCache.d.ts.map +1 -1
  51. package/lib/cjs/SubCategoriesCache.js +98 -26
  52. package/lib/cjs/SubCategoriesCache.js.map +1 -1
  53. package/lib/cjs/ViewGlobalLocation.d.ts +1 -1
  54. package/lib/cjs/ViewGlobalLocation.d.ts.map +1 -1
  55. package/lib/cjs/ViewGlobalLocation.js +3 -6
  56. package/lib/cjs/ViewGlobalLocation.js.map +1 -1
  57. package/lib/cjs/ViewState.d.ts +1 -1
  58. package/lib/cjs/ViewState.js +1 -1
  59. package/lib/cjs/ViewState.js.map +1 -1
  60. package/lib/cjs/Viewport.d.ts +5 -4
  61. package/lib/cjs/Viewport.d.ts.map +1 -1
  62. package/lib/cjs/Viewport.js +16 -4
  63. package/lib/cjs/Viewport.js.map +1 -1
  64. package/lib/cjs/core-frontend.d.ts +3 -0
  65. package/lib/cjs/core-frontend.d.ts.map +1 -1
  66. package/lib/cjs/core-frontend.js +4 -0
  67. package/lib/cjs/core-frontend.js.map +1 -1
  68. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.d.ts +1 -1
  69. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.d.ts.map +1 -1
  70. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js +1 -1
  71. package/lib/cjs/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  72. package/lib/cjs/internal/render/webgl/AttributeBuffers.d.ts +2 -2
  73. package/lib/cjs/internal/render/webgl/AttributeBuffers.d.ts.map +1 -1
  74. package/lib/cjs/internal/render/webgl/AttributeBuffers.js +2 -2
  75. package/lib/cjs/internal/render/webgl/AttributeBuffers.js.map +1 -1
  76. package/lib/cjs/internal/render/webgl/ClippingProgram.d.ts +1 -1
  77. package/lib/cjs/internal/render/webgl/ClippingProgram.d.ts.map +1 -1
  78. package/lib/cjs/internal/render/webgl/ClippingProgram.js +1 -1
  79. package/lib/cjs/internal/render/webgl/ClippingProgram.js.map +1 -1
  80. package/lib/cjs/internal/render/webgl/ShaderProgram.d.ts +2 -2
  81. package/lib/cjs/internal/render/webgl/ShaderProgram.d.ts.map +1 -1
  82. package/lib/cjs/internal/render/webgl/ShaderProgram.js +2 -2
  83. package/lib/cjs/internal/render/webgl/ShaderProgram.js.map +1 -1
  84. package/lib/cjs/internal/render/webgl/Technique.d.ts +3 -3
  85. package/lib/cjs/internal/render/webgl/Technique.d.ts.map +1 -1
  86. package/lib/cjs/internal/render/webgl/Technique.js +3 -3
  87. package/lib/cjs/internal/render/webgl/Technique.js.map +1 -1
  88. package/lib/cjs/internal/tile/DynamicIModelTile.d.ts +3 -3
  89. package/lib/cjs/internal/tile/DynamicIModelTile.d.ts.map +1 -1
  90. package/lib/cjs/internal/tile/DynamicIModelTile.js +26 -6
  91. package/lib/cjs/internal/tile/DynamicIModelTile.js.map +1 -1
  92. package/lib/cjs/internal/tile/IModelTileTree.d.ts.map +1 -1
  93. package/lib/cjs/internal/tile/IModelTileTree.js +4 -2
  94. package/lib/cjs/internal/tile/IModelTileTree.js.map +1 -1
  95. package/lib/cjs/internal/tile/RealityModelTileTree.d.ts +1 -1
  96. package/lib/cjs/internal/tile/RealityModelTileTree.d.ts.map +1 -1
  97. package/lib/cjs/internal/tile/RealityModelTileTree.js +7 -3
  98. package/lib/cjs/internal/tile/RealityModelTileTree.js.map +1 -1
  99. package/lib/cjs/internal/tile/RealityTileLoader.d.ts +22 -0
  100. package/lib/cjs/internal/tile/RealityTileLoader.d.ts.map +1 -1
  101. package/lib/cjs/internal/tile/RealityTileLoader.js +53 -5
  102. package/lib/cjs/internal/tile/RealityTileLoader.js.map +1 -1
  103. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -1
  104. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  105. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +1 -1
  106. package/lib/cjs/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  107. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -1
  108. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  109. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js +2 -1
  110. package/lib/cjs/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  111. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -1
  112. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  113. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  114. package/lib/cjs/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  115. package/lib/cjs/properties/AngleDescription.d.ts +2 -1
  116. package/lib/cjs/properties/AngleDescription.d.ts.map +1 -1
  117. package/lib/cjs/properties/AngleDescription.js +4 -1
  118. package/lib/cjs/properties/AngleDescription.js.map +1 -1
  119. package/lib/cjs/properties/FormattedQuantityDescription.d.ts +29 -1
  120. package/lib/cjs/properties/FormattedQuantityDescription.d.ts.map +1 -1
  121. package/lib/cjs/properties/FormattedQuantityDescription.js +35 -0
  122. package/lib/cjs/properties/FormattedQuantityDescription.js.map +1 -1
  123. package/lib/cjs/properties/LengthDescription.d.ts +6 -3
  124. package/lib/cjs/properties/LengthDescription.d.ts.map +1 -1
  125. package/lib/cjs/properties/LengthDescription.js +12 -3
  126. package/lib/cjs/properties/LengthDescription.js.map +1 -1
  127. package/lib/cjs/render/Decorations.d.ts +1 -1
  128. package/lib/cjs/render/Decorations.d.ts.map +1 -1
  129. package/lib/cjs/render/Decorations.js +1 -1
  130. package/lib/cjs/render/Decorations.js.map +1 -1
  131. package/lib/cjs/render/GraphicBranch.d.ts +1 -1
  132. package/lib/cjs/render/GraphicBranch.d.ts.map +1 -1
  133. package/lib/cjs/render/GraphicBranch.js +1 -1
  134. package/lib/cjs/render/GraphicBranch.js.map +1 -1
  135. package/lib/cjs/render/RenderSystem.d.ts +2 -2
  136. package/lib/cjs/render/RenderSystem.d.ts.map +1 -1
  137. package/lib/cjs/render/RenderSystem.js +1 -1
  138. package/lib/cjs/render/RenderSystem.js.map +1 -1
  139. package/lib/cjs/render/ScreenSpaceEffectBuilder.d.ts +1 -1
  140. package/lib/cjs/render/ScreenSpaceEffectBuilder.js.map +1 -1
  141. package/lib/cjs/request/Request.d.ts +2 -2
  142. package/lib/cjs/request/Request.js.map +1 -1
  143. package/lib/cjs/tile/RealityTile.d.ts +5 -0
  144. package/lib/cjs/tile/RealityTile.d.ts.map +1 -1
  145. package/lib/cjs/tile/RealityTile.js +4 -0
  146. package/lib/cjs/tile/RealityTile.js.map +1 -1
  147. package/lib/cjs/tile/Tile.d.ts +1 -1
  148. package/lib/cjs/tile/Tile.d.ts.map +1 -1
  149. package/lib/cjs/tile/Tile.js +1 -1
  150. package/lib/cjs/tile/Tile.js.map +1 -1
  151. package/lib/cjs/tile/TileAdmin.d.ts +23 -1
  152. package/lib/cjs/tile/TileAdmin.d.ts.map +1 -1
  153. package/lib/cjs/tile/TileAdmin.js +17 -1
  154. package/lib/cjs/tile/TileAdmin.js.map +1 -1
  155. package/lib/cjs/tile/TileTree.d.ts +1 -1
  156. package/lib/cjs/tile/TileTree.d.ts.map +1 -1
  157. package/lib/cjs/tile/TileTree.js +1 -1
  158. package/lib/cjs/tile/TileTree.js.map +1 -1
  159. package/lib/cjs/tile/TileTreeReference.d.ts +1 -1
  160. package/lib/cjs/tile/TileTreeReference.d.ts.map +1 -1
  161. package/lib/cjs/tile/TileTreeReference.js +1 -1
  162. package/lib/cjs/tile/TileTreeReference.js.map +1 -1
  163. package/lib/cjs/tile/map/BingElevation.d.ts +16 -4
  164. package/lib/cjs/tile/map/BingElevation.d.ts.map +1 -1
  165. package/lib/cjs/tile/map/BingElevation.js +18 -8
  166. package/lib/cjs/tile/map/BingElevation.js.map +1 -1
  167. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts +16 -1
  168. package/lib/cjs/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  169. package/lib/cjs/tile/map/CesiumTerrainProvider.js +58 -18
  170. package/lib/cjs/tile/map/CesiumTerrainProvider.js.map +1 -1
  171. package/lib/cjs/tile/map/ImageryTileTree.d.ts +2 -2
  172. package/lib/cjs/tile/map/ImageryTileTree.d.ts.map +1 -1
  173. package/lib/cjs/tile/map/ImageryTileTree.js +2 -2
  174. package/lib/cjs/tile/map/ImageryTileTree.js.map +1 -1
  175. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts +6 -1
  176. package/lib/cjs/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  177. package/lib/cjs/tile/map/MapLayerFormatRegistry.js.map +1 -1
  178. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts +1 -0
  179. package/lib/cjs/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  180. package/lib/cjs/tile/map/MapLayerImageryFormats.js +3 -0
  181. package/lib/cjs/tile/map/MapLayerImageryFormats.js.map +1 -1
  182. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts +1 -1
  183. package/lib/cjs/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  184. package/lib/cjs/tile/map/MapLayerImageryProvider.js +1 -1
  185. package/lib/cjs/tile/map/MapLayerImageryProvider.js.map +1 -1
  186. package/lib/cjs/tile/map/MapTileTree.d.ts +1 -1
  187. package/lib/cjs/tile/map/MapTileTree.d.ts.map +1 -1
  188. package/lib/cjs/tile/map/MapTileTree.js +20 -9
  189. package/lib/cjs/tile/map/MapTileTree.js.map +1 -1
  190. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts +7 -1
  191. package/lib/cjs/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  192. package/lib/cjs/tile/map/TerrainMeshProvider.js +1 -1
  193. package/lib/cjs/tile/map/TerrainMeshProvider.js.map +1 -1
  194. package/lib/cjs/tools/AccuDrawShortcutTool.d.ts +29 -0
  195. package/lib/cjs/tools/AccuDrawShortcutTool.d.ts.map +1 -0
  196. package/lib/cjs/tools/AccuDrawShortcutTool.js +139 -0
  197. package/lib/cjs/tools/AccuDrawShortcutTool.js.map +1 -0
  198. package/lib/cjs/tools/AccuDrawTool.d.ts +13 -68
  199. package/lib/cjs/tools/AccuDrawTool.d.ts.map +1 -1
  200. package/lib/cjs/tools/AccuDrawTool.js +103 -129
  201. package/lib/cjs/tools/AccuDrawTool.js.map +1 -1
  202. package/lib/cjs/tools/SetupCameraTools.d.ts +89 -0
  203. package/lib/cjs/tools/SetupCameraTools.d.ts.map +1 -0
  204. package/lib/cjs/tools/SetupCameraTools.js +444 -0
  205. package/lib/cjs/tools/SetupCameraTools.js.map +1 -0
  206. package/lib/cjs/tools/ToolAdmin.d.ts +5 -2
  207. package/lib/cjs/tools/ToolAdmin.d.ts.map +1 -1
  208. package/lib/cjs/tools/ToolAdmin.js +30 -7
  209. package/lib/cjs/tools/ToolAdmin.js.map +1 -1
  210. package/lib/cjs/tools/ViewTool.d.ts +1 -81
  211. package/lib/cjs/tools/ViewTool.d.ts.map +1 -1
  212. package/lib/cjs/tools/ViewTool.js +13 -410
  213. package/lib/cjs/tools/ViewTool.js.map +1 -1
  214. package/lib/esm/AccuDraw.d.ts +2 -0
  215. package/lib/esm/AccuDraw.d.ts.map +1 -1
  216. package/lib/esm/AccuDraw.js +9 -1
  217. package/lib/esm/AccuDraw.js.map +1 -1
  218. package/lib/esm/BingLocation.d.ts +4 -0
  219. package/lib/esm/BingLocation.d.ts.map +1 -1
  220. package/lib/esm/BingLocation.js +6 -1
  221. package/lib/esm/BingLocation.js.map +1 -1
  222. package/lib/esm/CesiumAccessClient.d.ts +52 -0
  223. package/lib/esm/CesiumAccessClient.d.ts.map +1 -0
  224. package/lib/esm/CesiumAccessClient.js +9 -0
  225. package/lib/esm/CesiumAccessClient.js.map +1 -0
  226. package/lib/esm/DisplayStyleState.js +2 -2
  227. package/lib/esm/DisplayStyleState.js.map +1 -1
  228. package/lib/esm/GeoProviders.d.ts +45 -0
  229. package/lib/esm/GeoProviders.d.ts.map +1 -0
  230. package/lib/esm/GeoProviders.js +45 -0
  231. package/lib/esm/GeoProviders.js.map +1 -0
  232. package/lib/esm/GraphicalEditingScope.d.ts +22 -1
  233. package/lib/esm/GraphicalEditingScope.d.ts.map +1 -1
  234. package/lib/esm/GraphicalEditingScope.js +27 -1
  235. package/lib/esm/GraphicalEditingScope.js.map +1 -1
  236. package/lib/esm/HitDetail.d.ts +1 -1
  237. package/lib/esm/HitDetail.d.ts.map +1 -1
  238. package/lib/esm/HitDetail.js +11 -8
  239. package/lib/esm/HitDetail.js.map +1 -1
  240. package/lib/esm/IModelApp.d.ts +33 -0
  241. package/lib/esm/IModelApp.d.ts.map +1 -1
  242. package/lib/esm/IModelApp.js +34 -1
  243. package/lib/esm/IModelApp.js.map +1 -1
  244. package/lib/esm/IModelConnection.d.ts +9 -9
  245. package/lib/esm/IModelConnection.d.ts.map +1 -1
  246. package/lib/esm/IModelConnection.js +21 -14
  247. package/lib/esm/IModelConnection.js.map +1 -1
  248. package/lib/esm/IpcApp.d.ts +1 -1
  249. package/lib/esm/IpcApp.js +1 -1
  250. package/lib/esm/IpcApp.js.map +1 -1
  251. package/lib/esm/NativeApp.d.ts.map +1 -1
  252. package/lib/esm/NativeApp.js +1 -3
  253. package/lib/esm/NativeApp.js.map +1 -1
  254. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts +1 -1
  255. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.d.ts.map +1 -1
  256. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js +24 -6
  257. package/lib/esm/RealityDataSourceCesiumIonAssetImpl.js.map +1 -1
  258. package/lib/esm/SelectionSet.d.ts +7 -7
  259. package/lib/esm/SelectionSet.js +3 -3
  260. package/lib/esm/SelectionSet.js.map +1 -1
  261. package/lib/esm/SubCategoriesCache.d.ts +15 -3
  262. package/lib/esm/SubCategoriesCache.d.ts.map +1 -1
  263. package/lib/esm/SubCategoriesCache.js +99 -27
  264. package/lib/esm/SubCategoriesCache.js.map +1 -1
  265. package/lib/esm/ViewGlobalLocation.d.ts +1 -1
  266. package/lib/esm/ViewGlobalLocation.d.ts.map +1 -1
  267. package/lib/esm/ViewGlobalLocation.js +3 -6
  268. package/lib/esm/ViewGlobalLocation.js.map +1 -1
  269. package/lib/esm/ViewState.d.ts +1 -1
  270. package/lib/esm/ViewState.js +1 -1
  271. package/lib/esm/ViewState.js.map +1 -1
  272. package/lib/esm/Viewport.d.ts +5 -4
  273. package/lib/esm/Viewport.d.ts.map +1 -1
  274. package/lib/esm/Viewport.js +16 -4
  275. package/lib/esm/Viewport.js.map +1 -1
  276. package/lib/esm/core-frontend.d.ts +3 -0
  277. package/lib/esm/core-frontend.d.ts.map +1 -1
  278. package/lib/esm/core-frontend.js +6 -1
  279. package/lib/esm/core-frontend.js.map +1 -1
  280. package/lib/esm/internal/render/webgl/AtmosphereUniforms.d.ts +1 -1
  281. package/lib/esm/internal/render/webgl/AtmosphereUniforms.d.ts.map +1 -1
  282. package/lib/esm/internal/render/webgl/AtmosphereUniforms.js +1 -1
  283. package/lib/esm/internal/render/webgl/AtmosphereUniforms.js.map +1 -1
  284. package/lib/esm/internal/render/webgl/AttributeBuffers.d.ts +2 -2
  285. package/lib/esm/internal/render/webgl/AttributeBuffers.d.ts.map +1 -1
  286. package/lib/esm/internal/render/webgl/AttributeBuffers.js +2 -2
  287. package/lib/esm/internal/render/webgl/AttributeBuffers.js.map +1 -1
  288. package/lib/esm/internal/render/webgl/ClippingProgram.d.ts +1 -1
  289. package/lib/esm/internal/render/webgl/ClippingProgram.d.ts.map +1 -1
  290. package/lib/esm/internal/render/webgl/ClippingProgram.js +1 -1
  291. package/lib/esm/internal/render/webgl/ClippingProgram.js.map +1 -1
  292. package/lib/esm/internal/render/webgl/ShaderProgram.d.ts +2 -2
  293. package/lib/esm/internal/render/webgl/ShaderProgram.d.ts.map +1 -1
  294. package/lib/esm/internal/render/webgl/ShaderProgram.js +2 -2
  295. package/lib/esm/internal/render/webgl/ShaderProgram.js.map +1 -1
  296. package/lib/esm/internal/render/webgl/Technique.d.ts +3 -3
  297. package/lib/esm/internal/render/webgl/Technique.d.ts.map +1 -1
  298. package/lib/esm/internal/render/webgl/Technique.js +3 -3
  299. package/lib/esm/internal/render/webgl/Technique.js.map +1 -1
  300. package/lib/esm/internal/tile/DynamicIModelTile.d.ts +3 -3
  301. package/lib/esm/internal/tile/DynamicIModelTile.d.ts.map +1 -1
  302. package/lib/esm/internal/tile/DynamicIModelTile.js +26 -6
  303. package/lib/esm/internal/tile/DynamicIModelTile.js.map +1 -1
  304. package/lib/esm/internal/tile/IModelTileTree.d.ts.map +1 -1
  305. package/lib/esm/internal/tile/IModelTileTree.js +4 -2
  306. package/lib/esm/internal/tile/IModelTileTree.js.map +1 -1
  307. package/lib/esm/internal/tile/RealityModelTileTree.d.ts +1 -1
  308. package/lib/esm/internal/tile/RealityModelTileTree.d.ts.map +1 -1
  309. package/lib/esm/internal/tile/RealityModelTileTree.js +7 -3
  310. package/lib/esm/internal/tile/RealityModelTileTree.js.map +1 -1
  311. package/lib/esm/internal/tile/RealityTileLoader.d.ts +22 -0
  312. package/lib/esm/internal/tile/RealityTileLoader.d.ts.map +1 -1
  313. package/lib/esm/internal/tile/RealityTileLoader.js +54 -6
  314. package/lib/esm/internal/tile/RealityTileLoader.js.map +1 -1
  315. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts +1 -1
  316. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.d.ts.map +1 -1
  317. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js +1 -1
  318. package/lib/esm/internal/tile/map/ImageryProviders/ArcGISMapLayerImageryProvider.js.map +1 -1
  319. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.d.ts +2 -1
  320. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.d.ts.map +1 -1
  321. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js +2 -1
  322. package/lib/esm/internal/tile/map/ImageryProviders/BingImageryProvider.js.map +1 -1
  323. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts +1 -1
  324. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.d.ts.map +1 -1
  325. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js +1 -1
  326. package/lib/esm/internal/tile/map/ImageryProviders/MapBoxLayerImageryProvider.js.map +1 -1
  327. package/lib/esm/properties/AngleDescription.d.ts +2 -1
  328. package/lib/esm/properties/AngleDescription.d.ts.map +1 -1
  329. package/lib/esm/properties/AngleDescription.js +4 -1
  330. package/lib/esm/properties/AngleDescription.js.map +1 -1
  331. package/lib/esm/properties/FormattedQuantityDescription.d.ts +29 -1
  332. package/lib/esm/properties/FormattedQuantityDescription.d.ts.map +1 -1
  333. package/lib/esm/properties/FormattedQuantityDescription.js +35 -1
  334. package/lib/esm/properties/FormattedQuantityDescription.js.map +1 -1
  335. package/lib/esm/properties/LengthDescription.d.ts +6 -3
  336. package/lib/esm/properties/LengthDescription.d.ts.map +1 -1
  337. package/lib/esm/properties/LengthDescription.js +12 -3
  338. package/lib/esm/properties/LengthDescription.js.map +1 -1
  339. package/lib/esm/render/Decorations.d.ts +1 -1
  340. package/lib/esm/render/Decorations.d.ts.map +1 -1
  341. package/lib/esm/render/Decorations.js +1 -1
  342. package/lib/esm/render/Decorations.js.map +1 -1
  343. package/lib/esm/render/GraphicBranch.d.ts +1 -1
  344. package/lib/esm/render/GraphicBranch.d.ts.map +1 -1
  345. package/lib/esm/render/GraphicBranch.js +1 -1
  346. package/lib/esm/render/GraphicBranch.js.map +1 -1
  347. package/lib/esm/render/RenderSystem.d.ts +2 -2
  348. package/lib/esm/render/RenderSystem.d.ts.map +1 -1
  349. package/lib/esm/render/RenderSystem.js +1 -1
  350. package/lib/esm/render/RenderSystem.js.map +1 -1
  351. package/lib/esm/render/ScreenSpaceEffectBuilder.d.ts +1 -1
  352. package/lib/esm/render/ScreenSpaceEffectBuilder.js.map +1 -1
  353. package/lib/esm/request/Request.d.ts +2 -2
  354. package/lib/esm/request/Request.js.map +1 -1
  355. package/lib/esm/tile/RealityTile.d.ts +5 -0
  356. package/lib/esm/tile/RealityTile.d.ts.map +1 -1
  357. package/lib/esm/tile/RealityTile.js +4 -0
  358. package/lib/esm/tile/RealityTile.js.map +1 -1
  359. package/lib/esm/tile/Tile.d.ts +1 -1
  360. package/lib/esm/tile/Tile.d.ts.map +1 -1
  361. package/lib/esm/tile/Tile.js +1 -1
  362. package/lib/esm/tile/Tile.js.map +1 -1
  363. package/lib/esm/tile/TileAdmin.d.ts +23 -1
  364. package/lib/esm/tile/TileAdmin.d.ts.map +1 -1
  365. package/lib/esm/tile/TileAdmin.js +17 -1
  366. package/lib/esm/tile/TileAdmin.js.map +1 -1
  367. package/lib/esm/tile/TileTree.d.ts +1 -1
  368. package/lib/esm/tile/TileTree.d.ts.map +1 -1
  369. package/lib/esm/tile/TileTree.js +1 -1
  370. package/lib/esm/tile/TileTree.js.map +1 -1
  371. package/lib/esm/tile/TileTreeReference.d.ts +1 -1
  372. package/lib/esm/tile/TileTreeReference.d.ts.map +1 -1
  373. package/lib/esm/tile/TileTreeReference.js +1 -1
  374. package/lib/esm/tile/TileTreeReference.js.map +1 -1
  375. package/lib/esm/tile/map/BingElevation.d.ts +16 -4
  376. package/lib/esm/tile/map/BingElevation.d.ts.map +1 -1
  377. package/lib/esm/tile/map/BingElevation.js +18 -8
  378. package/lib/esm/tile/map/BingElevation.js.map +1 -1
  379. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts +16 -1
  380. package/lib/esm/tile/map/CesiumTerrainProvider.d.ts.map +1 -1
  381. package/lib/esm/tile/map/CesiumTerrainProvider.js +56 -18
  382. package/lib/esm/tile/map/CesiumTerrainProvider.js.map +1 -1
  383. package/lib/esm/tile/map/ImageryTileTree.d.ts +2 -2
  384. package/lib/esm/tile/map/ImageryTileTree.d.ts.map +1 -1
  385. package/lib/esm/tile/map/ImageryTileTree.js +2 -2
  386. package/lib/esm/tile/map/ImageryTileTree.js.map +1 -1
  387. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts +6 -1
  388. package/lib/esm/tile/map/MapLayerFormatRegistry.d.ts.map +1 -1
  389. package/lib/esm/tile/map/MapLayerFormatRegistry.js.map +1 -1
  390. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts +1 -0
  391. package/lib/esm/tile/map/MapLayerImageryFormats.d.ts.map +1 -1
  392. package/lib/esm/tile/map/MapLayerImageryFormats.js +3 -0
  393. package/lib/esm/tile/map/MapLayerImageryFormats.js.map +1 -1
  394. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts +1 -1
  395. package/lib/esm/tile/map/MapLayerImageryProvider.d.ts.map +1 -1
  396. package/lib/esm/tile/map/MapLayerImageryProvider.js +1 -1
  397. package/lib/esm/tile/map/MapLayerImageryProvider.js.map +1 -1
  398. package/lib/esm/tile/map/MapTileTree.d.ts +1 -1
  399. package/lib/esm/tile/map/MapTileTree.d.ts.map +1 -1
  400. package/lib/esm/tile/map/MapTileTree.js +21 -10
  401. package/lib/esm/tile/map/MapTileTree.js.map +1 -1
  402. package/lib/esm/tile/map/TerrainMeshProvider.d.ts +7 -1
  403. package/lib/esm/tile/map/TerrainMeshProvider.d.ts.map +1 -1
  404. package/lib/esm/tile/map/TerrainMeshProvider.js +1 -1
  405. package/lib/esm/tile/map/TerrainMeshProvider.js.map +1 -1
  406. package/lib/esm/tools/AccuDrawShortcutTool.d.ts +29 -0
  407. package/lib/esm/tools/AccuDrawShortcutTool.d.ts.map +1 -0
  408. package/lib/esm/tools/AccuDrawShortcutTool.js +134 -0
  409. package/lib/esm/tools/AccuDrawShortcutTool.js.map +1 -0
  410. package/lib/esm/tools/AccuDrawTool.d.ts +13 -68
  411. package/lib/esm/tools/AccuDrawTool.d.ts.map +1 -1
  412. package/lib/esm/tools/AccuDrawTool.js +102 -128
  413. package/lib/esm/tools/AccuDrawTool.js.map +1 -1
  414. package/lib/esm/tools/SetupCameraTools.d.ts +89 -0
  415. package/lib/esm/tools/SetupCameraTools.d.ts.map +1 -0
  416. package/lib/esm/tools/SetupCameraTools.js +439 -0
  417. package/lib/esm/tools/SetupCameraTools.js.map +1 -0
  418. package/lib/esm/tools/ToolAdmin.d.ts +5 -2
  419. package/lib/esm/tools/ToolAdmin.d.ts.map +1 -1
  420. package/lib/esm/tools/ToolAdmin.js +30 -7
  421. package/lib/esm/tools/ToolAdmin.js.map +1 -1
  422. package/lib/esm/tools/ViewTool.d.ts +1 -81
  423. package/lib/esm/tools/ViewTool.d.ts.map +1 -1
  424. package/lib/esm/tools/ViewTool.js +14 -409
  425. package/lib/esm/tools/ViewTool.js.map +1 -1
  426. package/lib/public/locales/en/iModelJs.json +2 -1
  427. package/lib/public/scripts/parse-imdl-worker.js +1 -1
  428. package/lib/workers/webpack/parse-imdl-worker.js +1 -1
  429. package/package.json +24 -23
@@ -0,0 +1,444 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module Tools
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.SetupWalkCameraTool = exports.SetupCameraTool = void 0;
11
+ const core_geometry_1 = require("@itwin/core-geometry");
12
+ const core_common_1 = require("@itwin/core-common");
13
+ const appui_abstract_1 = require("@itwin/appui-abstract");
14
+ const AccuDraw_1 = require("../AccuDraw");
15
+ const IModelApp_1 = require("../IModelApp");
16
+ const FormattedQuantityDescription_1 = require("../properties/FormattedQuantityDescription");
17
+ const ViewStatus_1 = require("../ViewStatus");
18
+ const Tool_1 = require("./Tool");
19
+ const PrimitiveTool_1 = require("./PrimitiveTool");
20
+ const ToolAssistance_1 = require("./ToolAssistance");
21
+ const ToolSettings_1 = require("./ToolSettings");
22
+ const ViewTool_1 = require("./ViewTool");
23
+ const EditManipulator_1 = require("./EditManipulator");
24
+ const GraphicType_1 = require("../common/render/GraphicType");
25
+ const viewHandleWeight = {
26
+ normal: 2,
27
+ bold: 3,
28
+ thin: 1,
29
+ fatDot: 8,
30
+ };
31
+ /** A tool that sets the view camera by two points. This is a PrimitiveTool and not a ViewTool to allow the view to be panned, zoomed, and rotated while defining the points.
32
+ * To show tool settings for specifying camera and target heights above the snap point, make sure formatting and parsing data are cached before the tool starts
33
+ * by calling QuantityFormatter.onInitialized at app startup.
34
+ * @public
35
+ */
36
+ class SetupCameraTool extends PrimitiveTool_1.PrimitiveTool {
37
+ static toolId = "View.SetupCamera";
38
+ static iconSpec = "icon-camera-location";
39
+ viewport;
40
+ _haveEyePt = false;
41
+ _eyePtWorld = core_geometry_1.Point3d.create();
42
+ _targetPtWorld = core_geometry_1.Point3d.create();
43
+ isCompatibleViewport(vp, isSelectedViewChange) { return (super.isCompatibleViewport(vp, isSelectedViewChange) && undefined !== vp && vp.view.allow3dManipulations()); }
44
+ isValidLocation(_ev, _isButtonEvent) { return true; }
45
+ requireWriteableTarget() { return false; }
46
+ async onPostInstall() {
47
+ await super.onPostInstall();
48
+ this.setupAndPromptForNextAction();
49
+ }
50
+ async onUnsuspend() { this.provideToolAssistance(); }
51
+ setupAndPromptForNextAction() {
52
+ IModelApp_1.IModelApp.accuSnap.enableSnap(true);
53
+ this.provideToolAssistance();
54
+ }
55
+ async onResetButtonUp(_ev) {
56
+ if (this._haveEyePt)
57
+ await this.onReinitialize();
58
+ else
59
+ await this.exitTool();
60
+ return Tool_1.EventHandled.Yes;
61
+ }
62
+ provideToolAssistance() {
63
+ const mainInstruction = ToolAssistance_1.ToolAssistance.createInstruction(this.iconSpec, ViewTool_1.ViewTool.translate(this._haveEyePt ? "SetupCamera.Prompts.NextPoint" : "SetupCamera.Prompts.FirstPoint"));
64
+ const mouseInstructions = [];
65
+ const touchInstructions = [];
66
+ const acceptMsg = Tool_1.CoreTools.translate("ElementSet.Inputs.AcceptPoint");
67
+ const rejectMsg = Tool_1.CoreTools.translate(this._haveEyePt ? "ElementSet.Inputs.Restart" : "ElementSet.Inputs.Exit");
68
+ if (!ToolAssistance_1.ToolAssistance.createTouchCursorInstructions(touchInstructions))
69
+ touchInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.OneTouchTap, acceptMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Touch));
70
+ mouseInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.LeftClick, acceptMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Mouse));
71
+ touchInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.TwoTouchTap, rejectMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Touch));
72
+ mouseInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.RightClick, rejectMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Mouse));
73
+ const sections = [];
74
+ sections.push(ToolAssistance_1.ToolAssistance.createSection(mouseInstructions, ToolAssistance_1.ToolAssistance.inputsLabel));
75
+ sections.push(ToolAssistance_1.ToolAssistance.createSection(touchInstructions, ToolAssistance_1.ToolAssistance.inputsLabel));
76
+ const instructions = ToolAssistance_1.ToolAssistance.createInstructions(mainInstruction, sections);
77
+ IModelApp_1.IModelApp.notifications.setToolAssistance(instructions);
78
+ }
79
+ async onRestartTool() {
80
+ const tool = new SetupCameraTool();
81
+ if (!await tool.run())
82
+ return this.exitTool();
83
+ }
84
+ getAdjustedEyePoint() { return this.useCameraHeight ? this._eyePtWorld.plusScaled(core_geometry_1.Vector3d.unitZ(), this.cameraHeight) : this._eyePtWorld; }
85
+ getAdjustedTargetPoint() { return this.useTargetHeight ? this._targetPtWorld.plusScaled(core_geometry_1.Vector3d.unitZ(), this.targetHeight) : this._targetPtWorld; }
86
+ async onDataButtonDown(ev) {
87
+ if (undefined === ev.viewport) {
88
+ return Tool_1.EventHandled.Yes;
89
+ }
90
+ else if (undefined === this.viewport) {
91
+ if (!ev.viewport.view.allow3dManipulations())
92
+ return Tool_1.EventHandled.Yes;
93
+ this.viewport = ev.viewport;
94
+ }
95
+ else if (this.viewport.view.iModel !== ev.viewport.view.iModel) {
96
+ if (this._haveEyePt)
97
+ return Tool_1.EventHandled.Yes;
98
+ this.viewport = ev.viewport;
99
+ return Tool_1.EventHandled.Yes;
100
+ }
101
+ if (this._haveEyePt) {
102
+ this._targetPtWorld.setFrom(ev.point);
103
+ this.doManipulation();
104
+ await this.onReinitialize();
105
+ }
106
+ else {
107
+ this._eyePtWorld.setFrom(ev.point);
108
+ this._targetPtWorld.setFrom(this._eyePtWorld);
109
+ this._haveEyePt = true;
110
+ this.setupAndPromptForNextAction();
111
+ }
112
+ return Tool_1.EventHandled.Yes;
113
+ }
114
+ async onMouseMotion(ev) {
115
+ if (!this._haveEyePt)
116
+ return;
117
+ this._targetPtWorld.setFrom(ev.point);
118
+ IModelApp_1.IModelApp.viewManager.invalidateDecorationsAllViews();
119
+ }
120
+ static drawCameraFrustum(context, vp, eyePtWorld, targetPtWorld, eyeSnapPtWorld, targetSnapPtWorld) {
121
+ if (!vp.view.is3d() || vp.view.iModel !== context.viewport.view.iModel)
122
+ return;
123
+ const zVec = core_geometry_1.Vector3d.createStartEnd(eyePtWorld, targetPtWorld);
124
+ const focusDist = zVec.normalizeWithLength(zVec).mag;
125
+ if (focusDist <= core_geometry_1.Constant.oneMillimeter) // eye and target are too close together
126
+ return;
127
+ const xVec = new core_geometry_1.Vector3d();
128
+ const yVec = core_geometry_1.Vector3d.unitZ();
129
+ if (yVec.crossProduct(zVec).normalizeWithLength(xVec).mag < core_geometry_1.Geometry.smallMetricDistance)
130
+ return;
131
+ if (zVec.crossProduct(xVec).normalizeWithLength(yVec).mag < core_geometry_1.Geometry.smallMetricDistance)
132
+ return;
133
+ const lensAngle = ToolSettings_1.ToolSettings.walkCameraAngle;
134
+ const extentX = Math.tan(lensAngle.radians / 2.0) * focusDist;
135
+ const extentY = extentX * (vp.view.extents.y / vp.view.extents.x);
136
+ const pt1 = targetPtWorld.plusScaled(xVec, -extentX);
137
+ pt1.plusScaled(yVec, extentY, pt1);
138
+ const pt2 = targetPtWorld.plusScaled(xVec, extentX);
139
+ pt2.plusScaled(yVec, extentY, pt2);
140
+ const pt3 = targetPtWorld.plusScaled(xVec, extentX);
141
+ pt3.plusScaled(yVec, -extentY, pt3);
142
+ const pt4 = targetPtWorld.plusScaled(xVec, -extentX);
143
+ pt4.plusScaled(yVec, -extentY, pt4);
144
+ const color = EditManipulator_1.EditManipulator.HandleUtils.adjustForBackgroundColor(core_common_1.ColorDef.black, vp);
145
+ const builderHid = context.createGraphicBuilder(GraphicType_1.GraphicType.WorldOverlay);
146
+ builderHid.setSymbology(color, color, viewHandleWeight.bold);
147
+ builderHid.addLineString([eyePtWorld, targetPtWorld]);
148
+ builderHid.setSymbology(color, color, viewHandleWeight.thin, core_common_1.LinePixels.Code2);
149
+ builderHid.addLineString([eyePtWorld, pt1]);
150
+ builderHid.addLineString([eyePtWorld, pt2]);
151
+ builderHid.addLineString([eyePtWorld, pt3]);
152
+ builderHid.addLineString([eyePtWorld, pt4]);
153
+ builderHid.addLineString([pt1, pt2, pt3, pt4, pt1]);
154
+ if (eyeSnapPtWorld)
155
+ builderHid.addLineString([eyeSnapPtWorld, eyePtWorld]);
156
+ if (targetSnapPtWorld)
157
+ builderHid.addLineString([targetSnapPtWorld, targetPtWorld]);
158
+ builderHid.setSymbology(color, color, viewHandleWeight.fatDot);
159
+ builderHid.addPointString([eyePtWorld, targetPtWorld]);
160
+ if (eyeSnapPtWorld)
161
+ builderHid.addPointString([eyeSnapPtWorld]);
162
+ if (targetSnapPtWorld)
163
+ builderHid.addPointString([targetSnapPtWorld]);
164
+ context.addDecorationFromBuilder(builderHid);
165
+ const backColor = core_common_1.ColorDef.from(0, 0, 255, 200);
166
+ const sideColor = context.viewport.hilite.color.withAlpha(25);
167
+ const builderVis = context.createGraphicBuilder(GraphicType_1.GraphicType.WorldDecoration);
168
+ builderVis.setSymbology(color, color, viewHandleWeight.normal);
169
+ builderVis.addLineString([eyePtWorld, pt1]);
170
+ builderVis.addLineString([eyePtWorld, pt2]);
171
+ builderVis.addLineString([eyePtWorld, pt3]);
172
+ builderVis.addLineString([eyePtWorld, pt4]);
173
+ builderVis.addLineString([pt1, pt2, pt3, pt4, pt1]);
174
+ builderVis.setSymbology(color, backColor, viewHandleWeight.thin);
175
+ builderVis.addShape([pt1, pt2, pt3, pt4]);
176
+ builderVis.setSymbology(color, sideColor, viewHandleWeight.thin);
177
+ builderVis.addShape([eyePtWorld, pt1, pt2]);
178
+ builderVis.addShape([eyePtWorld, pt2, pt3]);
179
+ builderVis.addShape([eyePtWorld, pt3, pt4]);
180
+ builderVis.addShape([eyePtWorld, pt4, pt1]);
181
+ context.addDecorationFromBuilder(builderVis);
182
+ }
183
+ decorate(context) {
184
+ if (!this._haveEyePt || undefined === this.viewport)
185
+ return;
186
+ SetupCameraTool.drawCameraFrustum(context, this.viewport, this.getAdjustedEyePoint(), this.getAdjustedTargetPoint(), this.useCameraHeight ? this._eyePtWorld : undefined, this.useTargetHeight ? this._targetPtWorld : undefined);
187
+ }
188
+ decorateSuspended(context) { this.decorate(context); }
189
+ doManipulation() {
190
+ const vp = this.viewport;
191
+ if (undefined === vp)
192
+ return;
193
+ const view = vp.view;
194
+ if (!view.is3d() || !view.allow3dManipulations())
195
+ return;
196
+ const eyePoint = this.getAdjustedEyePoint();
197
+ const targetPoint = this.getAdjustedTargetPoint();
198
+ const lensAngle = ToolSettings_1.ToolSettings.walkCameraAngle;
199
+ if (ViewStatus_1.ViewStatus.Success !== view.lookAt({ eyePoint, targetPoint, upVector: core_geometry_1.Vector3d.unitZ(), lensAngle }))
200
+ return;
201
+ vp.synchWithView({ animateFrustumChange: true });
202
+ }
203
+ _useCameraHeightProperty;
204
+ get useCameraHeightProperty() {
205
+ if (!this._useCameraHeightProperty)
206
+ this._useCameraHeightProperty = new appui_abstract_1.DialogProperty(appui_abstract_1.PropertyDescriptionHelper.buildLockPropertyDescription("useCameraHeight"), false, undefined, false);
207
+ return this._useCameraHeightProperty;
208
+ }
209
+ get useCameraHeight() { return this.useCameraHeightProperty.value; }
210
+ set useCameraHeight(option) { this.useCameraHeightProperty.value = option; }
211
+ _cameraHeightProperty;
212
+ get cameraHeightProperty() {
213
+ if (!this._cameraHeightProperty)
214
+ this._cameraHeightProperty = new appui_abstract_1.DialogProperty((0, FormattedQuantityDescription_1.createQuantityDescription)({
215
+ name: "cameraHeight",
216
+ displayLabel: ViewTool_1.ViewTool.translate("SetupCamera.Labels.CameraHeight"),
217
+ kindOfQuantityName: "DefaultToolsUnits.LENGTH",
218
+ persistenceUnitName: "Units.M",
219
+ }), 0.0);
220
+ return this._cameraHeightProperty;
221
+ }
222
+ get cameraHeight() { return this.cameraHeightProperty.value; }
223
+ set cameraHeight(value) { this.cameraHeightProperty.value = value; }
224
+ _useTargetHeightProperty;
225
+ get useTargetHeightProperty() {
226
+ if (!this._useTargetHeightProperty)
227
+ this._useTargetHeightProperty = new appui_abstract_1.DialogProperty(appui_abstract_1.PropertyDescriptionHelper.buildLockPropertyDescription("useTargetHeight"), false, undefined, false);
228
+ return this._useTargetHeightProperty;
229
+ }
230
+ get useTargetHeight() { return this.useTargetHeightProperty.value; }
231
+ set useTargetHeight(value) { this.useTargetHeightProperty.value = value; }
232
+ _targetHeightProperty;
233
+ get targetHeightProperty() {
234
+ if (!this._targetHeightProperty)
235
+ this._targetHeightProperty = new appui_abstract_1.DialogProperty((0, FormattedQuantityDescription_1.createQuantityDescription)({
236
+ name: "targetHeight",
237
+ displayLabel: ViewTool_1.ViewTool.translate("SetupCamera.Labels.TargetHeight"),
238
+ kindOfQuantityName: "DefaultToolsUnits.LENGTH",
239
+ persistenceUnitName: "Units.M",
240
+ }), 0.0);
241
+ return this._targetHeightProperty;
242
+ }
243
+ get targetHeight() { return this.targetHeightProperty.value; }
244
+ set targetHeight(value) { this.targetHeightProperty.value = value; }
245
+ getToolSettingLockProperty(property) {
246
+ if (property === this.cameraHeightProperty)
247
+ return this.useCameraHeightProperty;
248
+ else if (property === this.targetHeightProperty)
249
+ return this.useTargetHeightProperty;
250
+ return undefined;
251
+ }
252
+ async applyToolSettingPropertyChange(updatedValue) {
253
+ return this.changeToolSettingPropertyValue(updatedValue);
254
+ }
255
+ supplyToolSettingsProperties() {
256
+ this.initializeToolSettingPropertyValues([this.useCameraHeightProperty, this.useTargetHeightProperty, this.cameraHeightProperty, this.targetHeightProperty]);
257
+ const cameraHeightLock = this.useCameraHeightProperty.toDialogItem({ rowPriority: 1, columnIndex: 0 });
258
+ const targetHeightLock = this.useTargetHeightProperty.toDialogItem({ rowPriority: 2, columnIndex: 0 });
259
+ const toolSettings = new Array();
260
+ toolSettings.push(this.cameraHeightProperty.toDialogItem({ rowPriority: 1, columnIndex: 1 }, cameraHeightLock));
261
+ toolSettings.push(this.targetHeightProperty.toDialogItem({ rowPriority: 2, columnIndex: 1 }, targetHeightLock));
262
+ return toolSettings;
263
+ }
264
+ }
265
+ exports.SetupCameraTool = SetupCameraTool;
266
+ /** A tool that sets a walk tool starting position by a floor point and look direction. This is a PrimitiveTool and not a ViewTool to allow the view to be panned, zoomed, and rotated while defining the points.
267
+ * @public
268
+ */
269
+ class SetupWalkCameraTool extends PrimitiveTool_1.PrimitiveTool {
270
+ static toolId = "View.SetupWalkCamera";
271
+ static iconSpec = "icon-camera-location";
272
+ viewport;
273
+ _haveEyePt = false;
274
+ _eyePtWorld = core_geometry_1.Point3d.create();
275
+ _targetPtWorld = core_geometry_1.Point3d.create();
276
+ isCompatibleViewport(vp, isSelectedViewChange) { return (super.isCompatibleViewport(vp, isSelectedViewChange) && undefined !== vp && vp.view.allow3dManipulations()); }
277
+ isValidLocation(_ev, _isButtonEvent) { return true; }
278
+ requireWriteableTarget() { return false; }
279
+ async onPostInstall() {
280
+ await super.onPostInstall();
281
+ this.setupAndPromptForNextAction();
282
+ }
283
+ async onUnsuspend() { this.provideToolAssistance(); }
284
+ setupAndPromptForNextAction() {
285
+ IModelApp_1.IModelApp.accuSnap.enableSnap(true);
286
+ this.provideToolAssistance();
287
+ }
288
+ async onResetButtonUp(_ev) {
289
+ if (this._haveEyePt)
290
+ await this.onReinitialize();
291
+ else
292
+ await this.exitTool();
293
+ return Tool_1.EventHandled.Yes;
294
+ }
295
+ provideToolAssistance() {
296
+ const mainInstruction = ToolAssistance_1.ToolAssistance.createInstruction(this.iconSpec, ViewTool_1.ViewTool.translate(this._haveEyePt ? "SetupWalkCamera.Prompts.NextPoint" : "SetupWalkCamera.Prompts.FirstPoint"));
297
+ const mouseInstructions = [];
298
+ const touchInstructions = [];
299
+ const acceptMsg = Tool_1.CoreTools.translate("ElementSet.Inputs.AcceptPoint");
300
+ const rejectMsg = Tool_1.CoreTools.translate(this._haveEyePt ? "ElementSet.Inputs.Restart" : "ElementSet.Inputs.Exit");
301
+ if (!ToolAssistance_1.ToolAssistance.createTouchCursorInstructions(touchInstructions))
302
+ touchInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.OneTouchTap, acceptMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Touch));
303
+ mouseInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.LeftClick, acceptMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Mouse));
304
+ touchInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.TwoTouchTap, rejectMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Touch));
305
+ mouseInstructions.push(ToolAssistance_1.ToolAssistance.createInstruction(ToolAssistance_1.ToolAssistanceImage.RightClick, rejectMsg, false, ToolAssistance_1.ToolAssistanceInputMethod.Mouse));
306
+ const sections = [];
307
+ sections.push(ToolAssistance_1.ToolAssistance.createSection(mouseInstructions, ToolAssistance_1.ToolAssistance.inputsLabel));
308
+ sections.push(ToolAssistance_1.ToolAssistance.createSection(touchInstructions, ToolAssistance_1.ToolAssistance.inputsLabel));
309
+ const instructions = ToolAssistance_1.ToolAssistance.createInstructions(mainInstruction, sections);
310
+ IModelApp_1.IModelApp.notifications.setToolAssistance(instructions);
311
+ }
312
+ async onRestartTool() {
313
+ const tool = new SetupWalkCameraTool();
314
+ if (!await tool.run())
315
+ return this.exitTool();
316
+ }
317
+ getAdjustedEyePoint() { return this._eyePtWorld.plusScaled(core_geometry_1.Vector3d.unitZ(), ToolSettings_1.ToolSettings.walkEyeHeight); }
318
+ getAdjustedTargetPoint() { return core_geometry_1.Point3d.create(this._targetPtWorld.x, this._targetPtWorld.y, this.getAdjustedEyePoint().z); }
319
+ async onDataButtonDown(ev) {
320
+ if (undefined === ev.viewport) {
321
+ return Tool_1.EventHandled.Yes;
322
+ }
323
+ else if (undefined === this.viewport) {
324
+ if (!ev.viewport.view.allow3dManipulations())
325
+ return Tool_1.EventHandled.Yes;
326
+ this.viewport = ev.viewport;
327
+ }
328
+ else if (this.viewport.view.iModel !== ev.viewport.view.iModel) {
329
+ if (this._haveEyePt)
330
+ return Tool_1.EventHandled.Yes;
331
+ this.viewport = ev.viewport;
332
+ return Tool_1.EventHandled.Yes;
333
+ }
334
+ if (this._haveEyePt) {
335
+ this._targetPtWorld.setFrom(ev.point);
336
+ this.doManipulation();
337
+ await this.onReinitialize();
338
+ }
339
+ else {
340
+ this._eyePtWorld.setFrom(ev.point);
341
+ this._targetPtWorld.setFrom(this._eyePtWorld);
342
+ this._haveEyePt = true;
343
+ this.setupAndPromptForNextAction();
344
+ }
345
+ return Tool_1.EventHandled.Yes;
346
+ }
347
+ async onMouseMotion(ev) {
348
+ if (!this._haveEyePt)
349
+ return;
350
+ this._targetPtWorld.setFrom(ev.point);
351
+ IModelApp_1.IModelApp.viewManager.invalidateDecorationsAllViews();
352
+ }
353
+ static getFigurePoints() {
354
+ const figurePts = [];
355
+ figurePts.push(core_geometry_1.Point3d.create(1.064, -0.014));
356
+ figurePts.push(core_geometry_1.Point3d.create(1.051, 0.039));
357
+ figurePts.push(core_geometry_1.Point3d.create(1.008, 0.058));
358
+ figurePts.push(core_geometry_1.Point3d.create(0.962, 0.048));
359
+ figurePts.push(core_geometry_1.Point3d.create(0.920, 0.026));
360
+ figurePts.push(core_geometry_1.Point3d.create(0.898, 0.026));
361
+ figurePts.push(core_geometry_1.Point3d.create(0.853, 0.094));
362
+ figurePts.push(core_geometry_1.Point3d.create(0.741, 0.120));
363
+ figurePts.push(core_geometry_1.Point3d.create(0.652, 0.091));
364
+ figurePts.push(core_geometry_1.Point3d.create(0.514, 0.107));
365
+ figurePts.push(core_geometry_1.Point3d.create(0.304, 0.108));
366
+ figurePts.push(core_geometry_1.Point3d.create(0.040, 0.135));
367
+ figurePts.push(core_geometry_1.Point3d.create(-0.023, 0.133));
368
+ figurePts.push(core_geometry_1.Point3d.create(-0.031, 0.088));
369
+ figurePts.push(core_geometry_1.Point3d.create(0.041, 0.068));
370
+ figurePts.push(core_geometry_1.Point3d.create(0.299, 0.035));
371
+ figurePts.push(core_geometry_1.Point3d.create(0.447, -0.015));
372
+ figurePts.push(core_geometry_1.Point3d.create(0.267, -0.042));
373
+ figurePts.push(core_geometry_1.Point3d.create(0.019, -0.036));
374
+ figurePts.push(core_geometry_1.Point3d.create(-0.027, -0.146));
375
+ figurePts.push(core_geometry_1.Point3d.create(-0.005, -0.179));
376
+ figurePts.push(core_geometry_1.Point3d.create(0.056, -0.108));
377
+ figurePts.push(core_geometry_1.Point3d.create(0.270, -0.122));
378
+ figurePts.push(core_geometry_1.Point3d.create(0.483, -0.120));
379
+ figurePts.push(core_geometry_1.Point3d.create(0.649, -0.145));
380
+ figurePts.push(core_geometry_1.Point3d.create(0.715, -0.186));
381
+ figurePts.push(core_geometry_1.Point3d.create(0.865, -0.135));
382
+ figurePts.push(core_geometry_1.Point3d.create(0.905, -0.039));
383
+ figurePts.push(core_geometry_1.Point3d.create(0.948, -0.035));
384
+ figurePts.push(core_geometry_1.Point3d.create(0.979, -0.051));
385
+ figurePts.push(core_geometry_1.Point3d.create(1.037, -0.046));
386
+ figurePts.push(figurePts[0].clone());
387
+ return figurePts;
388
+ }
389
+ static getFigureTransform(vp, base, direction, scale) {
390
+ const boresite = AccuDraw_1.AccuDrawHintBuilder.getBoresite(base, vp);
391
+ if (Math.abs(direction.dotProduct(boresite.direction)) >= 0.9999)
392
+ return undefined;
393
+ const matrix = core_geometry_1.Matrix3d.createRigidFromColumns(direction, boresite.direction, core_geometry_1.AxisOrder.XZY);
394
+ if (undefined === matrix)
395
+ return undefined;
396
+ matrix.scaleColumnsInPlace(scale, scale, scale);
397
+ return core_geometry_1.Transform.createRefs(base.clone(), matrix);
398
+ }
399
+ static drawFigure(context, vp, groundPt, eyeHeight) {
400
+ if (!vp.view.is3d() || vp.view.iModel !== context.viewport.view.iModel)
401
+ return;
402
+ const transform = this.getFigureTransform(context.viewport, groundPt, core_geometry_1.Vector3d.unitZ(), eyeHeight);
403
+ if (undefined === transform)
404
+ return;
405
+ const figurePts = this.getFigurePoints();
406
+ const color = EditManipulator_1.EditManipulator.HandleUtils.adjustForBackgroundColor(core_common_1.ColorDef.black, vp);
407
+ const fill = core_common_1.ColorDef.from(255, 245, 225, 100);
408
+ const builderShadow = context.createGraphicBuilder(GraphicType_1.GraphicType.WorldOverlay);
409
+ builderShadow.setSymbology(color, core_common_1.ColorDef.black.withAlpha(30), viewHandleWeight.thin);
410
+ builderShadow.addArc(core_geometry_1.Arc3d.createXY(groundPt, eyeHeight * 0.22), true, true);
411
+ context.addDecorationFromBuilder(builderShadow);
412
+ const builderHid = context.createGraphicBuilder(GraphicType_1.GraphicType.WorldDecoration, transform);
413
+ builderHid.setSymbology(color, fill, viewHandleWeight.thin);
414
+ builderHid.addShape(figurePts); // Copies points...
415
+ context.addDecorationFromBuilder(builderHid);
416
+ const builderVis = context.createGraphicBuilder(GraphicType_1.GraphicType.WorldOverlay, transform);
417
+ builderVis.setSymbology(color, color, viewHandleWeight.normal);
418
+ builderVis.addLineString(figurePts); // Owns points...
419
+ context.addDecorationFromBuilder(builderVis);
420
+ }
421
+ decorate(context) {
422
+ if (!this._haveEyePt || undefined === this.viewport)
423
+ return;
424
+ SetupWalkCameraTool.drawFigure(context, this.viewport, this._eyePtWorld, ToolSettings_1.ToolSettings.walkEyeHeight);
425
+ SetupCameraTool.drawCameraFrustum(context, this.viewport, this.getAdjustedEyePoint(), this.getAdjustedTargetPoint(), this._eyePtWorld, this._targetPtWorld);
426
+ }
427
+ decorateSuspended(context) { this.decorate(context); }
428
+ doManipulation() {
429
+ const vp = this.viewport;
430
+ if (undefined === vp)
431
+ return;
432
+ const view = vp.view;
433
+ if (!view.is3d() || !view.allow3dManipulations())
434
+ return;
435
+ const eyePoint = this.getAdjustedEyePoint();
436
+ const targetPoint = this.getAdjustedTargetPoint();
437
+ const lensAngle = ToolSettings_1.ToolSettings.walkCameraAngle;
438
+ if (ViewStatus_1.ViewStatus.Success !== view.lookAt({ eyePoint, targetPoint, upVector: core_geometry_1.Vector3d.unitZ(), lensAngle }))
439
+ return;
440
+ vp.synchWithView({ animateFrustumChange: true });
441
+ }
442
+ }
443
+ exports.SetupWalkCameraTool = SetupWalkCameraTool;
444
+ //# sourceMappingURL=SetupCameraTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetupCameraTools.js","sourceRoot":"","sources":["../../../src/tools/SetupCameraTools.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Tools\n */\n\nimport { Arc3d, AxisOrder, Constant, Geometry, Matrix3d, Point3d, Transform, Vector3d } from \"@itwin/core-geometry\";\nimport { ColorDef, LinePixels } from \"@itwin/core-common\";\nimport { DialogItem, DialogProperty, DialogPropertySyncItem, PropertyDescriptionHelper } from \"@itwin/appui-abstract\";\nimport { AccuDrawHintBuilder } from \"../AccuDraw\";\nimport { IModelApp } from \"../IModelApp\";\nimport { createQuantityDescription } from \"../properties/FormattedQuantityDescription\";\nimport { DecorateContext } from \"../ViewContext\";\nimport { ScreenViewport, Viewport } from \"../Viewport\";\nimport { ViewStatus } from \"../ViewStatus\";\nimport { BeButtonEvent, CoreTools, EventHandled } from \"./Tool\";\nimport { PrimitiveTool } from \"./PrimitiveTool\";\nimport { ToolAssistance, ToolAssistanceImage, ToolAssistanceInputMethod, ToolAssistanceInstruction, ToolAssistanceSection } from \"./ToolAssistance\";\nimport { ToolSettings } from \"./ToolSettings\";\nimport { ViewTool } from \"./ViewTool\";\nimport { EditManipulator } from \"./EditManipulator\";\nimport { GraphicType } from \"../common/render/GraphicType\";\n\nconst viewHandleWeight = {\n normal: 2,\n bold: 3,\n thin: 1,\n fatDot: 8,\n};\n\n/** A tool that sets the view camera by two points. This is a PrimitiveTool and not a ViewTool to allow the view to be panned, zoomed, and rotated while defining the points.\n * To show tool settings for specifying camera and target heights above the snap point, make sure formatting and parsing data are cached before the tool starts\n * by calling QuantityFormatter.onInitialized at app startup.\n * @public\n */\nexport class SetupCameraTool extends PrimitiveTool {\n public static override toolId = \"View.SetupCamera\";\n public static override iconSpec = \"icon-camera-location\";\n public viewport?: ScreenViewport;\n protected _haveEyePt: boolean = false;\n protected _eyePtWorld: Point3d = Point3d.create();\n protected _targetPtWorld: Point3d = Point3d.create();\n\n public override isCompatibleViewport(vp: Viewport | undefined, isSelectedViewChange: boolean): boolean { return (super.isCompatibleViewport(vp, isSelectedViewChange) && undefined !== vp && vp.view.allow3dManipulations()); }\n public override isValidLocation(_ev: BeButtonEvent, _isButtonEvent: boolean): boolean { return true; }\n public override requireWriteableTarget(): boolean { return false; }\n public override async onPostInstall() {\n await super.onPostInstall();\n this.setupAndPromptForNextAction();\n }\n\n public override async onUnsuspend() { this.provideToolAssistance(); }\n protected setupAndPromptForNextAction(): void {\n IModelApp.accuSnap.enableSnap(true);\n this.provideToolAssistance();\n }\n\n public override async onResetButtonUp(_ev: BeButtonEvent): Promise<EventHandled> {\n if (this._haveEyePt)\n await this.onReinitialize();\n else\n await this.exitTool();\n\n return EventHandled.Yes;\n }\n\n protected provideToolAssistance(): void {\n const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(this._haveEyePt ? \"SetupCamera.Prompts.NextPoint\" : \"SetupCamera.Prompts.FirstPoint\"));\n const mouseInstructions: ToolAssistanceInstruction[] = [];\n const touchInstructions: ToolAssistanceInstruction[] = [];\n\n const acceptMsg = CoreTools.translate(\"ElementSet.Inputs.AcceptPoint\");\n const rejectMsg = CoreTools.translate(this._haveEyePt ? \"ElementSet.Inputs.Restart\" : \"ElementSet.Inputs.Exit\");\n if (!ToolAssistance.createTouchCursorInstructions(touchInstructions))\n touchInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.OneTouchTap, acceptMsg, false, ToolAssistanceInputMethod.Touch));\n mouseInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.LeftClick, acceptMsg, false, ToolAssistanceInputMethod.Mouse));\n touchInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.TwoTouchTap, rejectMsg, false, ToolAssistanceInputMethod.Touch));\n mouseInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.RightClick, rejectMsg, false, ToolAssistanceInputMethod.Mouse));\n\n const sections: ToolAssistanceSection[] = [];\n sections.push(ToolAssistance.createSection(mouseInstructions, ToolAssistance.inputsLabel));\n sections.push(ToolAssistance.createSection(touchInstructions, ToolAssistance.inputsLabel));\n\n const instructions = ToolAssistance.createInstructions(mainInstruction, sections);\n IModelApp.notifications.setToolAssistance(instructions);\n }\n\n public async onRestartTool(): Promise<void> {\n const tool = new SetupCameraTool();\n if (!await tool.run())\n return this.exitTool();\n }\n\n protected getAdjustedEyePoint() { return this.useCameraHeight ? this._eyePtWorld.plusScaled(Vector3d.unitZ(), this.cameraHeight) : this._eyePtWorld; }\n protected getAdjustedTargetPoint() { return this.useTargetHeight ? this._targetPtWorld.plusScaled(Vector3d.unitZ(), this.targetHeight) : this._targetPtWorld; }\n\n public override async onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled> {\n if (undefined === ev.viewport) {\n return EventHandled.Yes;\n } else if (undefined === this.viewport) {\n if (!ev.viewport.view.allow3dManipulations())\n return EventHandled.Yes;\n this.viewport = ev.viewport;\n } else if (this.viewport.view.iModel !== ev.viewport.view.iModel) {\n if (this._haveEyePt)\n return EventHandled.Yes;\n this.viewport = ev.viewport;\n return EventHandled.Yes;\n }\n\n if (this._haveEyePt) {\n this._targetPtWorld.setFrom(ev.point);\n this.doManipulation();\n await this.onReinitialize();\n } else {\n this._eyePtWorld.setFrom(ev.point);\n this._targetPtWorld.setFrom(this._eyePtWorld);\n this._haveEyePt = true;\n this.setupAndPromptForNextAction();\n }\n\n return EventHandled.Yes;\n }\n\n public override async onMouseMotion(ev: BeButtonEvent) {\n if (!this._haveEyePt)\n return;\n this._targetPtWorld.setFrom(ev.point);\n IModelApp.viewManager.invalidateDecorationsAllViews();\n }\n\n public static drawCameraFrustum(context: DecorateContext, vp: ScreenViewport, eyePtWorld: Point3d, targetPtWorld: Point3d, eyeSnapPtWorld?: Point3d, targetSnapPtWorld?: Point3d) {\n if (!vp.view.is3d() || vp.view.iModel !== context.viewport.view.iModel)\n return;\n\n const zVec = Vector3d.createStartEnd(eyePtWorld, targetPtWorld);\n const focusDist = zVec.normalizeWithLength(zVec).mag;\n if (focusDist <= Constant.oneMillimeter) // eye and target are too close together\n return;\n\n const xVec = new Vector3d();\n const yVec = Vector3d.unitZ();\n if (yVec.crossProduct(zVec).normalizeWithLength(xVec).mag < Geometry.smallMetricDistance)\n return;\n if (zVec.crossProduct(xVec).normalizeWithLength(yVec).mag < Geometry.smallMetricDistance)\n return;\n\n const lensAngle = ToolSettings.walkCameraAngle;\n const extentX = Math.tan(lensAngle.radians / 2.0) * focusDist;\n const extentY = extentX * (vp.view.extents.y / vp.view.extents.x);\n\n const pt1 = targetPtWorld.plusScaled(xVec, -extentX);\n pt1.plusScaled(yVec, extentY, pt1);\n const pt2 = targetPtWorld.plusScaled(xVec, extentX);\n pt2.plusScaled(yVec, extentY, pt2);\n const pt3 = targetPtWorld.plusScaled(xVec, extentX);\n pt3.plusScaled(yVec, -extentY, pt3);\n const pt4 = targetPtWorld.plusScaled(xVec, -extentX);\n pt4.plusScaled(yVec, -extentY, pt4);\n\n const color = EditManipulator.HandleUtils.adjustForBackgroundColor(ColorDef.black, vp);\n const builderHid = context.createGraphicBuilder(GraphicType.WorldOverlay);\n\n builderHid.setSymbology(color, color, viewHandleWeight.bold);\n builderHid.addLineString([eyePtWorld, targetPtWorld]);\n\n builderHid.setSymbology(color, color, viewHandleWeight.thin, LinePixels.Code2);\n builderHid.addLineString([eyePtWorld, pt1]);\n builderHid.addLineString([eyePtWorld, pt2]);\n builderHid.addLineString([eyePtWorld, pt3]);\n builderHid.addLineString([eyePtWorld, pt4]);\n builderHid.addLineString([pt1, pt2, pt3, pt4, pt1]);\n\n if (eyeSnapPtWorld)\n builderHid.addLineString([eyeSnapPtWorld, eyePtWorld]);\n if (targetSnapPtWorld)\n builderHid.addLineString([targetSnapPtWorld, targetPtWorld]);\n\n builderHid.setSymbology(color, color, viewHandleWeight.fatDot);\n builderHid.addPointString([eyePtWorld, targetPtWorld]);\n\n if (eyeSnapPtWorld)\n builderHid.addPointString([eyeSnapPtWorld]);\n if (targetSnapPtWorld)\n builderHid.addPointString([targetSnapPtWorld]);\n\n context.addDecorationFromBuilder(builderHid);\n\n const backColor = ColorDef.from(0, 0, 255, 200);\n const sideColor = context.viewport.hilite.color.withAlpha(25);\n const builderVis = context.createGraphicBuilder(GraphicType.WorldDecoration);\n\n builderVis.setSymbology(color, color, viewHandleWeight.normal);\n builderVis.addLineString([eyePtWorld, pt1]);\n builderVis.addLineString([eyePtWorld, pt2]);\n builderVis.addLineString([eyePtWorld, pt3]);\n builderVis.addLineString([eyePtWorld, pt4]);\n builderVis.addLineString([pt1, pt2, pt3, pt4, pt1]);\n\n builderVis.setSymbology(color, backColor, viewHandleWeight.thin);\n builderVis.addShape([pt1, pt2, pt3, pt4]);\n\n builderVis.setSymbology(color, sideColor, viewHandleWeight.thin);\n builderVis.addShape([eyePtWorld, pt1, pt2]);\n builderVis.addShape([eyePtWorld, pt2, pt3]);\n builderVis.addShape([eyePtWorld, pt3, pt4]);\n builderVis.addShape([eyePtWorld, pt4, pt1]);\n\n context.addDecorationFromBuilder(builderVis);\n }\n\n public override decorate(context: DecorateContext): void {\n if (!this._haveEyePt || undefined === this.viewport)\n return;\n SetupCameraTool.drawCameraFrustum(context, this.viewport, this.getAdjustedEyePoint(), this.getAdjustedTargetPoint(), this.useCameraHeight ? this._eyePtWorld : undefined, this.useTargetHeight ? this._targetPtWorld : undefined);\n }\n\n public override decorateSuspended(context: DecorateContext): void { this.decorate(context); }\n\n private doManipulation(): void {\n const vp = this.viewport;\n if (undefined === vp)\n return;\n\n const view = vp.view;\n if (!view.is3d() || !view.allow3dManipulations())\n return;\n\n const eyePoint = this.getAdjustedEyePoint();\n const targetPoint = this.getAdjustedTargetPoint();\n const lensAngle = ToolSettings.walkCameraAngle;\n if (ViewStatus.Success !== view.lookAt({ eyePoint, targetPoint, upVector: Vector3d.unitZ(), lensAngle }))\n return;\n\n vp.synchWithView({ animateFrustumChange: true });\n }\n\n private _useCameraHeightProperty: DialogProperty<boolean> | undefined;\n public get useCameraHeightProperty() {\n if (!this._useCameraHeightProperty)\n this._useCameraHeightProperty = new DialogProperty<boolean>(\n PropertyDescriptionHelper.buildLockPropertyDescription(\"useCameraHeight\"), false, undefined, false);\n return this._useCameraHeightProperty;\n }\n public get useCameraHeight(): boolean { return this.useCameraHeightProperty.value; }\n public set useCameraHeight(option: boolean) { this.useCameraHeightProperty.value = option; }\n\n private _cameraHeightProperty: DialogProperty<number> | undefined;\n public get cameraHeightProperty() {\n if (!this._cameraHeightProperty)\n this._cameraHeightProperty = new DialogProperty<number>(createQuantityDescription({\n name: \"cameraHeight\",\n displayLabel: ViewTool.translate(\"SetupCamera.Labels.CameraHeight\"),\n kindOfQuantityName: \"DefaultToolsUnits.LENGTH\",\n persistenceUnitName: \"Units.M\",\n }), 0.0);\n return this._cameraHeightProperty;\n }\n public get cameraHeight(): number { return this.cameraHeightProperty.value; }\n public set cameraHeight(value: number) { this.cameraHeightProperty.value = value; }\n\n private _useTargetHeightProperty: DialogProperty<boolean> | undefined;\n public get useTargetHeightProperty() {\n if (!this._useTargetHeightProperty)\n this._useTargetHeightProperty = new DialogProperty<boolean>(\n PropertyDescriptionHelper.buildLockPropertyDescription(\"useTargetHeight\"), false, undefined, false);\n return this._useTargetHeightProperty;\n }\n public get useTargetHeight(): boolean { return this.useTargetHeightProperty.value; }\n public set useTargetHeight(value: boolean) { this.useTargetHeightProperty.value = value; }\n\n private _targetHeightProperty: DialogProperty<number> | undefined;\n public get targetHeightProperty() {\n if (!this._targetHeightProperty)\n this._targetHeightProperty = new DialogProperty<number>(createQuantityDescription({\n name: \"targetHeight\",\n displayLabel: ViewTool.translate(\"SetupCamera.Labels.TargetHeight\"),\n kindOfQuantityName: \"DefaultToolsUnits.LENGTH\",\n persistenceUnitName: \"Units.M\",\n }), 0.0);\n return this._targetHeightProperty;\n }\n public get targetHeight(): number { return this.targetHeightProperty.value; }\n public set targetHeight(value: number) { this.targetHeightProperty.value = value; }\n\n protected override getToolSettingLockProperty(property: DialogProperty<any>): DialogProperty<boolean> | undefined {\n if (property === this.cameraHeightProperty)\n return this.useCameraHeightProperty;\n else if (property === this.targetHeightProperty)\n return this.useTargetHeightProperty;\n return undefined;\n }\n\n public override async applyToolSettingPropertyChange(updatedValue: DialogPropertySyncItem): Promise<boolean> {\n return this.changeToolSettingPropertyValue(updatedValue);\n }\n\n public override supplyToolSettingsProperties(): DialogItem[] | undefined {\n this.initializeToolSettingPropertyValues([this.useCameraHeightProperty, this.useTargetHeightProperty, this.cameraHeightProperty, this.targetHeightProperty]);\n\n const cameraHeightLock = this.useCameraHeightProperty.toDialogItem({ rowPriority: 1, columnIndex: 0 });\n const targetHeightLock = this.useTargetHeightProperty.toDialogItem({ rowPriority: 2, columnIndex: 0 });\n\n const toolSettings = new Array<DialogItem>();\n toolSettings.push(this.cameraHeightProperty.toDialogItem({ rowPriority: 1, columnIndex: 1 }, cameraHeightLock));\n toolSettings.push(this.targetHeightProperty.toDialogItem({ rowPriority: 2, columnIndex: 1 }, targetHeightLock));\n return toolSettings;\n }\n}\n\n/** A tool that sets a walk tool starting position by a floor point and look direction. This is a PrimitiveTool and not a ViewTool to allow the view to be panned, zoomed, and rotated while defining the points.\n * @public\n */\nexport class SetupWalkCameraTool extends PrimitiveTool {\n public static override toolId = \"View.SetupWalkCamera\";\n public static override iconSpec = \"icon-camera-location\";\n public viewport?: ScreenViewport;\n protected _haveEyePt: boolean = false;\n protected _eyePtWorld: Point3d = Point3d.create();\n protected _targetPtWorld: Point3d = Point3d.create();\n\n public override isCompatibleViewport(vp: Viewport | undefined, isSelectedViewChange: boolean): boolean { return (super.isCompatibleViewport(vp, isSelectedViewChange) && undefined !== vp && vp.view.allow3dManipulations()); }\n public override isValidLocation(_ev: BeButtonEvent, _isButtonEvent: boolean): boolean { return true; }\n public override requireWriteableTarget(): boolean { return false; }\n public override async onPostInstall() {\n await super.onPostInstall();\n this.setupAndPromptForNextAction();\n }\n\n public override async onUnsuspend() { this.provideToolAssistance(); }\n protected setupAndPromptForNextAction(): void {\n IModelApp.accuSnap.enableSnap(true);\n this.provideToolAssistance();\n }\n\n public override async onResetButtonUp(_ev: BeButtonEvent): Promise<EventHandled> {\n if (this._haveEyePt)\n await this.onReinitialize();\n else\n await this.exitTool();\n\n return EventHandled.Yes;\n }\n\n protected provideToolAssistance(): void {\n const mainInstruction = ToolAssistance.createInstruction(this.iconSpec, ViewTool.translate(this._haveEyePt ? \"SetupWalkCamera.Prompts.NextPoint\" : \"SetupWalkCamera.Prompts.FirstPoint\"));\n const mouseInstructions: ToolAssistanceInstruction[] = [];\n const touchInstructions: ToolAssistanceInstruction[] = [];\n\n const acceptMsg = CoreTools.translate(\"ElementSet.Inputs.AcceptPoint\");\n const rejectMsg = CoreTools.translate(this._haveEyePt ? \"ElementSet.Inputs.Restart\" : \"ElementSet.Inputs.Exit\");\n if (!ToolAssistance.createTouchCursorInstructions(touchInstructions))\n touchInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.OneTouchTap, acceptMsg, false, ToolAssistanceInputMethod.Touch));\n mouseInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.LeftClick, acceptMsg, false, ToolAssistanceInputMethod.Mouse));\n touchInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.TwoTouchTap, rejectMsg, false, ToolAssistanceInputMethod.Touch));\n mouseInstructions.push(ToolAssistance.createInstruction(ToolAssistanceImage.RightClick, rejectMsg, false, ToolAssistanceInputMethod.Mouse));\n\n const sections: ToolAssistanceSection[] = [];\n sections.push(ToolAssistance.createSection(mouseInstructions, ToolAssistance.inputsLabel));\n sections.push(ToolAssistance.createSection(touchInstructions, ToolAssistance.inputsLabel));\n\n const instructions = ToolAssistance.createInstructions(mainInstruction, sections);\n IModelApp.notifications.setToolAssistance(instructions);\n }\n\n public async onRestartTool(): Promise<void> {\n const tool = new SetupWalkCameraTool();\n if (!await tool.run())\n return this.exitTool();\n }\n\n protected getAdjustedEyePoint() { return this._eyePtWorld.plusScaled(Vector3d.unitZ(), ToolSettings.walkEyeHeight); }\n protected getAdjustedTargetPoint() { return Point3d.create(this._targetPtWorld.x, this._targetPtWorld.y, this.getAdjustedEyePoint().z); }\n\n public override async onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled> {\n if (undefined === ev.viewport) {\n return EventHandled.Yes;\n } else if (undefined === this.viewport) {\n if (!ev.viewport.view.allow3dManipulations())\n return EventHandled.Yes;\n this.viewport = ev.viewport;\n } else if (this.viewport.view.iModel !== ev.viewport.view.iModel) {\n if (this._haveEyePt)\n return EventHandled.Yes;\n this.viewport = ev.viewport;\n return EventHandled.Yes;\n }\n\n if (this._haveEyePt) {\n this._targetPtWorld.setFrom(ev.point);\n this.doManipulation();\n await this.onReinitialize();\n } else {\n this._eyePtWorld.setFrom(ev.point);\n this._targetPtWorld.setFrom(this._eyePtWorld);\n this._haveEyePt = true;\n this.setupAndPromptForNextAction();\n }\n\n return EventHandled.Yes;\n }\n\n public override async onMouseMotion(ev: BeButtonEvent) {\n if (!this._haveEyePt)\n return;\n this._targetPtWorld.setFrom(ev.point);\n IModelApp.viewManager.invalidateDecorationsAllViews();\n }\n\n private static getFigurePoints(): Point3d[] {\n const figurePts: Point3d[] = [];\n figurePts.push(Point3d.create(1.064, -0.014));\n figurePts.push(Point3d.create(1.051, 0.039));\n figurePts.push(Point3d.create(1.008, 0.058));\n figurePts.push(Point3d.create(0.962, 0.048));\n figurePts.push(Point3d.create(0.920, 0.026));\n figurePts.push(Point3d.create(0.898, 0.026));\n figurePts.push(Point3d.create(0.853, 0.094));\n figurePts.push(Point3d.create(0.741, 0.120));\n figurePts.push(Point3d.create(0.652, 0.091));\n figurePts.push(Point3d.create(0.514, 0.107));\n figurePts.push(Point3d.create(0.304, 0.108));\n figurePts.push(Point3d.create(0.040, 0.135));\n figurePts.push(Point3d.create(-0.023, 0.133));\n figurePts.push(Point3d.create(-0.031, 0.088));\n figurePts.push(Point3d.create(0.041, 0.068));\n figurePts.push(Point3d.create(0.299, 0.035));\n figurePts.push(Point3d.create(0.447, -0.015));\n figurePts.push(Point3d.create(0.267, -0.042));\n figurePts.push(Point3d.create(0.019, -0.036));\n figurePts.push(Point3d.create(-0.027, -0.146));\n figurePts.push(Point3d.create(-0.005, -0.179));\n figurePts.push(Point3d.create(0.056, -0.108));\n figurePts.push(Point3d.create(0.270, -0.122));\n figurePts.push(Point3d.create(0.483, -0.120));\n figurePts.push(Point3d.create(0.649, -0.145));\n figurePts.push(Point3d.create(0.715, -0.186));\n figurePts.push(Point3d.create(0.865, -0.135));\n figurePts.push(Point3d.create(0.905, -0.039));\n figurePts.push(Point3d.create(0.948, -0.035));\n figurePts.push(Point3d.create(0.979, -0.051));\n figurePts.push(Point3d.create(1.037, -0.046));\n figurePts.push(figurePts[0].clone());\n return figurePts;\n }\n\n private static getFigureTransform(vp: Viewport, base: Point3d, direction: Vector3d, scale: number): Transform | undefined {\n const boresite = AccuDrawHintBuilder.getBoresite(base, vp);\n if (Math.abs(direction.dotProduct(boresite.direction)) >= 0.9999)\n return undefined;\n\n const matrix = Matrix3d.createRigidFromColumns(direction, boresite.direction, AxisOrder.XZY);\n if (undefined === matrix)\n return undefined;\n\n matrix.scaleColumnsInPlace(scale, scale, scale);\n return Transform.createRefs(base.clone(), matrix);\n }\n\n public static drawFigure(context: DecorateContext, vp: Viewport, groundPt: Point3d, eyeHeight: number): void {\n if (!vp.view.is3d() || vp.view.iModel !== context.viewport.view.iModel)\n return;\n\n const transform = this.getFigureTransform(context.viewport, groundPt, Vector3d.unitZ(), eyeHeight);\n if (undefined === transform)\n return;\n\n const figurePts = this.getFigurePoints();\n const color = EditManipulator.HandleUtils.adjustForBackgroundColor(ColorDef.black, vp);\n const fill = ColorDef.from(255, 245, 225, 100);\n\n const builderShadow = context.createGraphicBuilder(GraphicType.WorldOverlay);\n builderShadow.setSymbology(color, ColorDef.black.withAlpha(30), viewHandleWeight.thin);\n builderShadow.addArc(Arc3d.createXY(groundPt, eyeHeight * 0.22), true, true);\n context.addDecorationFromBuilder(builderShadow);\n\n const builderHid = context.createGraphicBuilder(GraphicType.WorldDecoration, transform);\n builderHid.setSymbology(color, fill, viewHandleWeight.thin);\n builderHid.addShape(figurePts); // Copies points...\n context.addDecorationFromBuilder(builderHid);\n\n const builderVis = context.createGraphicBuilder(GraphicType.WorldOverlay, transform);\n builderVis.setSymbology(color, color, viewHandleWeight.normal);\n builderVis.addLineString(figurePts); // Owns points...\n context.addDecorationFromBuilder(builderVis);\n }\n\n public override decorate(context: DecorateContext): void {\n if (!this._haveEyePt || undefined === this.viewport)\n return;\n SetupWalkCameraTool.drawFigure(context, this.viewport, this._eyePtWorld, ToolSettings.walkEyeHeight);\n SetupCameraTool.drawCameraFrustum(context, this.viewport, this.getAdjustedEyePoint(), this.getAdjustedTargetPoint(), this._eyePtWorld, this._targetPtWorld);\n }\n\n public override decorateSuspended(context: DecorateContext): void { this.decorate(context); }\n\n private doManipulation(): void {\n const vp = this.viewport;\n if (undefined === vp)\n return;\n\n const view = vp.view;\n if (!view.is3d() || !view.allow3dManipulations())\n return;\n\n const eyePoint = this.getAdjustedEyePoint();\n const targetPoint = this.getAdjustedTargetPoint();\n const lensAngle = ToolSettings.walkCameraAngle;\n if (ViewStatus.Success !== view.lookAt({ eyePoint, targetPoint, upVector: Vector3d.unitZ(), lensAngle }))\n return;\n\n vp.synchWithView({ animateFrustumChange: true });\n }\n}\n"]}
@@ -308,8 +308,11 @@ export declare class ToolAdmin {
308
308
  private onButtonUp;
309
309
  /** Called when any *modifier* (Shift, Alt, or Control) key is pressed or released. */
310
310
  private onModifierKeyTransition;
311
- private get _isFocusHome();
312
- private _setFocusHome;
311
+ private static isFocusHome;
312
+ private static setFocusHome;
313
+ private static isContextMenuOpen;
314
+ private static isElement;
315
+ private static isEditable;
313
316
  private static getModifierKey;
314
317
  /** Process key down events while the Ctrl key is pressed */
315
318
  onCtrlKeyPressed(keyEvent: KeyboardEvent): Promise<{
@@ -1 +1 @@
1
- {"version":3,"file":"ToolAdmin.d.ts","sourceRoot":"","sources":["../../../src/tools/ToolAdmin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolAdmin.d.ts","sourceRoot":"","sources":["../../../src/tools/ToolAdmin.ts"],"names":[],"mappings":"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"}