kitchen-simulator 5.0.0-test.4 → 5.0.0-test.5

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 (406) hide show
  1. package/package.json +1 -2
  2. package/src/@history.js +0 -3
  3. package/src/AppContext.js +0 -5
  4. package/src/KitchenConfigurator.jsx +0 -1517
  5. package/src/KitchenConfiguratorApp.jsx +0 -443
  6. package/src/actions/area-actions.js +0 -15
  7. package/src/actions/export.js +0 -38
  8. package/src/actions/groups-actions.js +0 -102
  9. package/src/actions/holes-actions.js +0 -152
  10. package/src/actions/items-actions.js +0 -393
  11. package/src/actions/lines-actions.js +0 -103
  12. package/src/actions/project-actions.js +0 -391
  13. package/src/actions/scene-actions.js +0 -44
  14. package/src/actions/user-actions.js +0 -75
  15. package/src/actions/vertices-actions.js +0 -34
  16. package/src/actions/viewer2d-actions.js +0 -79
  17. package/src/actions/viewer3d-actions.js +0 -32
  18. package/src/catalog/areas/area/planner-element.jsx +0 -43
  19. package/src/catalog/areas/area/textures/ceramic-tile.jpg +0 -0
  20. package/src/catalog/areas/area/textures/grass.jpg +0 -0
  21. package/src/catalog/areas/area/textures/parquet.jpg +0 -0
  22. package/src/catalog/areas/area/textures/strand-porcelain.jpg +0 -0
  23. package/src/catalog/areas/area/textures/tile1.jpg +0 -0
  24. package/src/catalog/back.png +0 -0
  25. package/src/catalog/catalog.js +0 -258
  26. package/src/catalog/doors.png +0 -0
  27. package/src/catalog/doorways.png +0 -0
  28. package/src/catalog/envMap/nx.hdr +0 -0
  29. package/src/catalog/envMap/ny.hdr +0 -0
  30. package/src/catalog/envMap/nz.hdr +0 -0
  31. package/src/catalog/envMap/px.hdr +0 -0
  32. package/src/catalog/envMap/py.hdr +0 -0
  33. package/src/catalog/envMap/pz.hdr +0 -0
  34. package/src/catalog/factories/area-factory-3d.js +0 -252
  35. package/src/catalog/factories/area-factory.jsx +0 -102
  36. package/src/catalog/factories/export.js +0 -9
  37. package/src/catalog/factories/wall-factory-3d.js +0 -296
  38. package/src/catalog/factories/wall-factory.jsx +0 -321
  39. package/src/catalog/holes/door-closet/planner-element.jsx +0 -251
  40. package/src/catalog/holes/door-double/door_double.png +0 -0
  41. package/src/catalog/holes/door-double/planner-element.jsx +0 -391
  42. package/src/catalog/holes/door-exterior/planner-element.jsx +0 -245
  43. package/src/catalog/holes/door-interior/planner-element.jsx +0 -256
  44. package/src/catalog/holes/door-panic/panicDoor.png +0 -0
  45. package/src/catalog/holes/door-panic/planner-element.jsx +0 -594
  46. package/src/catalog/holes/door-panic-double/panicDoorDouble.png +0 -0
  47. package/src/catalog/holes/door-panic-double/planner-element.jsx +0 -574
  48. package/src/catalog/holes/door-sliding/planner-element.jsx +0 -256
  49. package/src/catalog/holes/doorway-framed/planner-element.jsx +0 -169
  50. package/src/catalog/holes/doorway-frameless/planner-element.jsx +0 -116
  51. package/src/catalog/holes/gate/gate.jpg +0 -0
  52. package/src/catalog/holes/window-clear/planner-element.jsx +0 -181
  53. package/src/catalog/holes/window-clear/texture.png +0 -0
  54. package/src/catalog/holes/window-cross/planner-element.jsx +0 -180
  55. package/src/catalog/holes/window-cross/texture.png +0 -0
  56. package/src/catalog/holes/window-double-hung/planner-element.jsx +0 -366
  57. package/src/catalog/holes/window-double-hung/texture.png +0 -0
  58. package/src/catalog/holes/window-vertical/planner-element.jsx +0 -290
  59. package/src/catalog/holes/window-vertical/texture.png +0 -0
  60. package/src/catalog/lines/wall/planner-element.jsx +0 -73
  61. package/src/catalog/lines/wall/textures/bricks-normal.jpg +0 -0
  62. package/src/catalog/lines/wall/textures/bricks-normal2.jpg +0 -0
  63. package/src/catalog/lines/wall/textures/bricks.jpg +0 -0
  64. package/src/catalog/lines/wall/textures/bricks2.jpg +0 -0
  65. package/src/catalog/lines/wall/textures/bricks3.jpg +0 -0
  66. package/src/catalog/lines/wall/textures/morden-normal.jpg +0 -0
  67. package/src/catalog/lines/wall/textures/morden.jpg +0 -0
  68. package/src/catalog/lines/wall/textures/painted-normal.jpg +0 -0
  69. package/src/catalog/lines/wall/textures/painted.jpg +0 -0
  70. package/src/catalog/lines/wall/textures/plaster-normal.jpg +0 -0
  71. package/src/catalog/lines/wall/textures/plaster.jpg +0 -0
  72. package/src/catalog/lines/wall/wall.png +0 -0
  73. package/src/catalog/molding/molding-dcm/planner-element.jsx +0 -35
  74. package/src/catalog/molding/molding-dcm/texture.png +0 -0
  75. package/src/catalog/molding/molding-fbm/planner-element.jsx +0 -35
  76. package/src/catalog/molding/molding-fbm/texture.png +0 -0
  77. package/src/catalog/molding/molding-lrm/planner-element.jsx +0 -35
  78. package/src/catalog/molding/molding-lrm/texture.png +0 -0
  79. package/src/catalog/properties/export.js +0 -33
  80. package/src/catalog/properties/property-checkbox.jsx +0 -123
  81. package/src/catalog/properties/property-color.jsx +0 -52
  82. package/src/catalog/properties/property-enum.jsx +0 -87
  83. package/src/catalog/properties/property-hidden.jsx +0 -22
  84. package/src/catalog/properties/property-lenght-measure.jsx +0 -113
  85. package/src/catalog/properties/property-length-measure.jsx +0 -129
  86. package/src/catalog/properties/property-length-measure_hole.jsx +0 -110
  87. package/src/catalog/properties/property-number.jsx +0 -63
  88. package/src/catalog/properties/property-read-only.jsx +0 -37
  89. package/src/catalog/properties/property-string.jsx +0 -59
  90. package/src/catalog/properties/property-toggle.jsx +0 -51
  91. package/src/catalog/properties/shared-property-style.js +0 -13
  92. package/src/catalog/utils/FuseUtils.js +0 -61
  93. package/src/catalog/utils/exporter.js +0 -173
  94. package/src/catalog/utils/geom-utils.js +0 -301
  95. package/src/catalog/utils/item-loader.jsx +0 -2122
  96. package/src/catalog/utils/load-obj.js +0 -113
  97. package/src/catalog/utils/mtl-loader.js +0 -462
  98. package/src/catalog/utils/obj-loader.js +0 -544
  99. package/src/catalog/windows.png +0 -0
  100. package/src/class/FuseUtils.js +0 -61
  101. package/src/class/area.js +0 -159
  102. package/src/class/export.js +0 -37
  103. package/src/class/group.js +0 -565
  104. package/src/class/guide.js +0 -44
  105. package/src/class/hole.js +0 -1359
  106. package/src/class/item.js +0 -2050
  107. package/src/class/layer.js +0 -926
  108. package/src/class/line.js +0 -1780
  109. package/src/class/project.js +0 -875
  110. package/src/class/vertex.js +0 -409
  111. package/src/components/atoms/Snackbar/index.jsx +0 -43
  112. package/src/components/atoms/radio-button/index.jsx +0 -20
  113. package/src/components/atoms/radio-button/styles.js +0 -56
  114. package/src/components/button/MainButton.jsx +0 -157
  115. package/src/components/button/ToggleMeasureButton.jsx +0 -65
  116. package/src/components/catalog-view/catalog-breadcrumb.jsx +0 -53
  117. package/src/components/catalog-view/catalog-item.jsx +0 -229
  118. package/src/components/catalog-view/catalog-list.jsx +0 -173
  119. package/src/components/catalog-view/catalog-page-item.jsx +0 -110
  120. package/src/components/catalog-view/catalog-turn-back-page-item.jsx +0 -80
  121. package/src/components/configurator/custom-configurator.jsx +0 -77
  122. package/src/components/configurator/project-configurator.jsx +0 -120
  123. package/src/components/content.jsx +0 -136
  124. package/src/components/export.js +0 -36
  125. package/src/components/firstsetting/button/styles.js +0 -223
  126. package/src/components/firstsetting/export.js +0 -9
  127. package/src/components/firstsetting/firstsetting-content-button.jsx +0 -198
  128. package/src/components/firstsetting/firstsetting-toggle-button.jsx +0 -101
  129. package/src/components/firstsetting/firstsetting.jsx +0 -814
  130. package/src/components/footerbar/button/ControlButton.jsx +0 -43
  131. package/src/components/footerbar/button/DirectionButton.jsx +0 -54
  132. package/src/components/footerbar/button/DirectionPanSpinButton.jsx +0 -36
  133. package/src/components/footerbar/button/ToggleButton.jsx +0 -58
  134. package/src/components/footerbar/button/ToggleConvertButton.jsx +0 -48
  135. package/src/components/footerbar/button/ToggleMeasureButton.jsx +0 -33
  136. package/src/components/footerbar/button/styles.js +0 -217
  137. package/src/components/footerbar/export.js +0 -9
  138. package/src/components/footerbar/footer-content-button.jsx +0 -198
  139. package/src/components/footerbar/footer-toggle-button.jsx +0 -101
  140. package/src/components/footerbar/footerbar.jsx +0 -1103
  141. package/src/components/footerbar/styles.js +0 -263
  142. package/src/components/header/button/MenuButton.jsx +0 -46
  143. package/src/components/header/button/SaveButton.jsx +0 -54
  144. package/src/components/header/button/styles.js +0 -181
  145. package/src/components/header/export.js +0 -5
  146. package/src/components/header/header.jsx +0 -631
  147. package/src/components/header/header.style.css +0 -47
  148. package/src/components/header/styles.js +0 -320
  149. package/src/components/login/Login.js +0 -77
  150. package/src/components/login/LoginForm/index.js +0 -108
  151. package/src/components/login/Register.js +0 -83
  152. package/src/components/login/RegisterForm/index.js +0 -171
  153. package/src/components/login/jwtService.js +0 -201
  154. package/src/components/login/style.css +0 -158
  155. package/src/components/login/style.scss +0 -260
  156. package/src/components/molecules/slider/index.jsx +0 -15
  157. package/src/components/molecules/slider/styles.js +0 -0
  158. package/src/components/molecules/slider/styles.scss +0 -3
  159. package/src/components/myprojects/export.js +0 -5
  160. package/src/components/myprojects/index.jsx +0 -445
  161. package/src/components/myprojects/styles.js +0 -241
  162. package/src/components/sidebar/custom-accordion.jsx +0 -48
  163. package/src/components/sidebar/export.js +0 -15
  164. package/src/components/sidebar/panel-element-editor/attributes-editor/attributes-editor.jsx +0 -73
  165. package/src/components/sidebar/panel-element-editor/attributes-editor/confirm-popup.jsx +0 -101
  166. package/src/components/sidebar/panel-element-editor/attributes-editor/hole-attributes-editor.jsx +0 -149
  167. package/src/components/sidebar/panel-element-editor/attributes-editor/item-attributes-editor.jsx +0 -316
  168. package/src/components/sidebar/panel-element-editor/attributes-editor/line-attributes-editor.jsx +0 -108
  169. package/src/components/sidebar/panel-element-editor/element-editor.jsx +0 -1070
  170. package/src/components/sidebar/panel-element-editor/multi-elements-editor.jsx +0 -0
  171. package/src/components/sidebar/panel-element-editor/panel-element-editor.jsx +0 -104
  172. package/src/components/sidebar/panel-element-editor/panel-multi-elements-editor.jsx +0 -155
  173. package/src/components/sidebar/panel-group-editor.jsx +0 -272
  174. package/src/components/sidebar/panel-groups.jsx +0 -310
  175. package/src/components/sidebar/panel-guides.jsx +0 -192
  176. package/src/components/sidebar/panel-layer-elements.jsx +0 -298
  177. package/src/components/sidebar/panel-layers.jsx +0 -381
  178. package/src/components/sidebar/panel.jsx +0 -71
  179. package/src/components/sidebar/sidebar.jsx +0 -106
  180. package/src/components/sidebar/toolbar-panel.jsx +0 -139
  181. package/src/components/sign/export.js +0 -7
  182. package/src/components/sign/main/index.jsx +0 -523
  183. package/src/components/sign/main/styles.js +0 -163
  184. package/src/components/style/button.jsx +0 -95
  185. package/src/components/style/cancel-button.jsx +0 -20
  186. package/src/components/style/content-container.jsx +0 -29
  187. package/src/components/style/content-title.jsx +0 -20
  188. package/src/components/style/delete-button.jsx +0 -23
  189. package/src/components/style/export.jsx +0 -48
  190. package/src/components/style/form-block.jsx +0 -13
  191. package/src/components/style/form-color-input.jsx +0 -27
  192. package/src/components/style/form-label.jsx +0 -15
  193. package/src/components/style/form-number-input.jsx +0 -196
  194. package/src/components/style/form-number-input_2.jsx +0 -191
  195. package/src/components/style/form-select.jsx +0 -38
  196. package/src/components/style/form-slider.jsx +0 -36
  197. package/src/components/style/form-submit-button.jsx +0 -23
  198. package/src/components/style/form-text-input.jsx +0 -65
  199. package/src/components/toolbar/button/ControlButton.jsx +0 -41
  200. package/src/components/toolbar/button/DirectionButton.jsx +0 -34
  201. package/src/components/toolbar/button/RightButton.jsx +0 -103
  202. package/src/components/toolbar/button/ToggleButton.jsx +0 -41
  203. package/src/components/toolbar/button/index.jsx +0 -55
  204. package/src/components/toolbar/button/styles.js +0 -127
  205. package/src/components/toolbar/components/DoorStyleMenu.jsx +0 -103
  206. package/src/components/toolbar/components/Pricing.jsx +0 -126
  207. package/src/components/toolbar/components/ReviewForQuote.jsx +0 -635
  208. package/src/components/toolbar/export.js +0 -21
  209. package/src/components/toolbar/main/Alert.js +0 -122
  210. package/src/components/toolbar/main/TakePictureModal.jsx +0 -104
  211. package/src/components/toolbar/main/confirm-popup.jsx +0 -99
  212. package/src/components/toolbar/main/index.jsx +0 -5687
  213. package/src/components/toolbar/main/lShaped.json +0 -311
  214. package/src/components/toolbar/main/longNarrow.json +0 -238
  215. package/src/components/toolbar/main/myComponents.js +0 -123
  216. package/src/components/toolbar/main/oRectangle.json +0 -220
  217. package/src/components/toolbar/main/rectangle.json +0 -238
  218. package/src/components/toolbar/main/style.css +0 -107
  219. package/src/components/toolbar/main/styles.js +0 -696
  220. package/src/components/toolbar/plugin-item.jsx +0 -123
  221. package/src/components/toolbar/popup/appliance/appliance-category/index.jsx +0 -73
  222. package/src/components/toolbar/popup/appliance/choose-appliance/index.jsx +0 -102
  223. package/src/components/toolbar/popup/appliance/index.jsx +0 -83
  224. package/src/components/toolbar/popup/autosaveprompt/index.jsx +0 -150
  225. package/src/components/toolbar/popup/autosaveprompt/styles.css +0 -64
  226. package/src/components/toolbar/popup/autosaveprompt/styles.js +0 -40
  227. package/src/components/toolbar/popup/cabinet/cabinet-category/index.jsx +0 -73
  228. package/src/components/toolbar/popup/cabinet/choose-product/index.jsx +0 -119
  229. package/src/components/toolbar/popup/cabinet/index.jsx +0 -85
  230. package/src/components/toolbar/popup/doorStyle/choose-style/index.jsx +0 -63
  231. package/src/components/toolbar/popup/doorStyle/index.jsx +0 -71
  232. package/src/components/toolbar/popup/doorStyle/style-category/index.jsx +0 -139
  233. package/src/components/toolbar/popup/downloadsummary/downloadSummaryContext.js +0 -2
  234. package/src/components/toolbar/popup/downloadsummary/downloadSummaryTemp.jsx +0 -157
  235. package/src/components/toolbar/popup/downloadsummary/index.jsx +0 -643
  236. package/src/components/toolbar/popup/downloadsummary/show2D/show2DView.jsx +0 -51
  237. package/src/components/toolbar/popup/downloadsummary/show2D/viewer2DDownLoad.jsx +0 -175
  238. package/src/components/toolbar/popup/downloadsummary/show3D/show3DView.jsx +0 -283
  239. package/src/components/toolbar/popup/downloadsummary/show3D/viewer3DDownLoad.jsx +0 -2257
  240. package/src/components/toolbar/popup/downloadsummary/showCabinetInfo.js +0 -93
  241. package/src/components/toolbar/popup/downloadsummary/showElevation/showElevationView.jsx +0 -132
  242. package/src/components/toolbar/popup/downloadsummary/showElevation/viewer3DElevationDownload.jsx +0 -2198
  243. package/src/components/toolbar/popup/downloadsummary/showElevation/viewerElevationDownload.jsx +0 -152
  244. package/src/components/toolbar/popup/downloadsummary/showWarranty.jsx +0 -149
  245. package/src/components/toolbar/popup/downloadsummary/styles.css +0 -177
  246. package/src/components/toolbar/popup/downloadsummary/styles.js +0 -453
  247. package/src/components/toolbar/popup/finishingtouch/category/index.jsx +0 -34
  248. package/src/components/toolbar/popup/finishingtouch/index.jsx +0 -58
  249. package/src/components/toolbar/popup/finishingtouch/material-edit.jsx +0 -112
  250. package/src/components/toolbar/popup/finishingtouch/product/index.jsx +0 -116
  251. package/src/components/toolbar/popup/floorplan/choose-floor/confirm-popup.jsx +0 -101
  252. package/src/components/toolbar/popup/floorplan/choose-floor/index.jsx +0 -254
  253. package/src/components/toolbar/popup/floorplan/choose-floor/lShaped.json +0 -311
  254. package/src/components/toolbar/popup/floorplan/choose-floor/longNarrow.json +0 -238
  255. package/src/components/toolbar/popup/floorplan/choose-floor/oRectangle.json +0 -220
  256. package/src/components/toolbar/popup/floorplan/choose-floor/rectangle.json +0 -238
  257. package/src/components/toolbar/popup/floorplan/choose-floor/styles.js +0 -86
  258. package/src/components/toolbar/popup/floorplan/floor-category/index.jsx +0 -109
  259. package/src/components/toolbar/popup/floorplan/index.jsx +0 -60
  260. package/src/components/toolbar/popup/index.jsx +0 -241
  261. package/src/components/toolbar/popup/newproject/index.jsx +0 -59
  262. package/src/components/toolbar/popup/newproject/styles.css +0 -64
  263. package/src/components/toolbar/popup/newproject/styles.js +0 -41
  264. package/src/components/toolbar/popup/product/appliance.jsx +0 -54
  265. package/src/components/toolbar/popup/product/cabinetproduct.jsx +0 -15
  266. package/src/components/toolbar/popup/product/doorstyle.jsx +0 -58
  267. package/src/components/toolbar/popup/product/doorstyleproduct.jsx +0 -47
  268. package/src/components/toolbar/popup/product/floor.jsx +0 -36
  269. package/src/components/toolbar/popup/product/floorproduct.jsx +0 -42
  270. package/src/components/toolbar/popup/product/index.jsx +0 -36
  271. package/src/components/toolbar/popup/product/primary.jsx +0 -77
  272. package/src/components/toolbar/popup/product/productline.jsx +0 -93
  273. package/src/components/toolbar/popup/product/reviewItem.jsx +0 -427
  274. package/src/components/toolbar/popup/product/reviewMolding.jsx +0 -310
  275. package/src/components/toolbar/popup/product/style.css +0 -54
  276. package/src/components/toolbar/popup/product/styles.js +0 -260
  277. package/src/components/toolbar/popup/savedesign/FullPictureForm.jsx +0 -146
  278. package/src/components/toolbar/popup/savedesign/index.jsx +0 -495
  279. package/src/components/toolbar/popup/savedesign/savedesign.style.css +0 -16
  280. package/src/components/toolbar/popup/savedesign/styles.js +0 -151
  281. package/src/components/toolbar/popup/setDoorStyleOption/index.jsx +0 -87
  282. package/src/components/toolbar/popup/styles.js +0 -909
  283. package/src/components/toolbar/popup/submitforquote/AddToCartOptions.jsx +0 -192
  284. package/src/components/toolbar/popup/submitforquote/CustomerRequestsForm.jsx +0 -96
  285. package/src/components/toolbar/popup/submitforquote/SkipDesignerReview.jsx +0 -54
  286. package/src/components/toolbar/popup/submitforquote/StepDots.jsx +0 -25
  287. package/src/components/toolbar/popup/submitforquote/cart-choice.jsx +0 -116
  288. package/src/components/toolbar/popup/submitforquote/doorstyle-menus.js +0 -38
  289. package/src/components/toolbar/popup/submitforquote/index.jsx +0 -698
  290. package/src/components/toolbar/popup/submitforquote/styles.css +0 -105
  291. package/src/components/toolbar/popup/submitforquote/styles.js +0 -294
  292. package/src/components/toolbar/popup/submitprompt/index.jsx +0 -89
  293. package/src/components/toolbar/popup/submitprompt/styles.css +0 -64
  294. package/src/components/toolbar/popup/submitprompt/styles.js +0 -42
  295. package/src/components/toolbar/toolbar-button.jsx +0 -90
  296. package/src/components/toolbar/toolbar-load-button.jsx +0 -36
  297. package/src/components/toolbar/toolbar-save-button.jsx +0 -32
  298. package/src/components/tutorial-view/Modal.jsx +0 -584
  299. package/src/components/tutorial-view/style.css +0 -111
  300. package/src/components/tutorial-view/styles.js +0 -65
  301. package/src/components/viewer2d/area.jsx +0 -98
  302. package/src/components/viewer2d/export.js +0 -48
  303. package/src/components/viewer2d/grids/grid-horizontal-streak.jsx +0 -40
  304. package/src/components/viewer2d/grids/grid-streak.jsx +0 -32
  305. package/src/components/viewer2d/grids/grid-vertical-streak.jsx +0 -41
  306. package/src/components/viewer2d/grids/grids.jsx +0 -30
  307. package/src/components/viewer2d/group.jsx +0 -57
  308. package/src/components/viewer2d/item.jsx +0 -618
  309. package/src/components/viewer2d/layer.jsx +0 -214
  310. package/src/components/viewer2d/line.jsx +0 -1358
  311. package/src/components/viewer2d/ruler.jsx +0 -136
  312. package/src/components/viewer2d/rulerDist.jsx +0 -192
  313. package/src/components/viewer2d/rulerX.jsx +0 -141
  314. package/src/components/viewer2d/rulerY.jsx +0 -138
  315. package/src/components/viewer2d/scene.jsx +0 -94
  316. package/src/components/viewer2d/snap.jsx +0 -118
  317. package/src/components/viewer2d/state.jsx +0 -77
  318. package/src/components/viewer2d/utils.js +0 -195
  319. package/src/components/viewer2d/vertex.jsx +0 -76
  320. package/src/components/viewer2d/viewer2d.jsx +0 -1830
  321. package/src/components/viewer3d/camera-controls-module/camera-controls.module.js +0 -3078
  322. package/src/components/viewer3d/dcm.js +0 -226
  323. package/src/components/viewer3d/fbm.js +0 -383
  324. package/src/components/viewer3d/front3D.jsx +0 -63
  325. package/src/components/viewer3d/grid-creator.js +0 -25
  326. package/src/components/viewer3d/grids/grid-horizontal-streak.js +0 -41
  327. package/src/components/viewer3d/grids/grid-streak.js +0 -34
  328. package/src/components/viewer3d/grids/grid-vertical-streak.js +0 -42
  329. package/src/components/viewer3d/libs/first-person-controls.js +0 -70
  330. package/src/components/viewer3d/libs/helvetiker_regular.typeface.js +0 -1265
  331. package/src/components/viewer3d/libs/mtl-loader.js +0 -462
  332. package/src/components/viewer3d/libs/obj-loader.js +0 -653
  333. package/src/components/viewer3d/libs/orbit-controls.js +0 -945
  334. package/src/components/viewer3d/libs/pointer-lock-controls.js +0 -67
  335. package/src/components/viewer3d/lrm.js +0 -358
  336. package/src/components/viewer3d/model.js +0 -830
  337. package/src/components/viewer3d/pointer-lock-navigation.js +0 -140
  338. package/src/components/viewer3d/ruler-utils/itemRect.jsx +0 -91
  339. package/src/components/viewer3d/ruler-utils/layer3D.jsx +0 -528
  340. package/src/components/viewer3d/ruler-utils/ruler3D.jsx +0 -218
  341. package/src/components/viewer3d/ruler-utils/scene3D.jsx +0 -87
  342. package/src/components/viewer3d/ruler-utils/state3D.jsx +0 -25
  343. package/src/components/viewer3d/scene-creator.js +0 -5172
  344. package/src/components/viewer3d/three-memory-cleaner.js +0 -65
  345. package/src/components/viewer3d/viewer3d-first-person.js +0 -395
  346. package/src/components/viewer3d/viewer3d.js +0 -3376
  347. package/src/components/wizardstep/button/styles.js +0 -677
  348. package/src/components/wizardstep/export.js +0 -5
  349. package/src/components/wizardstep/index.jsx +0 -1372
  350. package/src/components/wizardstep/styles.js +0 -688
  351. package/src/components/wizardstep/wizardstep-content-button.jsx +0 -198
  352. package/src/components/wizardstep/wizardstep-toggle-button.jsx +0 -101
  353. package/src/constants.js +0 -731
  354. package/src/hooks/useCheckCart.js +0 -38
  355. package/src/hooks/useGetPricesBySku.js +0 -59
  356. package/src/hooks/useValidateToken.js +0 -181
  357. package/src/index.js +0 -32
  358. package/src/models.js +0 -541
  359. package/src/plugins/SVGLoader.js +0 -1991
  360. package/src/plugins/autosave.js +0 -39
  361. package/src/plugins/console-debugger.js +0 -36
  362. package/src/plugins/export.js +0 -11
  363. package/src/plugins/keyboard.js +0 -194
  364. package/src/reducers/areas-reducer.js +0 -13
  365. package/src/reducers/export.js +0 -39
  366. package/src/reducers/groups-reducer.js +0 -73
  367. package/src/reducers/holes-reducer.js +0 -125
  368. package/src/reducers/items-reducer.js +0 -286
  369. package/src/reducers/lines-reducer.js +0 -96
  370. package/src/reducers/project-reducer.js +0 -239
  371. package/src/reducers/reducer.js +0 -59
  372. package/src/reducers/scene-reducer.js +0 -41
  373. package/src/reducers/user-reducer.js +0 -30
  374. package/src/reducers/vertices-reducer.js +0 -34
  375. package/src/reducers/viewer2d-reducer.js +0 -81
  376. package/src/reducers/viewer3d-reducer.js +0 -65
  377. package/src/shared-style.js +0 -72
  378. package/src/styles/export.js +0 -7
  379. package/src/styles/tabs.css +0 -40
  380. package/src/translator/en.js +0 -106
  381. package/src/translator/it.js +0 -80
  382. package/src/translator/ru.js +0 -80
  383. package/src/translator/translator.js +0 -81
  384. package/src/utils/browser.js +0 -36
  385. package/src/utils/email-validator.js +0 -5
  386. package/src/utils/export.js +0 -39
  387. package/src/utils/geometry.js +0 -2572
  388. package/src/utils/get-edges-of-subgraphs.js +0 -29
  389. package/src/utils/graph-cycles.js +0 -259
  390. package/src/utils/graph-inner-cycles.js +0 -49
  391. package/src/utils/graph.js +0 -147
  392. package/src/utils/helper.js +0 -431
  393. package/src/utils/history.js +0 -37
  394. package/src/utils/id-broker.js +0 -9
  395. package/src/utils/logger.js +0 -8
  396. package/src/utils/math.js +0 -51
  397. package/src/utils/molding.js +0 -973
  398. package/src/utils/name-generator.js +0 -5
  399. package/src/utils/objects-utils.js +0 -56
  400. package/src/utils/phone-validator.js +0 -4
  401. package/src/utils/process-black-list.js +0 -10
  402. package/src/utils/react-if.jsx +0 -20
  403. package/src/utils/snap-scene.js +0 -102
  404. package/src/utils/snap.js +0 -184
  405. package/src/utils/threeCSG.es6.js +0 -578
  406. package/src/version.js +0 -1
