kitchen-simulator 4.3.5 → 4.3.7
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.
- package/es/actions/items-actions.js +3 -2
- package/es/class/item.js +34 -29
- package/es/components/viewer3d/scene-creator.js +34 -37
- package/es/constants.js +4 -1
- package/es/devLiteRenderer.js +2 -2
- package/es/reducers/items-reducer.js +1 -1
- package/es/utils/geometry.js +42 -6
- package/es/utils/isolate-event-handler.js +113 -87
- package/lib/actions/items-actions.js +3 -2
- package/lib/class/item.js +33 -28
- package/lib/components/viewer3d/scene-creator.js +34 -37
- package/lib/constants.js +9 -6
- package/lib/devLiteRenderer.js +1 -1
- package/lib/reducers/items-reducer.js +1 -1
- package/lib/utils/geometry.js +42 -6
- package/lib/utils/isolate-event-handler.js +112 -86
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
6
6
|
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; }
|
|
7
7
|
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
8
8
|
import { Map } from 'immutable';
|
|
9
|
-
import { EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, MODE_IDLE, MODE_2D_PAN, EXTERNAL_EVENT_ADD_ITEM, ARRAY_3D_MODES, MODE_IDLE_3D, MODE_ELEVATION_VIEW, MODE_DRAWING_LINE, TOP, BOTTOM, LEFT, RIGHT, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, INTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, ATT_ITEM_POS, ATT_LINE_LENGTH, ATT_VERTEXT_ONE, ATT_VERTEXT_TWO, ATT_HOLE_OFFSET_A, ATT_HOLE_OFFSET_B, UNIT_CENTIMETER, UNIT_INCH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, EXTERNAL_EVENT_CENTERING_2D, EXTERNAL_EVENT_DUPLICATE_ELEMENT, EXTERNAL_EVENT_DELETE_ELEMENT, ELEMENT_HOLE, ELEMENT_ITEM, ELEMENT_LINE, EXTERNAL_EVENT_REPLACE_CABINET, FINISHING_TYPE, EXTERNAL_EVENT_SET_FINISHING, EXTERNAL_EVENT_ROTATE_PAN } from "../constants";
|
|
9
|
+
import { EXTERNAL_EVENT_ADD_WALL, EXTERNAL_EVENT_TOGGLE_TO_3D, EXTERNAL_EVENT_TOGGLE_TO_2D, EXTERNAL_EVENT_TOGGLE_TO_ELEVATION, EXTERNAL_EVENT_MOVE_PAN, MODE_IDLE, MODE_2D_PAN, EXTERNAL_EVENT_ADD_ITEM, ARRAY_3D_MODES, MODE_IDLE_3D, MODE_ELEVATION_VIEW, MODE_DRAWING_LINE, TOP, BOTTOM, LEFT, RIGHT, EXTERNAL_EVENT_NEW_PROJECT, EXTERNAL_EVENT_CHANGE_DOORSTYLE, EXTERNAL_EVENT_ADD_ROOM_SHAPE, EXTERNAL_EVENT_ZOOM_IN, EXTERNAL_EVENT_ZOOM_OUT, EXTERNAL_EVENT_UNDO, EXTERNAL_EVENT_REDO, EXTERNAL_EVENT_SET_MOLDING, EXTERNAL_EVENT_PROJECT_SETTING, PROJECT_SETTING_OPTION, EXTERNAL_EVENT_SYNC_SCENE, INTERNAL_EVENT_SYNC_SCENE, EXTERNAL_EVENT_UPDATE_ATTRIBUTE, ATT_ITEM_POS, ATT_LINE_LENGTH, ATT_VERTEXT_ONE, ATT_VERTEXT_TWO, ATT_HOLE_OFFSET_A, ATT_HOLE_OFFSET_B, UNIT_CENTIMETER, UNIT_INCH, EXTERNAL_EVENT_UPDATE_PROPERTY, PROP_FLIP_DOOR_HANDLE, PROP_OPEN_DOORS, EXTERNAL_EVENT_LOAD_PROJECT, INTERNAL_EVENT_ITEMS_CATALOG, EXTERNAL_EVENT_ADD_HOLE, EXTERNAL_EVENT_CENTERING_2D, EXTERNAL_EVENT_DUPLICATE_ELEMENT, EXTERNAL_EVENT_DELETE_ELEMENT, ELEMENT_HOLE, ELEMENT_ITEM, ELEMENT_LINE, EXTERNAL_EVENT_REPLACE_CABINET, FINISHING_TYPE, EXTERNAL_EVENT_SET_FINISHING, EXTERNAL_EVENT_ROTATE_PAN, DOORSTYLE_SCOPE_SINGLE, DOORSTYLE_SCOPE_ALL, DOORSTYLE_SCOPE_MULTIPLE } from "../constants";
|
|
10
10
|
import { isEmpty, updateViwer2D, centering2D } from "./helper";
|
|
11
11
|
import exporter from "../catalog/utils/exporter";
|
|
12
12
|
import { render2DItem, render3DItem, render3DApplianceItem, render3DLightingItem } from "../catalog/utils/item-loader";
|
|
@@ -1211,7 +1211,7 @@ export function handleExternalEvent(_x0) {
|
|
|
1211
1211
|
function _handleExternalEvent() {
|
|
1212
1212
|
_handleExternalEvent = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee0(props) {
|
|
1213
1213
|
var _evt$payload3, _evt$payload4;
|
|
1214
|
-
var evt, state, layerId, layer, _evt$payload, _state$catalog, cdsItems, itemKeys, _loop6, i, newScene, tempState, _props$onInternalEven, sLineCnt, element, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, defaulTitle,
|
|
1214
|
+
var evt, state, layerId, layer, _evt$payload, _state$catalog, cdsItems, itemKeys, _loop6, i, newScene, tempState, _props$onInternalEven, sLineCnt, element, _state$viewer2D, _evt$payload$initialP, mouseX, mouseY, v2d, vPosX, vPosY, layerID, defaulTitle, _evt$payload5, doorStyle, itemCDS, applyScope, _evt$payload5$itemIds, itemIds, _layerId, allItems, targetItems, idSet, selectedItemIds, _cdsItems, _loop7, _i2, _props$onInternalEven2, _evt$payload6, roomShapeType, width, height, measurementUnit, _doorStyle, value, _value, _evt$payload7, moldingInfo, isGlobal, distElement, _distElement, _evt$payload8, option, _value2, _layerId2, _layer, _layer$getIn, selectedLines, selectedHoles, selectedItems, _i4, _i5, _i6, _evt$payload9, _evt$payload0, _evt$payload1, _evt$payload10, _layerID, _layer2, orginalItemInfo, originalItem, originalItemPos, replaceItem, _props$onInternalEven3, sceneData, currentTexture, _t5, _t6, _t7;
|
|
1215
1215
|
return _regeneratorRuntime.wrap(function (_context11) {
|
|
1216
1216
|
while (1) switch (_context11.prev = _context11.next) {
|
|
1217
1217
|
case 0:
|
|
@@ -1227,7 +1227,7 @@ function _handleExternalEvent() {
|
|
|
1227
1227
|
layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1228
1228
|
layer = state.getIn(['scene', 'layers', layerId]);
|
|
1229
1229
|
_t5 = evt === null || evt === void 0 ? void 0 : evt.type;
|
|
1230
|
-
_context11.next = _t5 === EXTERNAL_EVENT_LOAD_PROJECT ? 2 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_3D ? 7 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_2D ? 8 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 9 : _t5 === EXTERNAL_EVENT_ADD_WALL ? 10 : _t5 === EXTERNAL_EVENT_ADD_ITEM ? 11 : _t5 === EXTERNAL_EVENT_ADD_HOLE ? 14 : _t5 === EXTERNAL_EVENT_ROTATE_PAN ? 15 : _t5 === EXTERNAL_EVENT_MOVE_PAN ? 15 : _t5 === EXTERNAL_EVENT_NEW_PROJECT ? 16 : _t5 === EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 17 : _t5 === EXTERNAL_EVENT_ADD_ROOM_SHAPE ?
|
|
1230
|
+
_context11.next = _t5 === EXTERNAL_EVENT_LOAD_PROJECT ? 2 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_3D ? 7 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_2D ? 8 : _t5 === EXTERNAL_EVENT_TOGGLE_TO_ELEVATION ? 9 : _t5 === EXTERNAL_EVENT_ADD_WALL ? 10 : _t5 === EXTERNAL_EVENT_ADD_ITEM ? 11 : _t5 === EXTERNAL_EVENT_ADD_HOLE ? 14 : _t5 === EXTERNAL_EVENT_ROTATE_PAN ? 15 : _t5 === EXTERNAL_EVENT_MOVE_PAN ? 15 : _t5 === EXTERNAL_EVENT_NEW_PROJECT ? 16 : _t5 === EXTERNAL_EVENT_CHANGE_DOORSTYLE ? 17 : _t5 === EXTERNAL_EVENT_ADD_ROOM_SHAPE ? 25 : _t5 === EXTERNAL_EVENT_ZOOM_IN ? 26 : _t5 === EXTERNAL_EVENT_ZOOM_OUT ? 27 : _t5 === EXTERNAL_EVENT_CENTERING_2D ? 28 : _t5 === EXTERNAL_EVENT_UNDO ? 29 : _t5 === EXTERNAL_EVENT_REDO ? 30 : _t5 === EXTERNAL_EVENT_SET_MOLDING ? 31 : _t5 === EXTERNAL_EVENT_DUPLICATE_ELEMENT ? 33 : _t5 === EXTERNAL_EVENT_DELETE_ELEMENT ? 34 : _t5 === EXTERNAL_EVENT_PROJECT_SETTING ? 35 : _t5 === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? 44 : _t5 === EXTERNAL_EVENT_UPDATE_PROPERTY ? 44 : _t5 === EXTERNAL_EVENT_REPLACE_CABINET ? 45 : _t5 === EXTERNAL_EVENT_SET_FINISHING ? 47 : _t5 === EXTERNAL_EVENT_SYNC_SCENE ? 48 : 49;
|
|
1231
1231
|
break;
|
|
1232
1232
|
case 2:
|
|
1233
1233
|
if (!(evt !== null && evt !== void 0 && evt.payload)) {
|
|
@@ -1322,24 +1322,24 @@ function _handleExternalEvent() {
|
|
|
1322
1322
|
}());
|
|
1323
1323
|
} else props.projectActions.loadProject(evt.payload);
|
|
1324
1324
|
case 6:
|
|
1325
|
-
return _context11.abrupt("continue",
|
|
1325
|
+
return _context11.abrupt("continue", 49);
|
|
1326
1326
|
case 7:
|
|
1327
1327
|
props.projectActions.unselectAll();
|
|
1328
1328
|
props.projectActions.setMode(MODE_IDLE_3D);
|
|
1329
|
-
return _context11.abrupt("continue",
|
|
1329
|
+
return _context11.abrupt("continue", 49);
|
|
1330
1330
|
case 8:
|
|
1331
1331
|
props.projectActions.setMode(MODE_IDLE);
|
|
1332
|
-
return _context11.abrupt("continue",
|
|
1332
|
+
return _context11.abrupt("continue", 49);
|
|
1333
1333
|
case 9:
|
|
1334
1334
|
sLineCnt = layer.selected.lines.size;
|
|
1335
1335
|
if (sLineCnt > 0) props.projectActions.setMode(MODE_ELEVATION_VIEW);
|
|
1336
|
-
return _context11.abrupt("continue",
|
|
1336
|
+
return _context11.abrupt("continue", 49);
|
|
1337
1337
|
case 10:
|
|
1338
1338
|
if (state.mode === MODE_IDLE || state.mode === MODE_2D_PAN) props.linesActions.selectToolDrawingLine('wall');else {
|
|
1339
1339
|
props.projectActions.setMode(MODE_IDLE);
|
|
1340
1340
|
props.linesActions.selectToolDrawingLine('wall');
|
|
1341
1341
|
}
|
|
1342
|
-
return _context11.abrupt("continue",
|
|
1342
|
+
return _context11.abrupt("continue", 49);
|
|
1343
1343
|
case 11:
|
|
1344
1344
|
if (isEmpty(evt === null || evt === void 0 ? void 0 : evt.payload)) {
|
|
1345
1345
|
_context11.next = 13;
|
|
@@ -1370,46 +1370,71 @@ function _handleExternalEvent() {
|
|
|
1370
1370
|
props.projectActions.pushLastSelectedCatalogElementToHistory(element);
|
|
1371
1371
|
props.projectActions.setIsCabinetDrawing(true);
|
|
1372
1372
|
case 13:
|
|
1373
|
-
return _context11.abrupt("continue",
|
|
1373
|
+
return _context11.abrupt("continue", 49);
|
|
1374
1374
|
case 14:
|
|
1375
1375
|
ARRAY_3D_MODES.includes(state.mode) ? props.holesActions.selectToolDrawingHole3D(evt === null || evt === void 0 || (_evt$payload3 = evt.payload) === null || _evt$payload3 === void 0 ? void 0 : _evt$payload3.holeName) : props.holesActions.selectToolDrawingHole(evt === null || evt === void 0 || (_evt$payload4 = evt.payload) === null || _evt$payload4 === void 0 ? void 0 : _evt$payload4.holeName);
|
|
1376
|
-
return _context11.abrupt("continue",
|
|
1376
|
+
return _context11.abrupt("continue", 49);
|
|
1377
1377
|
case 15:
|
|
1378
1378
|
moveAndRotatePan2D3D(evt.type, props, evt.payload, state);
|
|
1379
|
-
return _context11.abrupt("continue",
|
|
1379
|
+
return _context11.abrupt("continue", 49);
|
|
1380
1380
|
case 16:
|
|
1381
1381
|
defaulTitle = 'Untitle';
|
|
1382
1382
|
props.projectActions.newProject();
|
|
1383
1383
|
props.projectActions.rename(defaulTitle);
|
|
1384
|
-
return _context11.abrupt("continue",
|
|
1384
|
+
return _context11.abrupt("continue", 49);
|
|
1385
1385
|
case 17:
|
|
1386
|
-
_evt$payload5 = evt.payload, doorStyle = _evt$payload5.doorStyle, itemCDS = _evt$payload5.itemCDS,
|
|
1386
|
+
_evt$payload5 = evt.payload, doorStyle = _evt$payload5.doorStyle, itemCDS = _evt$payload5.itemCDS, applyScope = _evt$payload5.applyScope, _evt$payload5$itemIds = _evt$payload5.itemIds, itemIds = _evt$payload5$itemIds === void 0 ? [] : _evt$payload5$itemIds;
|
|
1387
1387
|
_layerId = state.getIn(['scene', 'selectedLayer']);
|
|
1388
|
-
_cdsItems = [];
|
|
1389
1388
|
allItems = state.getIn(['scene', 'layers', _layerId, 'items']).toJS();
|
|
1390
|
-
|
|
1391
|
-
|
|
1389
|
+
targetItems = []; // Prepare idSet for SINGLE or MULTIPLE
|
|
1390
|
+
idSet = null;
|
|
1391
|
+
if (applyScope === DOORSTYLE_SCOPE_SINGLE) {
|
|
1392
|
+
selectedItemIds = state.getIn(['scene', 'layers', _layerId, 'selected', 'items']).toJS();
|
|
1393
|
+
idSet = new Set(selectedItemIds);
|
|
1394
|
+
}
|
|
1395
|
+
if (applyScope === DOORSTYLE_SCOPE_MULTIPLE) {
|
|
1396
|
+
// itemIds contains item.id (instance IDs)
|
|
1397
|
+
idSet = new Set(itemIds);
|
|
1398
|
+
}
|
|
1399
|
+
_t6 = applyScope;
|
|
1400
|
+
_context11.next = _t6 === DOORSTYLE_SCOPE_ALL ? 18 : _t6 === DOORSTYLE_SCOPE_SINGLE ? 19 : _t6 === DOORSTYLE_SCOPE_MULTIPLE ? 19 : 20;
|
|
1401
|
+
break;
|
|
1402
|
+
case 18:
|
|
1403
|
+
targetItems = Object.values(allItems);
|
|
1404
|
+
return _context11.abrupt("continue", 21);
|
|
1405
|
+
case 19:
|
|
1406
|
+
targetItems = Object.values(allItems).filter(function (item) {
|
|
1407
|
+
var _idSet;
|
|
1408
|
+
return (_idSet = idSet) === null || _idSet === void 0 ? void 0 : _idSet.has(item.id);
|
|
1409
|
+
});
|
|
1410
|
+
return _context11.abrupt("continue", 21);
|
|
1411
|
+
case 20:
|
|
1412
|
+
return _context11.abrupt("continue", 21);
|
|
1413
|
+
case 21:
|
|
1414
|
+
_cdsItems = [];
|
|
1392
1415
|
_loop7 = /*#__PURE__*/_regeneratorRuntime.mark(function _loop7() {
|
|
1393
1416
|
var _itemCDS$find;
|
|
1394
1417
|
var item, cdsId;
|
|
1395
1418
|
return _regeneratorRuntime.wrap(function (_context10) {
|
|
1396
1419
|
while (1) switch (_context10.prev = _context10.next) {
|
|
1397
1420
|
case 0:
|
|
1398
|
-
item =
|
|
1421
|
+
item = targetItems[_i2];
|
|
1399
1422
|
cdsId = (_itemCDS$find = itemCDS.find(function (itCDS) {
|
|
1400
1423
|
return itCDS.itemID === item.itemID;
|
|
1401
1424
|
})) === null || _itemCDS$find === void 0 ? void 0 : _itemCDS$find.cabinet_door_style_id;
|
|
1402
1425
|
if (cdsId && !_cdsItems.some(function (v) {
|
|
1403
1426
|
return item.itemID === v.itemID && item.name === v.name && cdsId === v.cdsId;
|
|
1404
|
-
}))
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1427
|
+
})) {
|
|
1428
|
+
_cdsItems.push({
|
|
1429
|
+
itemID: item.itemID,
|
|
1430
|
+
prototype: item.prototype,
|
|
1431
|
+
category: item.category,
|
|
1432
|
+
name: item.name,
|
|
1433
|
+
type: item.type,
|
|
1434
|
+
sku_number: item.sku_number,
|
|
1435
|
+
cdsId: cdsId
|
|
1436
|
+
});
|
|
1437
|
+
}
|
|
1413
1438
|
case 1:
|
|
1414
1439
|
case "end":
|
|
1415
1440
|
return _context10.stop();
|
|
@@ -1417,18 +1442,17 @@ function _handleExternalEvent() {
|
|
|
1417
1442
|
}, _loop7);
|
|
1418
1443
|
});
|
|
1419
1444
|
_i2 = 0;
|
|
1420
|
-
case
|
|
1421
|
-
if (!(_i2 <
|
|
1422
|
-
_context11.next =
|
|
1445
|
+
case 22:
|
|
1446
|
+
if (!(_i2 < targetItems.length)) {
|
|
1447
|
+
_context11.next = 24;
|
|
1423
1448
|
break;
|
|
1424
1449
|
}
|
|
1425
|
-
return _context11.delegateYield(_loop7(), "t1",
|
|
1426
|
-
case
|
|
1450
|
+
return _context11.delegateYield(_loop7(), "t1", 23);
|
|
1451
|
+
case 23:
|
|
1427
1452
|
_i2++;
|
|
1428
|
-
_context11.next =
|
|
1453
|
+
_context11.next = 22;
|
|
1429
1454
|
break;
|
|
1430
|
-
case
|
|
1431
|
-
// request item catalog data to host app
|
|
1455
|
+
case 24:
|
|
1432
1456
|
if (_cdsItems.length > 0) {
|
|
1433
1457
|
(_props$onInternalEven2 = props.onInternalEvent) === null || _props$onInternalEven2 === void 0 || _props$onInternalEven2.call(props, {
|
|
1434
1458
|
type: INTERNAL_EVENT_ITEMS_CATALOG,
|
|
@@ -1455,7 +1479,7 @@ function _handleExternalEvent() {
|
|
|
1455
1479
|
_context1.next = 1;
|
|
1456
1480
|
break;
|
|
1457
1481
|
case 3:
|
|
1458
|
-
props.itemsActions.setDoorStyle(doorStyle, itemCDS,
|
|
1482
|
+
props.itemsActions.setDoorStyle(doorStyle, itemCDS, applyScope, itemIds);
|
|
1459
1483
|
case 4:
|
|
1460
1484
|
case "end":
|
|
1461
1485
|
return _context1.stop();
|
|
@@ -1466,99 +1490,101 @@ function _handleExternalEvent() {
|
|
|
1466
1490
|
return _ref4.apply(this, arguments);
|
|
1467
1491
|
};
|
|
1468
1492
|
}());
|
|
1469
|
-
} else
|
|
1470
|
-
|
|
1471
|
-
|
|
1493
|
+
} else {
|
|
1494
|
+
props.itemsActions.setDoorStyle(doorStyle, itemCDS, applyScope, itemIds);
|
|
1495
|
+
}
|
|
1496
|
+
return _context11.abrupt("continue", 49);
|
|
1497
|
+
case 25:
|
|
1472
1498
|
_evt$payload6 = evt.payload, roomShapeType = _evt$payload6.roomShapeType, width = _evt$payload6.width, height = _evt$payload6.height, measurementUnit = _evt$payload6.measurementUnit, _doorStyle = _evt$payload6.doorStyle;
|
|
1473
1499
|
props.projectActions.createRoomWithShape(roomShapeType, width, height, measurementUnit, _doorStyle);
|
|
1474
|
-
return _context11.abrupt("continue",
|
|
1475
|
-
case
|
|
1500
|
+
return _context11.abrupt("continue", 49);
|
|
1501
|
+
case 26:
|
|
1476
1502
|
value = state.getIn(['viewer2D']).toJS();
|
|
1477
1503
|
value.a += 0.1;
|
|
1478
1504
|
value.d += 0.1;
|
|
1479
1505
|
value.e -= value.SVGWidth * 0.1 / 2;
|
|
1480
1506
|
value.f -= value.SVGHeight * 0.1 / 2;
|
|
1481
1507
|
updateViwer2D(value, props.viewer2DActions);
|
|
1482
|
-
return _context11.abrupt("continue",
|
|
1483
|
-
case
|
|
1508
|
+
return _context11.abrupt("continue", 49);
|
|
1509
|
+
case 27:
|
|
1484
1510
|
_value = state.getIn(['viewer2D']).toJS();
|
|
1485
1511
|
_value.a -= 0.1;
|
|
1486
1512
|
_value.d -= 0.1;
|
|
1487
1513
|
_value.e += _value.SVGWidth * 0.1 / 2;
|
|
1488
1514
|
_value.f += _value.SVGHeight * 0.1 / 2;
|
|
1489
1515
|
updateViwer2D(_value, props.viewer2DActions);
|
|
1490
|
-
return _context11.abrupt("continue",
|
|
1491
|
-
case
|
|
1516
|
+
return _context11.abrupt("continue", 49);
|
|
1517
|
+
case 28:
|
|
1492
1518
|
centering2D(state, props.viewer2DActions);
|
|
1493
|
-
return _context11.abrupt("continue",
|
|
1494
|
-
case
|
|
1519
|
+
return _context11.abrupt("continue", 49);
|
|
1520
|
+
case 29:
|
|
1495
1521
|
props.projectActions.undo();
|
|
1496
|
-
return _context11.abrupt("continue",
|
|
1497
|
-
case
|
|
1522
|
+
return _context11.abrupt("continue", 49);
|
|
1523
|
+
case 30:
|
|
1498
1524
|
props.projectActions.redo();
|
|
1499
|
-
return _context11.abrupt("continue",
|
|
1500
|
-
case
|
|
1525
|
+
return _context11.abrupt("continue", 49);
|
|
1526
|
+
case 31:
|
|
1501
1527
|
_evt$payload7 = evt.payload, moldingInfo = _evt$payload7.moldingInfo, isGlobal = _evt$payload7.isGlobal;
|
|
1502
|
-
_context11.next =
|
|
1528
|
+
_context11.next = 32;
|
|
1503
1529
|
return loadMoldingSvg(moldingInfo);
|
|
1504
|
-
case
|
|
1530
|
+
case 32:
|
|
1505
1531
|
props.itemsActions.setMolding(moldingInfo, isGlobal);
|
|
1506
|
-
return _context11.abrupt("continue",
|
|
1507
|
-
case
|
|
1532
|
+
return _context11.abrupt("continue", 49);
|
|
1533
|
+
case 33:
|
|
1508
1534
|
distElement = getElement(evt.payload, state);
|
|
1509
1535
|
if (distElement) props.itemsActions.duplicateSelected(distElement, props.onInternalEvent);
|
|
1510
|
-
return _context11.abrupt("continue",
|
|
1511
|
-
case
|
|
1536
|
+
return _context11.abrupt("continue", 49);
|
|
1537
|
+
case 34:
|
|
1512
1538
|
_distElement = getElement(evt.payload, state);
|
|
1513
1539
|
if (_distElement) props.projectActions.remove(_distElement);
|
|
1514
|
-
return _context11.abrupt("continue",
|
|
1515
|
-
case
|
|
1540
|
+
return _context11.abrupt("continue", 49);
|
|
1541
|
+
case 35:
|
|
1516
1542
|
_evt$payload8 = evt.payload, option = _evt$payload8.option, _value2 = _evt$payload8.value;
|
|
1517
|
-
|
|
1518
|
-
_context11.next =
|
|
1543
|
+
_t7 = option;
|
|
1544
|
+
_context11.next = _t7 === PROJECT_SETTING_OPTION.CHANGE_MEASUREMENT_UNIT ? 36 : _t7 === PROJECT_SETTING_OPTION.UPDATE_CEIL_HEIGHT ? 37 : _t7 === PROJECT_SETTING_OPTION.CHANGE_WALL_LENGTH_MEASURE ? 38 : _t7 === PROJECT_SETTING_OPTION.CHANGE_BASE_CABINET_MEASURE ? 39 : _t7 === PROJECT_SETTING_OPTION.CHANGE_WALL_CABINET_MEASURE ? 40 : _t7 === PROJECT_SETTING_OPTION.CHANGE_WINDOW_DOOR_MEASURE ? 41 : 42;
|
|
1519
1545
|
break;
|
|
1520
|
-
case
|
|
1546
|
+
case 36:
|
|
1521
1547
|
props.viewer2DActions.updateCeilHeight(convert(layer.ceilHeight).from(layer.unit).to(_value2));
|
|
1522
1548
|
props.viewer2DActions.updateCeilHeightUnit(_value2);
|
|
1523
1549
|
props.viewer3DActions.update3DCeilHeightUnit(_value2);
|
|
1524
1550
|
props.viewer3DActions.update3DCeilHeight(convert(layer.ceilHeight).from(layer.unit).to(_value2));
|
|
1525
|
-
return _context11.abrupt("continue",
|
|
1526
|
-
case
|
|
1551
|
+
return _context11.abrupt("continue", 43);
|
|
1552
|
+
case 37:
|
|
1527
1553
|
props.viewer2DActions.updateCeilHeight(_value2);
|
|
1528
1554
|
props.viewer3DActions.update3DCeilHeight(_value2);
|
|
1529
|
-
return _context11.abrupt("continue",
|
|
1530
|
-
case
|
|
1555
|
+
return _context11.abrupt("continue", 43);
|
|
1556
|
+
case 38:
|
|
1531
1557
|
props.viewer2DActions.changeWallLengthMeasure(_value2);
|
|
1532
|
-
return _context11.abrupt("continue",
|
|
1533
|
-
case
|
|
1558
|
+
return _context11.abrupt("continue", 43);
|
|
1559
|
+
case 39:
|
|
1534
1560
|
props.viewer2DActions.changeBaseCabinetMeasure(_value2);
|
|
1535
|
-
return _context11.abrupt("continue",
|
|
1536
|
-
case
|
|
1561
|
+
return _context11.abrupt("continue", 43);
|
|
1562
|
+
case 40:
|
|
1537
1563
|
props.viewer2DActions.changeWallCabinetMeasure(_value2);
|
|
1538
|
-
return _context11.abrupt("continue",
|
|
1539
|
-
case
|
|
1564
|
+
return _context11.abrupt("continue", 43);
|
|
1565
|
+
case 41:
|
|
1540
1566
|
props.viewer2DActions.changeWindowDoorMeasure(_value2);
|
|
1541
|
-
return _context11.abrupt("continue",
|
|
1542
|
-
case
|
|
1543
|
-
return _context11.abrupt("continue",
|
|
1544
|
-
case
|
|
1545
|
-
return _context11.abrupt("continue",
|
|
1546
|
-
case
|
|
1567
|
+
return _context11.abrupt("continue", 43);
|
|
1568
|
+
case 42:
|
|
1569
|
+
return _context11.abrupt("continue", 43);
|
|
1570
|
+
case 43:
|
|
1571
|
+
return _context11.abrupt("continue", 49);
|
|
1572
|
+
case 44:
|
|
1547
1573
|
_layerId2 = state.getIn(['scene', 'selectedLayer']);
|
|
1548
1574
|
_layer = state.getIn(['scene', 'layers', _layerId2]);
|
|
1549
1575
|
_layer$getIn = _layer.getIn(['selected']), selectedLines = _layer$getIn.lines, selectedHoles = _layer$getIn.holes, selectedItems = _layer$getIn.items;
|
|
1550
1576
|
for (_i4 = 0; _i4 < selectedLines.size; _i4++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i4)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['lines', selectedLines.get(_i4)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1551
1577
|
for (_i5 = 0; _i5 < selectedHoles.size; _i5++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i5)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['holes', selectedHoles.get(_i5)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1552
1578
|
for (_i6 = 0; _i6 < selectedItems.size; _i6++) (evt === null || evt === void 0 ? void 0 : evt.type) === EXTERNAL_EVENT_UPDATE_ATTRIBUTE ? updateAttributeOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i6)]), evt.payload, state, _layer, props.catalog, props.projectActions, evt.callback) : updatePropertyOfSelectedElement(_layer.getIn(['items', selectedItems.get(_i6)]), evt.payload, props.catalog, props.projectActions, evt.callback);
|
|
1553
|
-
return _context11.abrupt("continue",
|
|
1554
|
-
case
|
|
1579
|
+
return _context11.abrupt("continue", 49);
|
|
1580
|
+
case 45:
|
|
1555
1581
|
_layerID = state.scene.selectedLayer;
|
|
1556
1582
|
_layer2 = state.scene.getIn(['layers', _layerID]).toJS();
|
|
1557
1583
|
orginalItemInfo = evt === null || evt === void 0 || (_evt$payload9 = evt.payload) === null || _evt$payload9 === void 0 ? void 0 : _evt$payload9.orginalItemInfo;
|
|
1558
1584
|
originalItem = _layer2 === null || _layer2 === void 0 ? void 0 : _layer2.items[orginalItemInfo.id];
|
|
1559
|
-
_context11.next =
|
|
1585
|
+
_context11.next = 46;
|
|
1560
1586
|
return addItemToCatalog(evt.payload.replaceItemInfo, state, props.catalog, props.projectActions);
|
|
1561
|
-
case
|
|
1587
|
+
case 46:
|
|
1562
1588
|
originalItemPos = {
|
|
1563
1589
|
rotation: originalItem.rotation,
|
|
1564
1590
|
selectedItemId: originalItem.id,
|
|
@@ -1573,11 +1599,11 @@ function _handleExternalEvent() {
|
|
|
1573
1599
|
}
|
|
1574
1600
|
};
|
|
1575
1601
|
props.itemsActions.replaceItem(originalItemPos, originalItem, replaceItem);
|
|
1576
|
-
return _context11.abrupt("continue",
|
|
1577
|
-
case
|
|
1602
|
+
return _context11.abrupt("continue", 49);
|
|
1603
|
+
case 47:
|
|
1578
1604
|
setFinishing(props, state, evt.payload);
|
|
1579
|
-
return _context11.abrupt("continue",
|
|
1580
|
-
case
|
|
1605
|
+
return _context11.abrupt("continue", 49);
|
|
1606
|
+
case 48:
|
|
1581
1607
|
sceneData = state.scene.toJS(); // get molding data for "ReviewForQuote"
|
|
1582
1608
|
currentTexture = layer.doorStyle !== null || layer.doorStyle !== undefined ? layer.doorStyle : props.state.doorStyle.toJS();
|
|
1583
1609
|
sceneData.layers[layerId].moldingData = getMoldingDataOfScene2(layer, props.catalog, currentTexture);
|
|
@@ -1588,8 +1614,8 @@ function _handleExternalEvent() {
|
|
|
1588
1614
|
scene: sceneData
|
|
1589
1615
|
}
|
|
1590
1616
|
});
|
|
1591
|
-
return _context11.abrupt("continue",
|
|
1592
|
-
case
|
|
1617
|
+
return _context11.abrupt("continue", 49);
|
|
1618
|
+
case 49:
|
|
1593
1619
|
case "end":
|
|
1594
1620
|
return _context11.stop();
|
|
1595
1621
|
}
|
|
@@ -278,12 +278,13 @@ function updateItemsAltitude(layerID, itemID, value) {
|
|
|
278
278
|
value: value
|
|
279
279
|
};
|
|
280
280
|
}
|
|
281
|
-
function setDoorStyle(doorStyle, itemCDS,
|
|
281
|
+
function setDoorStyle(doorStyle, itemCDS, applyScope, itemIds) {
|
|
282
282
|
return {
|
|
283
283
|
type: _constants.SET_DOOR_STYLE,
|
|
284
284
|
doorStyle: doorStyle,
|
|
285
285
|
itemCDS: itemCDS,
|
|
286
|
-
|
|
286
|
+
applyScope: applyScope,
|
|
287
|
+
itemIds: itemIds
|
|
287
288
|
};
|
|
288
289
|
}
|
|
289
290
|
function setCounterTop(counterTop) {
|
package/lib/class/item.js
CHANGED
|
@@ -1168,8 +1168,9 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1168
1168
|
}
|
|
1169
1169
|
}, {
|
|
1170
1170
|
key: "setDoorStyle",
|
|
1171
|
-
value: function setDoorStyle(state, doorStyle, itemCDS,
|
|
1171
|
+
value: function setDoorStyle(state, doorStyle, itemCDS, applyScope) {
|
|
1172
1172
|
var _this2 = this;
|
|
1173
|
+
var targetItemIDs = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : [];
|
|
1173
1174
|
if ((0, _utils.isEmpty)(doorStyle)) return {
|
|
1174
1175
|
updatedState: state
|
|
1175
1176
|
};
|
|
@@ -1194,10 +1195,33 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1194
1195
|
});
|
|
1195
1196
|
});
|
|
1196
1197
|
state = state.setIn(['scene', 'layers', layerID, 'molding'], temp_layer_molding);
|
|
1197
|
-
|
|
1198
|
+
|
|
1199
|
+
// 🔥 Determine which items to update
|
|
1200
|
+
var items = state.scene.layers.get(layerID).items;
|
|
1201
|
+
var itemsToProcess = [];
|
|
1202
|
+
var idSet = null;
|
|
1203
|
+
if (applyScope === _constants.DOORSTYLE_SCOPE_SINGLE) {
|
|
1204
|
+
var selectedItemIds = state.scene.layers.getIn([layerID, 'selected', 'items']).toJS();
|
|
1205
|
+
idSet = new Set(selectedItemIds);
|
|
1206
|
+
}
|
|
1207
|
+
if (applyScope === _constants.DOORSTYLE_SCOPE_MULTIPLE) {
|
|
1208
|
+
// targetItemIds contains item.id (instance IDs)
|
|
1209
|
+
idSet = new Set(targetItemIDs);
|
|
1210
|
+
}
|
|
1211
|
+
if (applyScope === _constants.DOORSTYLE_SCOPE_ALL) {
|
|
1212
|
+
items.forEach(function (item) {
|
|
1213
|
+
itemsToProcess.push(item);
|
|
1214
|
+
});
|
|
1215
|
+
} else if (idSet) {
|
|
1216
|
+
items.forEach(function (item) {
|
|
1217
|
+
if (idSet.has(item.id)) {
|
|
1218
|
+
itemsToProcess.push(item);
|
|
1219
|
+
}
|
|
1220
|
+
});
|
|
1221
|
+
}
|
|
1198
1222
|
var setDoorStyleOfItem = function setDoorStyleOfItem(data) {
|
|
1199
1223
|
var _cds$data;
|
|
1200
|
-
if (data.category !== 'cabinet') return;
|
|
1224
|
+
if (data.category !== 'cabinet') return;
|
|
1201
1225
|
var itemID = data.id;
|
|
1202
1226
|
var curItem = state.getIn(['scene', 'layers', layerID, 'items', itemID]);
|
|
1203
1227
|
var layer = state.getIn(['scene', 'layers', layerID]);
|
|
@@ -1221,9 +1245,7 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1221
1245
|
return element && element.is_euro_cds;
|
|
1222
1246
|
})) || [];
|
|
1223
1247
|
var cds_data = cds ? [cds] : [];
|
|
1224
|
-
if (
|
|
1225
|
-
// doorStyle.door_style_name === 'Euro & Frameless' &&
|
|
1226
|
-
euro_cds.length > 0) {
|
|
1248
|
+
if (euro_cds.length > 0) {
|
|
1227
1249
|
var newProperties = state.scene.getIn(['layers', layerID, 'items', itemID, 'properties']).toJS();
|
|
1228
1250
|
if (newProperties.hasOwnProperty('depth')) {
|
|
1229
1251
|
if (!newProperties.hasOwnProperty('oldDepth')) {
|
|
@@ -1305,7 +1327,6 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1305
1327
|
type: doorStyle.type,
|
|
1306
1328
|
sku: doorStyle.sku,
|
|
1307
1329
|
color_sku_alias: doorStyle.color_sku_alias,
|
|
1308
|
-
// alias name of color_sku for the current dealer
|
|
1309
1330
|
install: (0, _utils.getInstallationSuffix)(_constants.INSTALLATION_SUFFIX_TYPE.NAME, doorStyle),
|
|
1310
1331
|
doorStyles: _objectSpread(_objectSpread({}, tmp), {}, {
|
|
1311
1332
|
cds: cds_data
|
|
@@ -1313,25 +1334,9 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1313
1334
|
};
|
|
1314
1335
|
state = state.mergeIn(['scene', 'layers', layerID, 'items', itemID, 'doorStyle'], (0, _immutable.fromJS)(tmpDS));
|
|
1315
1336
|
};
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
|
-
} else {
|
|
1320
|
-
if (itemIDs.length > 0) {
|
|
1321
|
-
var _loop = function _loop() {
|
|
1322
|
-
var itemID = itemIDs[i];
|
|
1323
|
-
var items = state.scene.layers.get(layerID).items;
|
|
1324
|
-
items.forEach(function (data) {
|
|
1325
|
-
if (itemID === data.id) {
|
|
1326
|
-
setDoorStyleOfItem(data);
|
|
1327
|
-
}
|
|
1328
|
-
});
|
|
1329
|
-
};
|
|
1330
|
-
for (var i = 0; i < itemIDs.length; i++) {
|
|
1331
|
-
_loop();
|
|
1332
|
-
}
|
|
1333
|
-
}
|
|
1334
|
-
}
|
|
1337
|
+
|
|
1338
|
+
// 🔥 Apply to resolved items
|
|
1339
|
+
itemsToProcess.forEach(setDoorStyleOfItem);
|
|
1335
1340
|
return {
|
|
1336
1341
|
updatedState: state
|
|
1337
1342
|
};
|
|
@@ -1613,7 +1618,7 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1613
1618
|
}
|
|
1614
1619
|
});
|
|
1615
1620
|
var updateSelectItemMolding = function updateSelectItemMolding() {
|
|
1616
|
-
var
|
|
1621
|
+
var _loop = function _loop() {
|
|
1617
1622
|
// check whether snapped item is same as selected item in layoutpos(Wall, Tall, Base)
|
|
1618
1623
|
if (_export2.MoldingUtils.isSameMoldingLayoutpos(selectedItem, snappedItemGroup[i])) {
|
|
1619
1624
|
// check whether snapped item is same in location(same location type and height).
|
|
@@ -1635,7 +1640,7 @@ var Item = exports["default"] = /*#__PURE__*/function () {
|
|
|
1635
1640
|
}
|
|
1636
1641
|
};
|
|
1637
1642
|
for (var i = 0; i < snappedItemGroup.length; i++) {
|
|
1638
|
-
|
|
1643
|
+
_loop();
|
|
1639
1644
|
}
|
|
1640
1645
|
};
|
|
1641
1646
|
var emptyMoldingArray = function emptyMoldingArray() {
|
|
@@ -48,9 +48,6 @@ var _utils = require("../viewer2d/utils");
|
|
|
48
48
|
var _helper = require("../../utils/helper");
|
|
49
49
|
var _math = require("../../utils/math");
|
|
50
50
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
51
|
-
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
52
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
53
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
54
51
|
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; }
|
|
55
52
|
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) { (0, _defineProperty2["default"])(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; }
|
|
56
53
|
var transformBox;
|
|
@@ -3049,11 +3046,11 @@ function createBacksplash(item, layer, planData, scene) {
|
|
|
3049
3046
|
var wLines = (0, _geometry2.getSnappedWallLines)(item.itemInfo, layer, planData.catalog);
|
|
3050
3047
|
var curLine = wLines.length > 0 ? wLines[0] : null;
|
|
3051
3048
|
|
|
3052
|
-
// Get wall items
|
|
3049
|
+
// Get wall items which snapped to the curLine
|
|
3053
3050
|
|
|
3054
3051
|
var i,
|
|
3055
3052
|
wallItems = [];
|
|
3056
|
-
var allWallItems = _export.GeometryUtils.getAllItemSpecified(scene, planData.catalog, _constants.WALL_CABINET_LAYOUTPOS);
|
|
3053
|
+
var allWallItems = _export.GeometryUtils.getAllItemSpecified(scene, planData.catalog, _constants.WALL_CABINET_LAYOUTPOS, curLine === null || curLine === void 0 ? void 0 : curLine.lineRect);
|
|
3057
3054
|
for (i = 0; i < allWallItems.others.length; i++) wallItems.push(allWallItems.others[i]);
|
|
3058
3055
|
if (allWallItems.cur) wallItems.push(allWallItems.cur);
|
|
3059
3056
|
|
|
@@ -3130,37 +3127,37 @@ function createBacksplash(item, layer, planData, scene) {
|
|
|
3130
3127
|
|
|
3131
3128
|
// Find mergeable other backsplashes
|
|
3132
3129
|
|
|
3133
|
-
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
|
|
3137
|
-
|
|
3138
|
-
|
|
3139
|
-
|
|
3140
|
-
|
|
3141
|
-
|
|
3142
|
-
|
|
3143
|
-
|
|
3144
|
-
|
|
3145
|
-
|
|
3146
|
-
|
|
3147
|
-
|
|
3148
|
-
|
|
3130
|
+
// let info,
|
|
3131
|
+
// wholeWidth,
|
|
3132
|
+
// /** Width factor */ factor,
|
|
3133
|
+
// distance,
|
|
3134
|
+
// halfWidth,
|
|
3135
|
+
// /** To get new center */ centerFactor;
|
|
3136
|
+
|
|
3137
|
+
// for (let back of backsplashes) {
|
|
3138
|
+
// info = back.info;
|
|
3139
|
+
// if (info.height === splashHeight && info.rotY === rotY) {
|
|
3140
|
+
// factor = Math.cos(rotY) || 1;
|
|
3141
|
+
// distance = Math.hypot(posX - info.posX, posZ - info.posZ) / factor;
|
|
3142
|
+
// halfWidth = (info.width + splashWidth) / 2;
|
|
3143
|
+
|
|
3144
|
+
// if (Math.abs(distance - halfWidth) < 1e-2) {
|
|
3145
|
+
// // dispose `back`
|
|
3146
|
+
// if (info.id) {
|
|
3147
|
+
// deleteSpecifiedMeshObjects('backsplash' + info.id);
|
|
3148
|
+
// }
|
|
3149
|
+
|
|
3150
|
+
// // Get center position
|
|
3151
|
+
// wholeWidth = info.width + splashWidth;
|
|
3152
|
+
// centerFactor = info.width / wholeWidth;
|
|
3153
|
+
// posX = posX + centerFactor * (info.posX - posX);
|
|
3154
|
+
// posZ = posZ + centerFactor * (info.posZ - posZ);
|
|
3155
|
+
|
|
3156
|
+
// splashWidth = wholeWidth;
|
|
3157
|
+
// }
|
|
3158
|
+
// }
|
|
3159
|
+
// }
|
|
3149
3160
|
|
|
3150
|
-
// Get center position
|
|
3151
|
-
wholeWidth = info.width + splashWidth;
|
|
3152
|
-
centerFactor = info.width / wholeWidth;
|
|
3153
|
-
posX = posX + centerFactor * (info.posX - posX);
|
|
3154
|
-
posZ = posZ + centerFactor * (info.posZ - posZ);
|
|
3155
|
-
splashWidth = wholeWidth;
|
|
3156
|
-
}
|
|
3157
|
-
}
|
|
3158
|
-
}
|
|
3159
|
-
} catch (err) {
|
|
3160
|
-
_iterator.e(err);
|
|
3161
|
-
} finally {
|
|
3162
|
-
_iterator.f();
|
|
3163
|
-
}
|
|
3164
3161
|
itemToSave.info.posX = posX;
|
|
3165
3162
|
itemToSave.info.posY = posY;
|
|
3166
3163
|
itemToSave.info.posZ = posZ;
|
|
@@ -3209,9 +3206,9 @@ function createBacksplash(item, layer, planData, scene) {
|
|
|
3209
3206
|
}
|
|
3210
3207
|
itemToSave.info.id = item.itemInfo.id;
|
|
3211
3208
|
deleteSpecifiedMeshObjects('backsplash' + item.itemInfo.id);
|
|
3212
|
-
if (item.rotRad % (Math.PI / 2)
|
|
3209
|
+
if (Math.abs(item.rotRad % (Math.PI / 2)) < _constants.EPSILON) planData.plan.add(backsplash);
|
|
3213
3210
|
backsplash.name = name;
|
|
3214
|
-
backsplash.visible = item.itemInfo.get('backsplashVisible') && backsplashApplied && item.rotRad % (Math.PI / 2)
|
|
3211
|
+
backsplash.visible = item.itemInfo.get('backsplashVisible') && backsplashApplied && Math.abs(item.rotRad % (Math.PI / 2)) < _constants.EPSILON;
|
|
3215
3212
|
|
|
3216
3213
|
// Save to scene graph
|
|
3217
3214
|
|