kitchen-simulator 1.1.1-test.49 → 1.1.1-test.50

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 (358) hide show
  1. package/es/@history.js +2 -0
  2. package/es/AppContext.js +3 -0
  3. package/es/KitchenConfigurator.js +645 -0
  4. package/es/KitchenConfiguratorApp.js +480 -0
  5. package/es/actions/area-actions.js +14 -0
  6. package/es/actions/export.js +23 -0
  7. package/es/actions/groups-actions.js +89 -0
  8. package/es/actions/holes-actions.js +119 -0
  9. package/es/actions/items-actions.js +313 -0
  10. package/es/actions/lines-actions.js +81 -0
  11. package/es/actions/project-actions.js +281 -0
  12. package/es/actions/scene-actions.js +33 -0
  13. package/es/actions/vertices-actions.js +27 -0
  14. package/es/actions/viewer2d-actions.js +58 -0
  15. package/es/actions/viewer3d-actions.js +23 -0
  16. package/es/catalog/areas/area/planner-element.js +40 -0
  17. package/es/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  18. package/es/catalog/areas/area/textures/grass.jpg +0 -0
  19. package/es/catalog/areas/area/textures/parquet.jpg +0 -0
  20. package/es/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  21. package/es/catalog/areas/area/textures/tile1.jpg +0 -0
  22. package/es/catalog/catalog.js +277 -0
  23. package/es/catalog/envMap/nx.hdr +0 -0
  24. package/es/catalog/envMap/ny.hdr +0 -0
  25. package/es/catalog/envMap/nz.hdr +0 -0
  26. package/es/catalog/envMap/px.hdr +0 -0
  27. package/es/catalog/envMap/py.hdr +0 -0
  28. package/es/catalog/envMap/pz.hdr +0 -0
  29. package/es/catalog/factories/area-factory-3d.js +181 -0
  30. package/es/catalog/factories/area-factory.js +81 -0
  31. package/es/catalog/factories/export.js +7 -0
  32. package/es/catalog/factories/wall-factory-3d.js +202 -0
  33. package/es/catalog/factories/wall-factory.js +268 -0
  34. package/es/catalog/holes/door-closet/planner-element.js +222 -0
  35. package/es/catalog/holes/door-double/door_double.png +0 -0
  36. package/es/catalog/holes/door-double/planner-element.js +315 -0
  37. package/es/catalog/holes/door-exterior/planner-element.js +215 -0
  38. package/es/catalog/holes/door-interior/planner-element.js +227 -0
  39. package/es/catalog/holes/door-panic/panicDoor.png +0 -0
  40. package/es/catalog/holes/door-panic/planner-element.js +503 -0
  41. package/es/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  42. package/es/catalog/holes/door-panic-double/planner-element.js +463 -0
  43. package/es/catalog/holes/door-sliding/planner-element.js +225 -0
  44. package/es/catalog/holes/doorway-framed/planner-element.js +145 -0
  45. package/es/catalog/holes/doorway-frameless/planner-element.js +104 -0
  46. package/es/catalog/holes/export.js +13 -0
  47. package/es/catalog/holes/gate/gate.jpg +0 -0
  48. package/es/catalog/holes/window-clear/planner-element.js +166 -0
  49. package/es/catalog/holes/window-clear/texture.png +0 -0
  50. package/es/catalog/holes/window-cross/planner-element.js +165 -0
  51. package/es/catalog/holes/window-cross/texture.png +0 -0
  52. package/es/catalog/holes/window-double-hung/planner-element.js +303 -0
  53. package/es/catalog/holes/window-double-hung/texture.png +0 -0
  54. package/es/catalog/holes/window-vertical/planner-element.js +276 -0
  55. package/es/catalog/holes/window-vertical/texture.png +0 -0
  56. package/es/catalog/lines/wall/planner-element.js +70 -0
  57. package/es/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  58. package/es/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  59. package/es/catalog/lines/wall/textures/bricks.jpg +0 -0
  60. package/es/catalog/lines/wall/textures/bricks2.jpg +0 -0
  61. package/es/catalog/lines/wall/textures/bricks3.jpg +0 -0
  62. package/es/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  63. package/es/catalog/lines/wall/textures/morden.jpg +0 -0
  64. package/es/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  65. package/es/catalog/lines/wall/textures/painted.jpg +0 -0
  66. package/es/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  67. package/es/catalog/lines/wall/textures/plaster.jpg +0 -0
  68. package/es/catalog/lines/wall/wall.png +0 -0
  69. package/es/catalog/molding/molding-dcm/planner-element.js +28 -0
  70. package/es/catalog/molding/molding-dcm/texture.png +0 -0
  71. package/es/catalog/molding/molding-fbm/planner-element.js +28 -0
  72. package/es/catalog/molding/molding-fbm/texture.png +0 -0
  73. package/es/catalog/molding/molding-lrm/planner-element.js +28 -0
  74. package/es/catalog/molding/molding-lrm/texture.png +0 -0
  75. package/es/catalog/properties/export.js +21 -0
  76. package/es/catalog/properties/property-checkbox.js +116 -0
  77. package/es/catalog/properties/property-color.js +39 -0
  78. package/es/catalog/properties/property-enum.js +97 -0
  79. package/es/catalog/properties/property-hidden.js +19 -0
  80. package/es/catalog/properties/property-lenght-measure.js +101 -0
  81. package/es/catalog/properties/property-length-measure.js +134 -0
  82. package/es/catalog/properties/property-length-measure_hole.js +101 -0
  83. package/es/catalog/properties/property-number.js +48 -0
  84. package/es/catalog/properties/property-read-only.js +26 -0
  85. package/es/catalog/properties/property-string.js +48 -0
  86. package/es/catalog/properties/property-toggle.js +39 -0
  87. package/es/catalog/properties/shared-property-style.js +14 -0
  88. package/es/catalog/utils/FuseUtils.js +82 -0
  89. package/es/catalog/utils/exporter.js +148 -0
  90. package/es/catalog/utils/geom-utils.js +189 -0
  91. package/es/catalog/utils/item-loader.js +1521 -0
  92. package/es/catalog/utils/load-obj.js +91 -0
  93. package/es/catalog/utils/mtl-loader.js +358 -0
  94. package/es/catalog/utils/obj-loader.js +477 -0
  95. package/es/class/FuseUtils.js +82 -0
  96. package/es/class/area.js +145 -0
  97. package/es/class/export.js +24 -0
  98. package/es/class/group.js +440 -0
  99. package/es/class/guide.js +62 -0
  100. package/es/class/hole.js +929 -0
  101. package/es/class/item.js +1883 -0
  102. package/es/class/layer.js +667 -0
  103. package/es/class/line.js +1180 -0
  104. package/es/class/project.js +793 -0
  105. package/es/class/vertex.js +202 -0
  106. package/es/components/content.js +107 -0
  107. package/es/components/disclaimer/disclaimer.js +97 -0
  108. package/es/components/export.js +9 -0
  109. package/es/components/style/button.js +113 -0
  110. package/es/components/style/cancel-button.js +22 -0
  111. package/es/components/style/content-container.js +33 -0
  112. package/es/components/style/content-title.js +29 -0
  113. package/es/components/style/delete-button.js +25 -0
  114. package/es/components/style/export.js +31 -0
  115. package/es/components/style/form-block.js +24 -0
  116. package/es/components/style/form-color-input.js +27 -0
  117. package/es/components/style/form-label.js +26 -0
  118. package/es/components/style/form-number-input.js +213 -0
  119. package/es/components/style/form-number-input_2.js +206 -0
  120. package/es/components/style/form-select.js +68 -0
  121. package/es/components/style/form-slider.js +61 -0
  122. package/es/components/style/form-submit-button.js +26 -0
  123. package/es/components/style/form-text-input.js +95 -0
  124. package/es/components/viewer2d/area.js +81 -0
  125. package/es/components/viewer2d/export.js +31 -0
  126. package/es/components/viewer2d/grids/grid-horizontal-streak.js +37 -0
  127. package/es/components/viewer2d/grids/grid-streak.js +37 -0
  128. package/es/components/viewer2d/grids/grid-vertical-streak.js +37 -0
  129. package/es/components/viewer2d/grids/grids.js +35 -0
  130. package/es/components/viewer2d/group.js +53 -0
  131. package/es/components/viewer2d/item.js +513 -0
  132. package/es/components/viewer2d/layer.js +164 -0
  133. package/es/components/viewer2d/line.js +882 -0
  134. package/es/components/viewer2d/ruler.js +100 -0
  135. package/es/components/viewer2d/rulerDist.js +146 -0
  136. package/es/components/viewer2d/rulerX.js +151 -0
  137. package/es/components/viewer2d/rulerY.js +153 -0
  138. package/es/components/viewer2d/scene.js +140 -0
  139. package/es/components/viewer2d/snap.js +74 -0
  140. package/es/components/viewer2d/state.js +78 -0
  141. package/es/components/viewer2d/utils.js +198 -0
  142. package/es/components/viewer2d/vertex.js +65 -0
  143. package/es/components/viewer2d/viewer2d.js +1398 -0
  144. package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +2592 -0
  145. package/es/components/viewer3d/dcm.js +401 -0
  146. package/es/components/viewer3d/fbm.js +414 -0
  147. package/es/components/viewer3d/front3D.js +66 -0
  148. package/es/components/viewer3d/grid-creator.js +25 -0
  149. package/es/components/viewer3d/grids/grid-horizontal-streak.js +36 -0
  150. package/es/components/viewer3d/grids/grid-streak.js +27 -0
  151. package/es/components/viewer3d/grids/grid-vertical-streak.js +36 -0
  152. package/es/components/viewer3d/libs/first-person-controls.js +67 -0
  153. package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +1281 -0
  154. package/es/components/viewer3d/libs/mtl-loader.js +357 -0
  155. package/es/components/viewer3d/libs/obj-loader.js +462 -0
  156. package/es/components/viewer3d/libs/orbit-controls.js +699 -0
  157. package/es/components/viewer3d/libs/pointer-lock-controls.js +46 -0
  158. package/es/components/viewer3d/lrm.js +305 -0
  159. package/es/components/viewer3d/model.js +708 -0
  160. package/es/components/viewer3d/pointer-lock-navigation.js +115 -0
  161. package/es/components/viewer3d/ruler-utils/itemRect.js +61 -0
  162. package/es/components/viewer3d/ruler-utils/layer3D.js +495 -0
  163. package/es/components/viewer3d/ruler-utils/ruler3D.js +227 -0
  164. package/es/components/viewer3d/ruler-utils/scene3D.js +60 -0
  165. package/es/components/viewer3d/ruler-utils/state3D.js +18 -0
  166. package/es/components/viewer3d/scene-creator.js +3608 -0
  167. package/es/components/viewer3d/three-memory-cleaner.js +51 -0
  168. package/es/components/viewer3d/viewer3d-first-person.js +315 -0
  169. package/es/components/viewer3d/viewer3d.js +2527 -0
  170. package/es/constants.js +636 -0
  171. package/es/index.js +16 -0
  172. package/es/models.js +510 -0
  173. package/es/plugins/SVGLoader.js +1412 -0
  174. package/es/plugins/autosave.js +33 -0
  175. package/es/plugins/console-debugger.js +37 -0
  176. package/es/plugins/export.js +9 -0
  177. package/es/plugins/keyboard.js +101 -0
  178. package/es/reducers/areas-reducer.js +12 -0
  179. package/es/reducers/export.js +25 -0
  180. package/es/reducers/groups-reducer.js +38 -0
  181. package/es/reducers/holes-reducer.js +62 -0
  182. package/es/reducers/items-reducer.js +140 -0
  183. package/es/reducers/lines-reducer.js +45 -0
  184. package/es/reducers/project-reducer.js +129 -0
  185. package/es/reducers/reducer.js +19 -0
  186. package/es/reducers/scene-reducer.js +28 -0
  187. package/es/reducers/user-reducer.js +40 -0
  188. package/es/reducers/vertices-reducer.js +19 -0
  189. package/es/reducers/viewer2d-reducer.js +75 -0
  190. package/es/reducers/viewer3d-reducer.js +56 -0
  191. package/es/shared-style.js +66 -0
  192. package/es/styles/export.js +5 -0
  193. package/es/styles/tabs.css +40 -0
  194. package/es/translator/en.js +104 -0
  195. package/es/translator/it.js +79 -0
  196. package/es/translator/ru.js +79 -0
  197. package/es/translator/translator.js +84 -0
  198. package/es/utils/browser.js +33 -0
  199. package/es/utils/email-validator.js +4 -0
  200. package/es/utils/export.js +25 -0
  201. package/es/utils/geometry.js +2420 -0
  202. package/es/utils/get-edges-of-subgraphs.js +27 -0
  203. package/es/utils/graph-cycles.js +237 -0
  204. package/es/utils/graph-inner-cycles.js +46 -0
  205. package/es/utils/graph.js +150 -0
  206. package/es/utils/helper.js +268 -0
  207. package/es/utils/history.js +29 -0
  208. package/es/utils/id-broker.js +19 -0
  209. package/es/utils/logger.js +8 -0
  210. package/es/utils/math.js +50 -0
  211. package/es/utils/molding.js +871 -0
  212. package/es/utils/name-generator.js +18 -0
  213. package/es/utils/objects-utils.js +50 -0
  214. package/es/utils/phone-validator.js +4 -0
  215. package/es/utils/process-black-list.js +18 -0
  216. package/es/utils/react-if.js +18 -0
  217. package/es/utils/snap-scene.js +99 -0
  218. package/es/utils/snap.js +237 -0
  219. package/es/utils/summarizeCart.js +24 -0
  220. package/es/utils/threeCSG.es6.js +498 -0
  221. package/es/version.js +2 -0
  222. package/lib/catalog/properties/property-string.js +55 -0
  223. package/lib/catalog/properties/property-toggle.js +46 -0
  224. package/lib/catalog/properties/shared-property-style.js +20 -0
  225. package/lib/catalog/utils/FuseUtils.js +88 -0
  226. package/lib/catalog/utils/exporter.js +155 -0
  227. package/lib/catalog/utils/geom-utils.js +205 -0
  228. package/lib/catalog/utils/item-loader.js +1533 -0
  229. package/lib/catalog/utils/load-obj.js +99 -0
  230. package/lib/catalog/utils/mtl-loader.js +363 -0
  231. package/lib/catalog/utils/obj-loader.js +482 -0
  232. package/lib/class/FuseUtils.js +88 -0
  233. package/lib/class/area.js +150 -0
  234. package/lib/class/export.js +96 -0
  235. package/lib/class/group.js +445 -0
  236. package/lib/class/guide.js +67 -0
  237. package/lib/class/hole.js +934 -0
  238. package/lib/class/item.js +1889 -0
  239. package/lib/class/layer.js +672 -0
  240. package/lib/class/line.js +1186 -0
  241. package/lib/class/project.js +799 -0
  242. package/lib/class/vertex.js +207 -0
  243. package/lib/components/content.js +116 -0
  244. package/lib/components/disclaimer/disclaimer.js +105 -0
  245. package/lib/components/export.js +33 -0
  246. package/lib/components/style/button.js +120 -0
  247. package/lib/components/style/cancel-button.js +29 -0
  248. package/lib/components/style/content-container.js +40 -0
  249. package/lib/components/style/content-title.js +37 -0
  250. package/lib/components/style/delete-button.js +34 -0
  251. package/lib/components/style/export.js +121 -0
  252. package/lib/components/style/form-block.js +31 -0
  253. package/lib/components/style/form-color-input.js +34 -0
  254. package/lib/components/style/form-label.js +33 -0
  255. package/lib/components/style/form-number-input.js +220 -0
  256. package/lib/components/style/form-number-input_2.js +213 -0
  257. package/lib/components/style/form-select.js +75 -0
  258. package/lib/components/style/form-slider.js +68 -0
  259. package/lib/components/style/form-submit-button.js +35 -0
  260. package/lib/components/style/form-text-input.js +101 -0
  261. package/lib/components/viewer2d/area.js +88 -0
  262. package/lib/components/viewer2d/export.js +121 -0
  263. package/lib/components/viewer2d/grids/grid-horizontal-streak.js +44 -0
  264. package/lib/components/viewer2d/grids/grid-streak.js +44 -0
  265. package/lib/components/viewer2d/grids/grid-vertical-streak.js +44 -0
  266. package/lib/components/viewer2d/grids/grids.js +44 -0
  267. package/lib/components/viewer2d/group.js +62 -0
  268. package/lib/components/viewer2d/item.js +521 -0
  269. package/lib/components/viewer2d/layer.js +171 -0
  270. package/lib/components/viewer2d/line.js +892 -0
  271. package/lib/components/viewer2d/ruler.js +107 -0
  272. package/lib/components/viewer2d/rulerDist.js +153 -0
  273. package/lib/components/viewer2d/rulerX.js +158 -0
  274. package/lib/components/viewer2d/rulerY.js +160 -0
  275. package/lib/components/viewer2d/scene.js +147 -0
  276. package/lib/components/viewer2d/snap.js +83 -0
  277. package/lib/components/viewer2d/state.js +87 -0
  278. package/lib/components/viewer2d/utils.js +210 -0
  279. package/lib/components/viewer2d/vertex.js +74 -0
  280. package/lib/components/viewer2d/viewer2d.js +1405 -0
  281. package/lib/components/viewer3d/camera-controls-module/camera-controls.module.js +2597 -0
  282. package/lib/components/viewer3d/dcm.js +407 -0
  283. package/lib/components/viewer3d/fbm.js +420 -0
  284. package/lib/components/viewer3d/front3D.js +75 -0
  285. package/lib/components/viewer3d/grid-creator.js +34 -0
  286. package/lib/components/viewer3d/grids/grid-horizontal-streak.js +44 -0
  287. package/lib/components/viewer3d/grids/grid-streak.js +35 -0
  288. package/lib/components/viewer3d/grids/grid-vertical-streak.js +44 -0
  289. package/lib/components/viewer3d/libs/first-person-controls.js +74 -0
  290. package/lib/components/viewer3d/libs/helvetiker_regular.typeface.js +1287 -0
  291. package/lib/components/viewer3d/libs/mtl-loader.js +363 -0
  292. package/lib/components/viewer3d/libs/obj-loader.js +468 -0
  293. package/lib/components/viewer3d/libs/orbit-controls.js +705 -0
  294. package/lib/components/viewer3d/libs/pointer-lock-controls.js +52 -0
  295. package/lib/components/viewer3d/lrm.js +311 -0
  296. package/lib/components/viewer3d/model.js +714 -0
  297. package/lib/components/viewer3d/pointer-lock-navigation.js +122 -0
  298. package/lib/components/viewer3d/ruler-utils/itemRect.js +68 -0
  299. package/lib/components/viewer3d/ruler-utils/layer3D.js +502 -0
  300. package/lib/components/viewer3d/ruler-utils/ruler3D.js +234 -0
  301. package/lib/components/viewer3d/ruler-utils/scene3D.js +68 -0
  302. package/lib/components/viewer3d/ruler-utils/state3D.js +25 -0
  303. package/lib/components/viewer3d/scene-creator.js +3642 -0
  304. package/lib/components/viewer3d/three-memory-cleaner.js +60 -0
  305. package/lib/components/viewer3d/viewer3d-first-person.js +320 -0
  306. package/lib/components/viewer3d/viewer3d.js +2532 -0
  307. package/lib/constants.js +645 -0
  308. package/lib/index.js +96 -0
  309. package/lib/models.js +517 -0
  310. package/lib/plugins/SVGLoader.js +1417 -0
  311. package/lib/plugins/autosave.js +39 -0
  312. package/lib/plugins/console-debugger.js +44 -0
  313. package/lib/plugins/export.js +33 -0
  314. package/lib/plugins/keyboard.js +107 -0
  315. package/lib/reducers/areas-reducer.js +18 -0
  316. package/lib/reducers/export.js +97 -0
  317. package/lib/reducers/groups-reducer.js +44 -0
  318. package/lib/reducers/holes-reducer.js +68 -0
  319. package/lib/reducers/items-reducer.js +146 -0
  320. package/lib/reducers/lines-reducer.js +51 -0
  321. package/lib/reducers/project-reducer.js +135 -0
  322. package/lib/reducers/reducer.js +26 -0
  323. package/lib/reducers/scene-reducer.js +34 -0
  324. package/lib/reducers/user-reducer.js +46 -0
  325. package/lib/reducers/vertices-reducer.js +25 -0
  326. package/lib/reducers/viewer2d-reducer.js +82 -0
  327. package/lib/reducers/viewer3d-reducer.js +63 -0
  328. package/lib/shared-style.js +72 -0
  329. package/lib/styles/export.js +13 -0
  330. package/lib/translator/en.js +110 -0
  331. package/lib/translator/it.js +85 -0
  332. package/lib/translator/ru.js +85 -0
  333. package/lib/translator/translator.js +90 -0
  334. package/lib/utils/browser.js +40 -0
  335. package/lib/utils/email-validator.js +10 -0
  336. package/lib/utils/export.js +56 -0
  337. package/lib/utils/geometry.js +2516 -0
  338. package/lib/utils/get-edges-of-subgraphs.js +34 -0
  339. package/lib/utils/graph-cycles.js +240 -0
  340. package/lib/utils/graph-inner-cycles.js +54 -0
  341. package/lib/utils/graph.js +157 -0
  342. package/lib/utils/helper.js +291 -0
  343. package/lib/utils/history.js +36 -0
  344. package/lib/utils/id-broker.js +25 -0
  345. package/lib/utils/logger.js +14 -0
  346. package/lib/utils/math.js +57 -0
  347. package/lib/utils/molding.js +895 -0
  348. package/lib/utils/name-generator.js +23 -0
  349. package/lib/utils/objects-utils.js +60 -0
  350. package/lib/utils/phone-validator.js +10 -0
  351. package/lib/utils/process-black-list.js +24 -0
  352. package/lib/utils/react-if.js +24 -0
  353. package/lib/utils/snap-scene.js +105 -0
  354. package/lib/utils/snap.js +249 -0
  355. package/lib/utils/summarizeCart.js +30 -0
  356. package/lib/utils/threeCSG.es6.js +503 -0
  357. package/lib/version.js +8 -0
  358. package/package.json +3 -3