@@ -1,653 +0,0 @@
1
- /**
2
- * @author mrdoob / http://mrdoob.com/
3
- */
4
-
5
- let THREE = window.THREE || require('three');
6
- let OBJLoader;
7
-
8
- OBJLoader = function (manager) {
9
- this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
10
-
11
- this.materials = null;
12
-
13
- this.regexp = {
14
- // v float float float
15
- vertex_pattern:
16
- /^v\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,
17
- // vn float float float
18
- normal_pattern:
19
- /^vn\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,
20
- // vt float float
21
- uv_pattern: /^vt\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,
22
- // f vertex vertex vertex
23
- face_vertex: /^f\s+(-?\d+)\s+(-?\d+)\s+(-?\d+)(?:\s+(-?\d+))?/,
24
- // f vertex/uv vertex/uv vertex/uv
25
- face_vertex_uv:
26
- /^f\s+(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)(?:\s+(-?\d+)\/(-?\d+))?/,
27
- // f vertex/uv/normal vertex/uv/normal vertex/uv/normal
28
- face_vertex_uv_normal:
29
- /^f\s+(-?\d+)\/(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\/(-?\d+)(?:\s+(-?\d+)\/(-?\d+)\/(-?\d+))?/,
30
- // f vertex//normal vertex//normal vertex//normal
31
- face_vertex_normal:
32
- /^f\s+(-?\d+)\/\/(-?\d+)\s+(-?\d+)\/\/(-?\d+)\s+(-?\d+)\/\/(-?\d+)(?:\s+(-?\d+)\/\/(-?\d+))?/,
33
- // o object_name | g group_name
34
- object_pattern: /^[og]\s*(.+)?/,
35
- // s boolean
36
- smoothing_pattern: /^s\s+(\d+|on|off)/,
37
- // mtllib file_reference
38
- material_library_pattern: /^mtllib /,
39
- // usemtl material_name
40
- material_use_pattern: /^usemtl /
41
- };
42
- };
43
-
44
- OBJLoader.prototype = {
45
- constructor: OBJLoader,
46
-
47
- load: function (url, onLoad, onProgress, onError) {
48
- let scope = this;
49
-
50
- let loader = new THREE.XHRLoader(scope.manager);
51
- loader.setPath(this.path);
52
- loader.load(
53
- url,
54
- function (text) {
55
- onLoad(scope.parse(text));
56
- },
57
- onProgress,
58
- onError
59
- );
60
- },
61
-
62
- setPath: function (value) {
63
- this.path = value;
64
- },
65
-
66
- setMaterials: function (materials) {
67
- this.materials = materials;
68
- },
69
-
70
- _createParserState: function () {
71
- let state = {
72
- objects: [],
73
- object: {},
74
-
75
- vertices: [],
76
- normals: [],
77
- uvs: [],
78
-
79
- materialLibraries: [],
80
-
81
- startObject: function (name, fromDeclaration) {
82
- // If the current object (initial from reset) is not from a g/o declaration in the parsed
83
- // file. We need to use it for the first parsed g/o to keep things in sync.
84
- if (this.object && this.object.fromDeclaration === false) {
85
- this.object.name = name;
86
- this.object.fromDeclaration = fromDeclaration !== false;
87
- return;
88
- }
89
-
90
- if (this.object && typeof this.object._finalize === 'function') {
91
- this.object._finalize();
92
- }
93
-
94
- let previousMaterial =
95
- this.object && typeof this.object.currentMaterial === 'function'
96
- ? this.object.currentMaterial()
97
- : undefined;
98
-
99
- this.object = {
100
- name: name || '',
101
- fromDeclaration: fromDeclaration !== false,
102
-
103
- geometry: {
104
- vertices: [],
105
- normals: [],
106
- uvs: []
107
- },
108
- materials: [],
109
- smooth: true,
110
-
111
- startMaterial: function (name, libraries) {
112
- let previous = this._finalize(false);
113
-
114
- // New usemtl declaration overwrites an inherited material, except if faces were declared
115
- // after the material, then it must be preserved for proper MultiMaterial continuation.
116
- if (previous && (previous.inherited || previous.groupCount <= 0)) {
117
- this.materials.splice(previous.index, 1);
118
- }
119
-
120
- let material = {
121
- index: this.materials.length,
122
- name: name || '',
123
- mtllib:
124
- Array.isArray(libraries) && libraries.length > 0
125
- ? libraries[libraries.length - 1]
126
- : '',
127
- smooth: previous !== undefined ? previous.smooth : this.smooth,
128
- groupStart: previous !== undefined ? previous.groupEnd : 0,
129
- groupEnd: -1,
130
- groupCount: -1,
131
- inherited: false,
132
-
133
- clone: function (index) {
134
- return {
135
- index: typeof index === 'number' ? index : this.index,
136
- name: this.name,
137
- mtllib: this.mtllib,
138
- smooth: this.smooth,
139
- groupStart: this.groupEnd,
140
- groupEnd: -1,
141
- groupCount: -1,
142
- inherited: false
143
- };
144
- }
145
- };
146
-
147
- this.materials.push(material);
148
-
149
- return material;
150
- },
151
-
152
- currentMaterial: function () {
153
- if (this.materials.length > 0) {
154
- return this.materials[this.materials.length - 1];
155
- }
156
-
157
- return undefined;
158
- },
159
-
160
- _finalize: function (end) {
161
- let lastMultiMaterial = this.currentMaterial();
162
- if (lastMultiMaterial && lastMultiMaterial.groupEnd === -1) {
163
- lastMultiMaterial.groupEnd = this.geometry.vertices.length / 3;
164
- lastMultiMaterial.groupCount =
165
- lastMultiMaterial.groupEnd - lastMultiMaterial.groupStart;
166
- lastMultiMaterial.inherited = false;
167
- }
168
-
169
- // Guarantee at least one empty material, this makes the creation later more straight forward.
170
- if (end !== false && this.materials.length === 0) {
171
- this.materials.push({
172
- name: '',
173
- smooth: this.smooth
174
- });
175
- }
176
-
177
- return lastMultiMaterial;
178
- }
179
- };
180
-
181
- // Inherit previous objects material.
182
- // Spec tells us that a declared material must be set to all objects until a new material is declared.
183
- // If a usemtl declaration is encountered while this new object is being parsed, it will
184
- // overwrite the inherited material. Exception being that there was already face declarations
185
- // to the inherited material, then it will be preserved for proper MultiMaterial continuation.
186
-
187
- if (
188
- previousMaterial &&
189
- previousMaterial.name &&
190
- typeof previousMaterial.clone === 'function'
191
- ) {
192
- let declared = previousMaterial.clone(0);
193
- declared.inherited = true;
194
- this.object.materials.push(declared);
195
- }
196
-
197
- this.objects.push(this.object);
198
- },
199
-
200
- finalize: function () {
201
- if (this.object && typeof this.object._finalize === 'function') {
202
- this.object._finalize();
203
- }
204
- },
205
-
206
- parseVertexIndex: function (value, len) {
207
- let index = parseInt(value, 10);
208
- return (index >= 0 ? index - 1 : index + len / 3) * 3;
209
- },
210
-
211
- parseNormalIndex: function (value, len) {
212
- let index = parseInt(value, 10);
213
- return (index >= 0 ? index - 1 : index + len / 3) * 3;
214
- },
215
-
216
- parseUVIndex: function (value, len) {
217
- let index = parseInt(value, 10);
218
- return (index >= 0 ? index - 1 : index + len / 2) * 2;
219
- },
220
-
221
- addVertex: function (a, b, c) {
222
- let src = this.vertices;
223
- let dst = this.object.geometry.vertices;
224
-
225
- dst.push(src[a + 0]);
226
- dst.push(src[a + 1]);
227
- dst.push(src[a + 2]);
228
- dst.push(src[b + 0]);
229
- dst.push(src[b + 1]);
230
- dst.push(src[b + 2]);
231
- dst.push(src[c + 0]);
232
- dst.push(src[c + 1]);
233
- dst.push(src[c + 2]);
234
- },
235
-
236
- addVertexLine: function (a) {
237
- let src = this.vertices;
238
- let dst = this.object.geometry.vertices;
239
-
240
- dst.push(src[a + 0]);
241
- dst.push(src[a + 1]);
242
- dst.push(src[a + 2]);
243
- },
244
-
245
- addNormal: function (a, b, c) {
246
- let src = this.normals;
247
- let dst = this.object.geometry.normals;
248
-
249
- dst.push(src[a + 0]);
250
- dst.push(src[a + 1]);
251
- dst.push(src[a + 2]);
252
- dst.push(src[b + 0]);
253
- dst.push(src[b + 1]);
254
- dst.push(src[b + 2]);
255
- dst.push(src[c + 0]);
256
- dst.push(src[c + 1]);
257
- dst.push(src[c + 2]);
258
- },
259
-
260
- addUV: function (a, b, c) {
261
- let src = this.uvs;
262
- let dst = this.object.geometry.uvs;
263
-
264
- dst.push(src[a + 0]);
265
- dst.push(src[a + 1]);
266
- dst.push(src[b + 0]);
267
- dst.push(src[b + 1]);
268
- dst.push(src[c + 0]);
269
- dst.push(src[c + 1]);
270
- },
271
-
272
- addUVLine: function (a) {
273
- let src = this.uvs;
274
- let dst = this.object.geometry.uvs;
275
-
276
- dst.push(src[a + 0]);
277
- dst.push(src[a + 1]);
278
- },
279
-
280
- addFace: function (a, b, c, d, ua, ub, uc, ud, na, nb, nc, nd) {
281
- let vLen = this.vertices.length;
282
-
283
- let ia = this.parseVertexIndex(a, vLen);
284
- let ib = this.parseVertexIndex(b, vLen);
285
- let ic = this.parseVertexIndex(c, vLen);
286
- let id;
287
-
288
- if (d === undefined) {
289
- this.addVertex(ia, ib, ic);
290
- } else {
291
- id = this.parseVertexIndex(d, vLen);
292
-
293
- this.addVertex(ia, ib, id);
294
- this.addVertex(ib, ic, id);
295
- }
296
-
297
- if (ua !== undefined) {
298
- let uvLen = this.uvs.length;
299
-
300
- ia = this.parseUVIndex(ua, uvLen);
301
- ib = this.parseUVIndex(ub, uvLen);
302
- ic = this.parseUVIndex(uc, uvLen);
303
-
304
- if (d === undefined) {
305
- this.addUV(ia, ib, ic);
306
- } else {
307
- id = this.parseUVIndex(ud, uvLen);
308
-
309
- this.addUV(ia, ib, id);
310
- this.addUV(ib, ic, id);
311
- }
312
- }
313
-
314
- if (na !== undefined) {
315
- // Normals are many times the same. If so, skip function call and parseInt.
316
- let nLen = this.normals.length;
317
- ia = this.parseNormalIndex(na, nLen);
318
-
319
- ib = na === nb ? ia : this.parseNormalIndex(nb, nLen);
320
- ic = na === nc ? ia : this.parseNormalIndex(nc, nLen);
321
-
322
- if (d === undefined) {
323
- this.addNormal(ia, ib, ic);
324
- } else {
325
- id = this.parseNormalIndex(nd, nLen);
326
-
327
- this.addNormal(ia, ib, id);
328
- this.addNormal(ib, ic, id);
329
- }
330
- }
331
- },
332
-
333
- addLineGeometry: function (vertices, uvs) {
334
- this.object.geometry.type = 'Line';
335
-
336
- let vLen = this.vertices.length;
337
- let uvLen = this.uvs.length;
338
-
339
- for (let vi = 0, l = vertices.length; vi < l; vi++) {
340
- this.addVertexLine(this.parseVertexIndex(vertices[vi], vLen));
341
- }
342
-
343
- for (let uvi = 0, l = uvs.length; uvi < l; uvi++) {
344
- this.addUVLine(this.parseUVIndex(uvs[uvi], uvLen));
345
- }
346
- }
347
- };
348
-
349
- state.startObject('', false);
350
-
351
- return state;
352
- },
353
-
354
- parse: function (text) {
355
- let state = this._createParserState();
356
-
357
- if (text.indexOf('\r\n') !== -1) {
358
- // This is faster than String.split with regex that splits on both
359
- text = text.replace('\r\n', '\n');
360
- }
361
-
362
- let lines = text.split('\n');
363
- let line = '',
364
- lineFirstChar = '',
365
- lineSecondChar = '';
366
- let lineLength = 0;
367
- let result = [];
368
-
369
- // Faster to just trim left side of the line. Use if available.
370
- let trimLeft = typeof ''.trimLeft === 'function';
371
-
372
- for (let i = 0, l = lines.length; i < l; i++) {
373
- line = lines[i];
374
-
375
- line = trimLeft ? line.trimLeft() : line.trim();
376
-
377
- lineLength = line.length;
378
-
379
- if (lineLength === 0) continue;
380
-
381
- lineFirstChar = line.charAt(0);
382
-
383
- // @todo invoke passed in handler if any
384
- if (lineFirstChar === '#') continue;
385
-
386
- if (lineFirstChar === 'v') {
387
- lineSecondChar = line.charAt(1);
388
-
389
- if (
390
- lineSecondChar === ' ' &&
391
- (result = this.regexp.vertex_pattern.exec(line)) !== null
392
- ) {
393
- // 0 1 2 3
394
- // ["v 1.0 2.0 3.0", "1.0", "2.0", "3.0"]
395
-
396
- state.vertices.push(
397
- parseFloat(result[1]),
398
- parseFloat(result[2]),
399
- parseFloat(result[3])
400
- );
401
- } else if (
402
- lineSecondChar === 'n' &&
403
- (result = this.regexp.normal_pattern.exec(line)) !== null
404
- ) {
405
- // 0 1 2 3
406
- // ["vn 1.0 2.0 3.0", "1.0", "2.0", "3.0"]
407
-
408
- state.normals.push(
409
- parseFloat(result[1]),
410
- parseFloat(result[2]),
411
- parseFloat(result[3])
412
- );
413
- } else if (
414
- lineSecondChar === 't' &&
415
- (result = this.regexp.uv_pattern.exec(line)) !== null
416
- ) {
417
- // 0 1 2
418
- // ["vt 0.1 0.2", "0.1", "0.2"]
419
-
420
- state.uvs.push(parseFloat(result[1]), parseFloat(result[2]));
421
- } else {
422
- throw new Error("Unexpected vertex/normal/uv line: '" + line + "'");
423
- }
424
- } else if (lineFirstChar === 'f') {
425
- if ((result = this.regexp.face_vertex_uv_normal.exec(line)) !== null) {
426
- // f vertex/uv/normal vertex/uv/normal vertex/uv/normal
427
- // 0 1 2 3 4 5 6 7 8 9 10 11 12
428
- // ["f 1/1/1 2/2/2 3/3/3", "1", "1", "1", "2", "2", "2", "3", "3", "3", undefined, undefined, undefined]
429
-
430
- state.addFace(
431
- result[1],
432
- result[4],
433
- result[7],
434
- result[10],
435
- result[2],
436
- result[5],
437
- result[8],
438
- result[11],
439
- result[3],
440
- result[6],
441
- result[9],
442
- result[12]
443
- );
444
- } else if ((result = this.regexp.face_vertex_uv.exec(line)) !== null) {
445
- // f vertex/uv vertex/uv vertex/uv
446
- // 0 1 2 3 4 5 6 7 8
447
- // ["f 1/1 2/2 3/3", "1", "1", "2", "2", "3", "3", undefined, undefined]
448
-
449
- state.addFace(
450
- result[1],
451
- result[3],
452
- result[5],
453
- result[7],
454
- result[2],
455
- result[4],
456
- result[6],
457
- result[8]
458
- );
459
- } else if (
460
- (result = this.regexp.face_vertex_normal.exec(line)) !== null
461
- ) {
462
- // f vertex//normal vertex//normal vertex//normal
463
- // 0 1 2 3 4 5 6 7 8
464
- // ["f 1//1 2//2 3//3", "1", "1", "2", "2", "3", "3", undefined, undefined]
465
-
466
- state.addFace(
467
- result[1],
468
- result[3],
469
- result[5],
470
- result[7],
471
- undefined,
472
- undefined,
473
- undefined,
474
- undefined,
475
- result[2],
476
- result[4],
477
- result[6],
478
- result[8]
479
- );
480
- } else if ((result = this.regexp.face_vertex.exec(line)) !== null) {
481
- // f vertex vertex vertex
482
- // 0 1 2 3 4
483
- // ["f 1 2 3", "1", "2", "3", undefined]
484
-
485
- state.addFace(result[1], result[2], result[3], result[4]);
486
- } else {
487
- throw new Error("Unexpected face line: '" + line + "'");
488
- }
489
- } else if (lineFirstChar === 'l') {
490
- let lineParts = line.substring(1).trim().split(' ');
491
- let lineVertices = [],
492
- lineUVs = [];
493
-
494
- if (line.indexOf('/') === -1) {
495
- lineVertices = lineParts;
496
- } else {
497
- for (let li = 0, llen = lineParts.length; li < llen; li++) {
498
- let parts = lineParts[li].split('/');
499
-
500
- if (parts[0] !== '') lineVertices.push(parts[0]);
501
- if (parts[1] !== '') lineUVs.push(parts[1]);
502
- }
503
- }
504
- state.addLineGeometry(lineVertices, lineUVs);
505
- } else if ((result = this.regexp.object_pattern.exec(line)) !== null) {
506
- // o object_name
507
- // or
508
- // g group_name
509
-
510
- let name = result[0].substr(1).trim();
511
- state.startObject(name);
512
- } else if (this.regexp.material_use_pattern.test(line)) {
513
- // material
514
-
515
- state.object.startMaterial(
516
- line.substring(7).trim(),
517
- state.materialLibraries
518
- );
519
- } else if (this.regexp.material_library_pattern.test(line)) {
520
- // mtl file
521
-
522
- state.materialLibraries.push(line.substring(7).trim());
523
- } else if ((result = this.regexp.smoothing_pattern.exec(line)) !== null) {
524
- // smooth shading
525
-
526
- // @todo Handle files that have varying smooth values for a set of faces inside one geometry,
527
- // but does not define a usemtl for each face set.
528
- // This should be detected and a dummy material created (later MultiMaterial and geometry groups).
529
- // This requires some care to not create extra material on each smooth value for "normal" obj files.
530
- // where explicit usemtl defines geometry groups.
531
- // Example asset: examples/models/obj/cerberus/Cerberus.obj
532
-
533
- let value = result[1].trim().toLowerCase();
534
- state.object.smooth = value === '1' || value === 'on';
535
-
536
- let material = state.object.currentMaterial();
537
- if (material) {
538
- material.smooth = state.object.smooth;
539
- }
540
- } else {
541
- // Handle null terminated files without exception
542
- if (line === '\0') continue;
543
-
544
- throw new Error("Unexpected line: '" + line + "'");
545
- }
546
- }
547
-
548
- state.finalize();
549
-
550
- let container = new THREE.Group();
551
- container.materialLibraries = [].concat(state.materialLibraries);
552
-
553
- for (let i = 0, l = state.objects.length; i < l; i++) {
554
- let object = state.objects[i];
555
- let geometry = object.geometry;
556
- let materials = object.materials;
557
- let isLine = geometry.type === 'Line';
558
-
559
- // Skip o/g line declarations that did not follow with any faces
560
- if (geometry.vertices.length === 0) continue;
561
-
562
- let buffergeometry = new THREE.BufferGeometry();
563
-
564
- buffergeometry.addAttribute(
565
- 'position',
566
- new THREE.BufferAttribute(new Float32Array(geometry.vertices), 3)
567
- );
568
-
569
- if (geometry.normals.length > 0) {
570
- buffergeometry.addAttribute(
571
- 'normal',
572
- new THREE.BufferAttribute(new Float32Array(geometry.normals), 3)
573
- );
574
- } else {
575
- buffergeometry.computeVertexNormals();
576
- }
577
-
578
- if (geometry.uvs.length > 0) {
579
- buffergeometry.addAttribute(
580
- 'uv',
581
- new THREE.BufferAttribute(new Float32Array(geometry.uvs), 2)
582
- );
583
- }
584
-
585
- // Create materials
586
-
587
- let createdMaterials = [];
588
-
589
- for (let mi = 0, miLen = materials.length; mi < miLen; mi++) {
590
- let sourceMaterial = materials[mi];
591
- let material = undefined;
592
-
593
- if (this.materials !== null) {
594
- material = this.materials.create(sourceMaterial.name);
595
-
596
- // mtl etc. loaders probably can't create line materials correctly, copy properties to a line material.
597
- if (
598
- isLine &&
599
- material &&
600
- !(material instanceof THREE.LineBasicMaterial)
601
- ) {
602
- let materialLine = new THREE.LineBasicMaterial();
603
- materialLine.copy(material);
604
- material = materialLine;
605
- }
606
- }
607
-
608
- if (!material) {
609
- material = !isLine
610
- ? new THREE.MeshPhongMaterial()
611
- : new THREE.LineBasicMaterial();
612
- material.name = sourceMaterial.name;
613
- }
614
-
615
- if (!sourceMaterial.smooth) material.flatShading = true;
616
-
617
- createdMaterials.push(material);
618
- }
619
-
620
- // Create mesh
621
-
622
- let mesh;
623
-
624
- if (createdMaterials.length > 1) {
625
- for (let mi = 0, miLen = materials.length; mi < miLen; mi++) {
626
- let sourceMaterial = materials[mi];
627
- buffergeometry.addGroup(
628
- sourceMaterial.groupStart,
629
- sourceMaterial.groupCount,
630
- mi
631
- );
632
- }
633
-
634
- let multiMaterial = new THREE.MultiMaterial(createdMaterials);
635
- mesh = !isLine
636
- ? new THREE.Mesh(buffergeometry, multiMaterial)
637
- : new THREE.Line(buffergeometry, multiMaterial);
638
- } else {
639
- mesh = !isLine
640
- ? new THREE.Mesh(buffergeometry, createdMaterials[0])
641
- : new THREE.Line(buffergeometry, createdMaterials[0]);
642
- }
643
-
644
- mesh.name = object.name;
645
-
646
- container.add(mesh);
647
- }
648
-
649
- return container;
650
- }
651
- };
652
-
653
- module.exports = OBJLoader;