@@ -0,0 +1,227 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ import React from 'react';
8
+ import { TEXT_COLOR_NEUTRAL_0, TEXT_COLOR_NEUTRAL_6 } from "../../../constants";
9
+ export default function Ruler3D(_ref) {
10
+ var layer = _ref.layer,
11
+ line = _ref.line,
12
+ viewScale = _ref.viewScale,
13
+ downloadFlag = _ref.downloadFlag;
14
+ var diagonalPointValue = 5 * viewScale;
15
+ var STYLE = {
16
+ stroke: TEXT_COLOR_NEUTRAL_6,
17
+ strokeWidth: viewScale,
18
+ opacity: '0.6'
19
+ };
20
+ var STYLE_TEXT = {
21
+ textAnchor: 'middle',
22
+ fontSize: downloadFlag ? 32 * viewScale : 16 * viewScale,
23
+ // fontWeight: "bold",
24
+ pointerEvents: 'none',
25
+ fill: TEXT_COLOR_NEUTRAL_6,
26
+ //http://stackoverflow.com/questions/826782/how-to-disable-text-selection-highlighting-using-css
27
+ WebkitTouchCallout: 'none' /* iOS Safari */,
28
+ WebkitUserSelect: 'none' /* Chrome/Safari/Opera */,
29
+ MozUserSelect: 'none' /* Firefox */,
30
+ MsUserSelect: 'none' /* Internet Explorer/Edge */,
31
+ userSelect: 'none'
32
+ };
33
+ var getDistance = function getDistance(v0, v1) {
34
+ return Math.sqrt((v0.x - v1.x) * (v0.x - v1.x) + (v0.y - v1.y) * (v0.y - v1.y));
35
+ };
36
+ var v0 = line.v0,
37
+ v1 = line.v1,
38
+ space = line.space;
39
+ var text = line.text.endsWith('.0') ? line.text.slice(0, line.text.length - 2) : line.text;
40
+ var length = getDistance(v0, v1);
41
+ var textLength = (text.length + layer.unit.length) * 18 * viewScale;
42
+ if (v0.y === v1.y) {
43
+ if (v0.x < v1.x) {
44
+ return /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("line", {
45
+ x1: v0.x,
46
+ y1: v0.y,
47
+ x2: v0.x,
48
+ y2: v0.y - space,
49
+ style: STYLE
50
+ }), /*#__PURE__*/React.createElement("g", {
51
+ transform: "translate(".concat(v0.x, ", ").concat(v0.y - space, ")")
52
+ }, /*#__PURE__*/React.createElement("line", {
53
+ x1: -diagonalPointValue,
54
+ y1: -diagonalPointValue,
55
+ x2: diagonalPointValue,
56
+ y2: diagonalPointValue,
57
+ style: STYLE
58
+ }), /*#__PURE__*/React.createElement("line", {
59
+ x1: 0,
60
+ y1: 0,
61
+ x2: textLength > length ? 0 : (length - textLength) / 2,
62
+ y2: 0,
63
+ style: STYLE
64
+ }), /*#__PURE__*/React.createElement("text", {
65
+ x: length / 2,
66
+ y: "3",
67
+ style: STYLE_TEXT
68
+ }, text, layer.unit === 'in' ? '"' : layer.unit), /*#__PURE__*/React.createElement("line", {
69
+ x1: length,
70
+ y1: 0,
71
+ x2: textLength > length ? length : (length + textLength) / 2,
72
+ y2: 0,
73
+ style: STYLE
74
+ }), /*#__PURE__*/React.createElement("line", {
75
+ x1: length - diagonalPointValue,
76
+ y1: -diagonalPointValue,
77
+ x2: length + diagonalPointValue,
78
+ y2: diagonalPointValue,
79
+ style: STYLE
80
+ })), /*#__PURE__*/React.createElement("line", {
81
+ x1: v1.x,
82
+ y1: v1.y,
83
+ x2: v1.x,
84
+ y2: v1.y - space,
85
+ style: STYLE
86
+ }));
87
+ } else {
88
+ return /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("line", {
89
+ x1: v0.x,
90
+ y1: v0.y,
91
+ x2: v0.x,
92
+ y2: v0.y + space,
93
+ style: STYLE
94
+ }), /*#__PURE__*/React.createElement("g", {
95
+ transform: "translate(".concat(v0.x, ", ").concat(v0.y + space, ")")
96
+ }, /*#__PURE__*/React.createElement("line", {
97
+ x1: -diagonalPointValue,
98
+ y1: -diagonalPointValue,
99
+ x2: diagonalPointValue,
100
+ y2: diagonalPointValue,
101
+ style: STYLE
102
+ }), /*#__PURE__*/React.createElement("line", {
103
+ x1: 0,
104
+ y1: 0,
105
+ x2: textLength > length ? 0 : -(length - textLength) / 2,
106
+ y2: 0,
107
+ style: STYLE
108
+ }), /*#__PURE__*/React.createElement("text", {
109
+ x: -length / 2,
110
+ y: "3",
111
+ style: STYLE_TEXT
112
+ }, text, layer.unit === 'in' ? '"' : layer.unit), /*#__PURE__*/React.createElement("line", {
113
+ x1: -length,
114
+ y1: 0,
115
+ x2: textLength > length ? -length : -(length + textLength) / 2,
116
+ y2: 0,
117
+ style: STYLE
118
+ }), /*#__PURE__*/React.createElement("line", {
119
+ x1: -length - diagonalPointValue,
120
+ y1: -diagonalPointValue,
121
+ x2: -length + diagonalPointValue,
122
+ y2: diagonalPointValue,
123
+ style: STYLE
124
+ })), /*#__PURE__*/React.createElement("line", {
125
+ x1: v1.x,
126
+ y1: v1.y,
127
+ x2: v1.x,
128
+ y2: v1.y + space,
129
+ style: STYLE
130
+ }));
131
+ }
132
+ } else if (v0.x = v1.x) {
133
+ if (v0.y < v1.y) {
134
+ return /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("line", {
135
+ x1: v0.x,
136
+ y1: v0.y,
137
+ x2: v0.x + space,
138
+ y2: v0.y,
139
+ style: STYLE
140
+ }), /*#__PURE__*/React.createElement("g", {
141
+ transform: "translate(".concat(v0.x + space, ", ").concat(v0.y, ")")
142
+ }, /*#__PURE__*/React.createElement("line", {
143
+ x1: -diagonalPointValue,
144
+ y1: -diagonalPointValue,
145
+ x2: diagonalPointValue,
146
+ y2: diagonalPointValue,
147
+ style: STYLE
148
+ }), /*#__PURE__*/React.createElement("line", {
149
+ x1: 0,
150
+ y1: 0,
151
+ x2: 0,
152
+ y2: textLength > length ? 0 : (length - textLength) / 2,
153
+ style: STYLE
154
+ }), /*#__PURE__*/React.createElement("text", {
155
+ x: length / 2,
156
+ y: 0,
157
+ style: _objectSpread(_objectSpread({}, STYLE_TEXT), {}, {
158
+ transform: 'rotate(90deg)'
159
+ })
160
+ }, text, layer.unit === 'in' ? '"' : layer.unit), /*#__PURE__*/React.createElement("line", {
161
+ x1: 0,
162
+ y1: length,
163
+ x2: 0,
164
+ y2: textLength > length ? length : (length + textLength) / 2,
165
+ style: STYLE
166
+ }), /*#__PURE__*/React.createElement("line", {
167
+ x1: -diagonalPointValue,
168
+ y1: length - diagonalPointValue,
169
+ x2: diagonalPointValue,
170
+ y2: length + diagonalPointValue,
171
+ style: STYLE
172
+ })), /*#__PURE__*/React.createElement("line", {
173
+ x1: v1.x,
174
+ y1: v1.y,
175
+ x2: v1.x + space,
176
+ y2: v1.y,
177
+ style: STYLE
178
+ }));
179
+ } else {
180
+ return /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("line", {
181
+ x1: v0.x,
182
+ y1: v0.y,
183
+ x2: v0.x - space,
184
+ y2: v0.y,
185
+ style: STYLE
186
+ }), /*#__PURE__*/React.createElement("g", {
187
+ transform: "translate(".concat(v0.x - space, ", ").concat(v0.y, ")")
188
+ }, /*#__PURE__*/React.createElement("line", {
189
+ x1: -diagonalPointValue,
190
+ y1: -diagonalPointValue,
191
+ x2: diagonalPointValue,
192
+ y2: diagonalPointValue,
193
+ style: STYLE
194
+ }), /*#__PURE__*/React.createElement("line", {
195
+ x1: 0,
196
+ y1: 0,
197
+ x2: 0,
198
+ y2: textLength > length ? 0 : -(length - textLength) / 2,
199
+ style: STYLE
200
+ }), /*#__PURE__*/React.createElement("text", {
201
+ x: -length / 2,
202
+ y: 0,
203
+ style: _objectSpread(_objectSpread({}, STYLE_TEXT), {}, {
204
+ transform: 'rotate(90deg)'
205
+ })
206
+ }, text, layer.unit === 'in' ? '"' : layer.unit), /*#__PURE__*/React.createElement("line", {
207
+ x1: 0,
208
+ y1: -length,
209
+ x2: 0,
210
+ y2: textLength > length ? -length : -(length + textLength) / 2,
211
+ style: STYLE
212
+ }), /*#__PURE__*/React.createElement("line", {
213
+ x1: -diagonalPointValue,
214
+ y1: -length - diagonalPointValue,
215
+ x2: diagonalPointValue,
216
+ y2: -length + diagonalPointValue,
217
+ style: STYLE
218
+ })), /*#__PURE__*/React.createElement("line", {
219
+ x1: v1.x,
220
+ y1: v1.y,
221
+ x2: v1.x - space,
222
+ y2: v1.y,
223
+ style: STYLE
224
+ }));
225
+ }
226
+ } else return null;
227
+ }
@@ -0,0 +1,60 @@
1
+ import React from 'react';
2
+ import { verticesDistance } from "../../../utils/geometry";
3
+ import convert from 'convert-units';
4
+ import Layer3D from "./layer3D";
5
+ export function compareVertices(v0, v1) {
6
+ return v0.x === v1.x ? v0.y - v1.y : v0.x - v1.x;
7
+ }
8
+ export default function Scene3D(_ref) {
9
+ var scene = _ref.scene,
10
+ catalog = _ref.catalog,
11
+ width = _ref.width,
12
+ height = _ref.height,
13
+ mode = _ref.mode,
14
+ downloadFlag = _ref.downloadFlag;
15
+ var layers = scene.layers;
16
+ console.log(layers.toJS());
17
+ var selectedLayer = layers.get(scene.selectedLayer);
18
+ var ceilHeight = selectedLayer.ceilHeight;
19
+ var selectedLine = selectedLayer.lines.get(selectedLayer.selected.lines.toJS()[0]);
20
+ var vertex0 = selectedLayer.vertices.get(selectedLine.vertices.get(0));
21
+ var vertex1 = selectedLayer.vertices.get(selectedLine.vertices.get(1));
22
+ var lineLength = convert(verticesDistance(vertex0, vertex1)).from(scene.unit).to(selectedLayer.unit);
23
+ var multi = downloadFlag ? 0.85 : 0.6;
24
+ var scale = Math.min(width * multi / lineLength, height * multi / ceilHeight);
25
+ var frontRect = {
26
+ width: lineLength * scale,
27
+ height: ceilHeight * scale
28
+ };
29
+ var i = 0,
30
+ grids = [];
31
+ var viewScale = Math.min(width / window.innerWidth, height / window.innerHeight);
32
+ for (var x = -width / 2; x <= width / 2; x = x + 30 * viewScale) {
33
+ for (var y = -height / 2; y <= height / 2; y = y + 30 * viewScale) {
34
+ if (Math.abs(x) > frontRect.width / 2 || Math.abs(y) > frontRect.height / 2) {
35
+ grids.push(/*#__PURE__*/React.createElement("circle", {
36
+ key: "grid_".concat(i),
37
+ cx: x,
38
+ cy: y,
39
+ r: 2 * viewScale,
40
+ fill: "#bbb"
41
+ }));
42
+ i++;
43
+ }
44
+ }
45
+ }
46
+ return /*#__PURE__*/React.createElement("g", null, grids, /*#__PURE__*/React.createElement(Layer3D, {
47
+ key: selectedLayer.id,
48
+ layer: selectedLayer,
49
+ frontRect: frontRect,
50
+ lineLength: lineLength,
51
+ ceilHeight: ceilHeight.toFixed(0),
52
+ catalog: catalog,
53
+ scene: scene,
54
+ scale: scale,
55
+ mode: mode,
56
+ line: selectedLine,
57
+ viewScale: viewScale,
58
+ downloadFlag: downloadFlag
59
+ }));
60
+ }
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import Scene3D from "./scene3D";
3
+ export default function State3D(_ref) {
4
+ var state = _ref.state,
5
+ catalog = _ref.catalog,
6
+ width = _ref.width,
7
+ height = _ref.height,
8
+ downloadFlag = _ref.downloadFlag;
9
+ var scene = state.scene;
10
+ return /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement(Scene3D, {
11
+ scene: scene,
12
+ catalog: catalog,
13
+ width: width,
14
+ height: height,
15
+ mode: state.get('mode'),
16
+ downloadFlag: downloadFlag
17
+ }));
18
+ }