kitchen-simulator 1.1.1-test.64 → 1.1.1-test.65
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/@history.js +10 -2
- package/es/AppContext.js +10 -3
- package/es/KitchenConfigurator.js +79 -70
- package/es/KitchenConfiguratorApp.js +107 -98
- package/es/actions/area-actions.js +12 -5
- package/es/actions/export.js +29 -12
- package/es/actions/groups-actions.js +45 -27
- package/es/actions/holes-actions.js +55 -34
- package/es/actions/items-actions.js +145 -94
- package/es/actions/lines-actions.js +36 -21
- package/es/actions/project-actions.js +145 -94
- package/es/actions/scene-actions.js +21 -11
- package/es/actions/vertices-actions.js +15 -7
- package/es/actions/viewer2d-actions.js +36 -21
- package/es/actions/viewer3d-actions.js +18 -9
- package/es/catalog/areas/area/planner-element.js +9 -2
- package/es/catalog/catalog.js +21 -15
- package/es/catalog/factories/area-factory-3d.js +31 -22
- package/es/catalog/factories/area-factory.js +20 -11
- package/es/catalog/factories/export.js +24 -6
- package/es/catalog/factories/wall-factory-3d.js +41 -31
- package/es/catalog/factories/wall-factory.js +31 -21
- package/es/catalog/holes/door-closet/planner-element.js +24 -15
- package/es/catalog/holes/door-double/planner-element.js +24 -15
- package/es/catalog/holes/door-exterior/planner-element.js +25 -16
- package/es/catalog/holes/door-interior/planner-element.js +25 -16
- package/es/catalog/holes/door-panic/planner-element.js +16 -7
- package/es/catalog/holes/door-panic-double/planner-element.js +24 -15
- package/es/catalog/holes/door-sliding/planner-element.js +25 -16
- package/es/catalog/holes/doorway-framed/planner-element.js +20 -11
- package/es/catalog/holes/doorway-frameless/planner-element.js +16 -7
- package/es/catalog/holes/export.js +97 -13
- package/es/catalog/holes/window-clear/planner-element.js +19 -10
- package/es/catalog/holes/window-cross/planner-element.js +19 -10
- package/es/catalog/holes/window-double-hung/planner-element.js +19 -10
- package/es/catalog/holes/window-vertical/planner-element.js +19 -10
- package/es/catalog/lines/wall/planner-element.js +9 -2
- package/es/catalog/molding/molding-dcm/planner-element.js +14 -5
- package/es/catalog/molding/molding-fbm/planner-element.js +14 -5
- package/es/catalog/molding/molding-lrm/planner-element.js +14 -5
- package/es/catalog/properties/export.js +80 -20
- package/es/catalog/properties/property-checkbox.js +31 -24
- package/es/catalog/properties/property-color.js +23 -16
- package/es/catalog/properties/property-enum.js +31 -24
- package/es/catalog/properties/property-hidden.js +16 -9
- package/es/catalog/properties/property-lenght-measure.js +45 -38
- package/es/catalog/properties/property-length-measure.js +43 -36
- package/es/catalog/properties/property-length-measure_hole.js +45 -38
- package/es/catalog/properties/property-number.js +24 -17
- package/es/catalog/properties/property-read-only.js +23 -16
- package/es/catalog/properties/property-string.js +23 -16
- package/es/catalog/properties/property-toggle.js +23 -16
- package/es/catalog/properties/shared-property-style.js +7 -1
- package/es/catalog/utils/FuseUtils.js +15 -8
- package/es/catalog/utils/exporter.js +15 -8
- package/es/catalog/utils/geom-utils.js +29 -13
- package/es/catalog/utils/item-loader.js +97 -84
- package/es/catalog/utils/load-obj.js +28 -20
- package/es/catalog/utils/mtl-loader.js +8 -3
- package/es/catalog/utils/obj-loader.js +8 -3
- package/es/class/FuseUtils.js +15 -8
- package/es/class/area.js +28 -22
- package/es/class/export.js +95 -23
- package/es/class/group.js +59 -53
- package/es/class/guide.js +21 -15
- package/es/class/hole.js +89 -83
- package/es/class/item.js +147 -141
- package/es/class/layer.js +65 -59
- package/es/class/line.js +143 -135
- package/es/class/project.js +98 -90
- package/es/class/vertex.js +35 -29
- package/es/components/content.js +28 -19
- package/es/components/disclaimer/disclaimer.js +18 -10
- package/es/components/export.js +32 -8
- package/es/components/style/button.js +31 -23
- package/es/components/style/cancel-button.js +14 -7
- package/es/components/style/content-container.js +16 -9
- package/es/components/style/content-title.js +20 -11
- package/es/components/style/delete-button.js +17 -8
- package/es/components/style/export.js +120 -30
- package/es/components/style/form-block.js +15 -8
- package/es/components/style/form-color-input.js +14 -7
- package/es/components/style/form-label.js +15 -8
- package/es/components/style/form-number-input.js +49 -41
- package/es/components/style/form-number-input_2.js +44 -36
- package/es/components/style/form-select.js +24 -17
- package/es/components/style/form-slider.js +17 -10
- package/es/components/style/form-submit-button.js +17 -8
- package/es/components/style/form-text-input.js +34 -26
- package/es/components/viewer2d/area.js +24 -17
- package/es/components/viewer2d/export.js +120 -30
- package/es/components/viewer2d/grids/grid-horizontal-streak.js +17 -10
- package/es/components/viewer2d/grids/grid-streak.js +17 -10
- package/es/components/viewer2d/grids/grid-vertical-streak.js +17 -10
- package/es/components/viewer2d/grids/grids.js +19 -10
- package/es/components/viewer2d/group.js +24 -15
- package/es/components/viewer2d/item.js +70 -61
- package/es/components/viewer2d/layer.js +30 -23
- package/es/components/viewer2d/line.js +111 -101
- package/es/components/viewer2d/ruler.js +29 -22
- package/es/components/viewer2d/rulerDist.js +28 -21
- package/es/components/viewer2d/rulerX.js +47 -39
- package/es/components/viewer2d/rulerY.js +45 -37
- package/es/components/viewer2d/scene.js +38 -30
- package/es/components/viewer2d/snap.js +22 -13
- package/es/components/viewer2d/state.js +27 -18
- package/es/components/viewer2d/utils.js +37 -24
- package/es/components/viewer2d/vertex.js +17 -8
- package/es/components/viewer2d/viewer2d.js +163 -153
- package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +23 -17
- package/es/components/viewer3d/dcm.js +7 -1
- package/es/components/viewer3d/fbm.js +7 -1
- package/es/components/viewer3d/front3D.js +21 -12
- package/es/components/viewer3d/grid-creator.js +17 -8
- package/es/components/viewer3d/grids/grid-horizontal-streak.js +14 -6
- package/es/components/viewer3d/grids/grid-streak.js +13 -5
- package/es/components/viewer3d/grids/grid-vertical-streak.js +14 -6
- package/es/components/viewer3d/libs/first-person-controls.js +9 -2
- package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +7 -1
- package/es/components/viewer3d/libs/mtl-loader.js +7 -1
- package/es/components/viewer3d/libs/obj-loader.js +7 -1
- package/es/components/viewer3d/libs/orbit-controls.js +8 -2
- package/es/components/viewer3d/libs/pointer-lock-controls.js +8 -2
- package/es/components/viewer3d/lrm.js +7 -1
- package/es/components/viewer3d/model.js +7 -1
- package/es/components/viewer3d/pointer-lock-navigation.js +10 -3
- package/es/components/viewer3d/ruler-utils/itemRect.js +25 -18
- package/es/components/viewer3d/ruler-utils/layer3D.js +66 -59
- package/es/components/viewer3d/ruler-utils/ruler3D.js +46 -39
- package/es/components/viewer3d/ruler-utils/scene3D.js +17 -9
- package/es/components/viewer3d/ruler-utils/state3D.js +11 -4
- package/es/components/viewer3d/scene-creator.js +226 -191
- package/es/components/viewer3d/three-memory-cleaner.js +12 -3
- package/es/components/viewer3d/viewer3d-first-person.js +46 -40
- package/es/components/viewer3d/viewer3d.js +202 -196
- package/es/constants.js +358 -349
- package/es/index.js +15 -7
- package/es/models.js +184 -177
- package/es/plugins/SVGLoader.js +53 -48
- package/es/plugins/autosave.js +9 -3
- package/es/plugins/console-debugger.js +12 -5
- package/es/plugins/export.js +32 -8
- package/es/plugins/keyboard.js +35 -29
- package/es/reducers/areas-reducer.js +13 -7
- package/es/reducers/export.js +96 -24
- package/es/reducers/groups-reducer.js +37 -31
- package/es/reducers/holes-reducer.js +49 -43
- package/es/reducers/items-reducer.js +112 -106
- package/es/reducers/lines-reducer.js +34 -28
- package/es/reducers/project-reducer.js +111 -105
- package/es/reducers/reducer.js +23 -16
- package/es/reducers/scene-reducer.js +21 -15
- package/es/reducers/user-reducer.js +11 -5
- package/es/reducers/vertices-reducer.js +17 -11
- package/es/reducers/viewer2d-reducer.js +24 -18
- package/es/reducers/viewer3d-reducer.js +22 -16
- package/es/shared-style.js +16 -10
- package/es/styles/export.js +11 -3
- package/es/translator/en.js +7 -1
- package/es/translator/it.js +7 -1
- package/es/translator/ru.js +7 -1
- package/es/translator/translator.js +19 -13
- package/es/utils/browser.js +9 -2
- package/es/utils/convert-units-lite.js +7 -1
- package/es/utils/email-validator.js +7 -1
- package/es/utils/export.js +46 -15
- package/es/utils/geometry.js +278 -181
- package/es/utils/get-edges-of-subgraphs.js +9 -2
- package/es/utils/graph-cycles.js +11 -8
- package/es/utils/graph-inner-cycles.js +18 -10
- package/es/utils/graph.js +17 -9
- package/es/utils/helper.js +63 -39
- package/es/utils/history.js +15 -8
- package/es/utils/id-broker.js +15 -8
- package/es/utils/logger.js +7 -1
- package/es/utils/math.js +12 -5
- package/es/utils/molding.js +144 -119
- package/es/utils/name-generator.js +13 -7
- package/es/utils/objects-utils.js +19 -7
- package/es/utils/phone-validator.js +7 -1
- package/es/utils/process-black-list.js +10 -3
- package/es/utils/react-if.js +12 -6
- package/es/utils/snap-scene.js +34 -27
- package/es/utils/snap.js +59 -45
- package/es/utils/summarizeCart.js +7 -1
- package/es/utils/threeCSG.es6.js +22 -13
- package/es/version.js +7 -1
- package/package.json +1 -1
|
@@ -1,19 +1,32 @@
|
|
|
1
|
-
|
|
2
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
4
|
-
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; }
|
|
5
|
-
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; }
|
|
6
|
-
import { convert } from "../../utils/convert-units-lite";
|
|
7
|
-
import { fromJS, Map } from 'immutable';
|
|
8
|
-
import React, { useState } from 'react';
|
|
9
|
-
import * as Three from 'three';
|
|
10
|
-
import * as SceneCreator from "../../components/viewer3d/scene-creator";
|
|
11
|
-
import { ARROW_COLOR, BASE_CABINET_LAYOUTPOS, OBJTYPE_GROUP, OBJTYPE_MESH, SHADE_DARK_PURPLE_COLOR, SHAPE_SVG_DEPTH, SHAPE_SVG_PADDING, SHAPE_SVG_WIDTH, STATUS_WARNING_COLOR, STATUS_WARNING_LIGHT_COLOR, TALL_CABINET_LAYOUTPOS, UNIT_CENTIMETER, UNIT_INCH, WALL_CABINET_LAYOUTPOS } from "../../constants";
|
|
12
|
-
import { Item } from "../../models";
|
|
13
|
-
import * as GeomUtils from "./geom-utils";
|
|
14
|
-
import { loadGLTF } from "./load-obj";
|
|
15
|
-
import { animateDoor, translateDrawer } from "../../utils/helper";
|
|
1
|
+
"use strict";
|
|
16
2
|
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof3 = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.addEdgesToMesh = addEdgesToMesh;
|
|
9
|
+
exports.loadTexture = loadTexture;
|
|
10
|
+
exports.render2DItem = render2DItem;
|
|
11
|
+
exports.render3DApplianceItem = render3DApplianceItem;
|
|
12
|
+
exports.render3DItem = render3DItem;
|
|
13
|
+
exports.render3DLightingItem = render3DLightingItem;
|
|
14
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/typeof"));
|
|
15
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/defineProperty"));
|
|
16
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
17
|
+
var _convertUnitsLite = require("../../utils/convert-units-lite");
|
|
18
|
+
var _immutable = require("immutable");
|
|
19
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
20
|
+
var Three = _interopRequireWildcard(require("three"));
|
|
21
|
+
var SceneCreator = _interopRequireWildcard(require("../../components/viewer3d/scene-creator"));
|
|
22
|
+
var _constants = require("../../constants");
|
|
23
|
+
var _models = require("../../models");
|
|
24
|
+
var GeomUtils = _interopRequireWildcard(require("./geom-utils"));
|
|
25
|
+
var _loadObj = require("./load-obj");
|
|
26
|
+
var _helper = require("../../utils/helper");
|
|
27
|
+
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" != _typeof3(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 _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
|
|
28
|
+
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; }
|
|
29
|
+
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; }
|
|
17
30
|
// env Map ///////////////
|
|
18
31
|
var paramsCounter = {
|
|
19
32
|
envMap: 'HDR',
|
|
@@ -43,9 +56,9 @@ var paramsModel = {
|
|
|
43
56
|
var cachedObject = {}; // cached Object for quickly load-3d
|
|
44
57
|
|
|
45
58
|
// render 2d function//////
|
|
46
|
-
|
|
47
|
-
var _useState = useState(false),
|
|
48
|
-
_useState2 =
|
|
59
|
+
function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corner, shape_svg) {
|
|
60
|
+
var _useState = (0, _react.useState)(false),
|
|
61
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
49
62
|
hover = _useState2[0],
|
|
50
63
|
setHover = _useState2[1];
|
|
51
64
|
var x = element.x,
|
|
@@ -88,24 +101,24 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
88
101
|
length: tempDepth.get('_length'),
|
|
89
102
|
unit: tempDepth.get('_unit')
|
|
90
103
|
};
|
|
91
|
-
var originalWidth = convert(sizeinfo.width).from('in').to('cm');
|
|
92
|
-
var originalDepth = convert(sizeinfo.depth).from('in').to('cm');
|
|
93
|
-
var newWidth = convert(width.length).from(width.unit).to('cm');
|
|
94
|
-
var newDepth = convert(depth.length).from(depth.unit).to('cm');
|
|
95
|
-
var padding = convert(SHAPE_SVG_PADDING).from(UNIT_INCH).to(UNIT_CENTIMETER);
|
|
104
|
+
var originalWidth = (0, _convertUnitsLite.convert)(sizeinfo.width).from('in').to('cm');
|
|
105
|
+
var originalDepth = (0, _convertUnitsLite.convert)(sizeinfo.depth).from('in').to('cm');
|
|
106
|
+
var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
|
|
107
|
+
var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
|
|
108
|
+
var padding = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_PADDING).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
|
|
96
109
|
var angle = element.rotation + 90;
|
|
97
110
|
var textRotation = 0;
|
|
98
111
|
if (Math.sin(angle * Math.PI / 180) < 0) {
|
|
99
112
|
textRotation = 180;
|
|
100
113
|
}
|
|
101
114
|
var color = '#eee';
|
|
102
|
-
if (layoutpos == BASE_CABINET_LAYOUTPOS) {
|
|
115
|
+
if (layoutpos == _constants.BASE_CABINET_LAYOUTPOS) {
|
|
103
116
|
color = '#3f8db3';
|
|
104
117
|
}
|
|
105
|
-
if (layoutpos == TALL_CABINET_LAYOUTPOS) {
|
|
118
|
+
if (layoutpos == _constants.TALL_CABINET_LAYOUTPOS) {
|
|
106
119
|
color = '#93b3be';
|
|
107
120
|
}
|
|
108
|
-
if (layoutpos == WALL_CABINET_LAYOUTPOS) {
|
|
121
|
+
if (layoutpos == _constants.WALL_CABINET_LAYOUTPOS) {
|
|
109
122
|
color = '#48b08dcc';
|
|
110
123
|
}
|
|
111
124
|
var splitStr = [];
|
|
@@ -119,7 +132,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
119
132
|
if (objSKU.length !== 0) {
|
|
120
133
|
var dcId,
|
|
121
134
|
doorStyle = element.doorStyle;
|
|
122
|
-
if (doorStyle instanceof Map) {
|
|
135
|
+
if (doorStyle instanceof _immutable.Map) {
|
|
123
136
|
dcId = doorStyle.get('id');
|
|
124
137
|
} else {
|
|
125
138
|
dcId = doorStyle.id;
|
|
@@ -138,7 +151,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
138
151
|
}
|
|
139
152
|
splitStr.push(type.slice(lineCount * rowCount));
|
|
140
153
|
splitStr.forEach(function (el, key) {
|
|
141
|
-
txtContent.push(/*#__PURE__*/
|
|
154
|
+
txtContent.push(/*#__PURE__*/_react["default"].createElement("text", {
|
|
142
155
|
key: 'text' + key,
|
|
143
156
|
x: "0",
|
|
144
157
|
y: newDepth / 2 - 12,
|
|
@@ -182,12 +195,12 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
182
195
|
// } else {
|
|
183
196
|
// }
|
|
184
197
|
svg_url = shape_svg.url;
|
|
185
|
-
svg_width = convert(SHAPE_SVG_WIDTH).from(UNIT_INCH).to(UNIT_CENTIMETER);
|
|
186
|
-
svg_depth = convert(SHAPE_SVG_DEPTH).from(UNIT_INCH).to(UNIT_CENTIMETER);
|
|
198
|
+
svg_width = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_WIDTH).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
|
|
199
|
+
svg_depth = (0, _convertUnitsLite.convert)(_constants.SHAPE_SVG_DEPTH).from(_constants.UNIT_INCH).to(_constants.UNIT_CENTIMETER);
|
|
187
200
|
}
|
|
188
201
|
var padding_width = padding * newWidth / svg_width;
|
|
189
202
|
var padding_depth = padding * newDepth / svg_depth;
|
|
190
|
-
rendered = /*#__PURE__*/
|
|
203
|
+
rendered = /*#__PURE__*/_react["default"].createElement("g", {
|
|
191
204
|
onMouseOver: function onMouseOver(event) {
|
|
192
205
|
setHover(true);
|
|
193
206
|
},
|
|
@@ -195,11 +208,11 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
195
208
|
setHover(false);
|
|
196
209
|
},
|
|
197
210
|
transform: "translate(".concat(x, ",").concat(y, ")")
|
|
198
|
-
}, /*#__PURE__*/
|
|
211
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
199
212
|
transform: "rotate(".concat(rotation, ")")
|
|
200
|
-
}, /*#__PURE__*/
|
|
213
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
201
214
|
transform: "translate(".concat(-newWidth / 2 - padding_width, ",").concat(-newDepth / 2 - padding_depth, ")")
|
|
202
|
-
}, /*#__PURE__*/
|
|
215
|
+
}, /*#__PURE__*/_react["default"].createElement("image", {
|
|
203
216
|
preserveAspectRatio: "none",
|
|
204
217
|
style: {
|
|
205
218
|
pointerEvents: 'none'
|
|
@@ -210,7 +223,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
210
223
|
transform: "scale(1, -1)",
|
|
211
224
|
x: "0",
|
|
212
225
|
y: "".concat(-newDepth - 2 * padding_depth)
|
|
213
|
-
}), /*#__PURE__*/
|
|
226
|
+
}), /*#__PURE__*/_react["default"].createElement("rect", {
|
|
214
227
|
x: "".concat(padding_width),
|
|
215
228
|
y: "".concat(padding_depth),
|
|
216
229
|
width: "".concat(newWidth),
|
|
@@ -223,14 +236,14 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
223
236
|
opacity: 0.7,
|
|
224
237
|
postion: 'relative'
|
|
225
238
|
},
|
|
226
|
-
fill: STATUS_WARNING_LIGHT_COLOR,
|
|
227
|
-
stroke: STATUS_WARNING_COLOR,
|
|
239
|
+
fill: _constants.STATUS_WARNING_LIGHT_COLOR,
|
|
240
|
+
stroke: _constants.STATUS_WARNING_COLOR,
|
|
228
241
|
strokeWidth: "2px"
|
|
229
|
-
}), /*#__PURE__*/
|
|
242
|
+
}), /*#__PURE__*/_react["default"].createElement("g", {
|
|
230
243
|
transform: "translate(".concat(padding_width, ",").concat(padding_depth, ")")
|
|
231
244
|
}, txtContent))));
|
|
232
245
|
} else {
|
|
233
|
-
rendered = /*#__PURE__*/
|
|
246
|
+
rendered = /*#__PURE__*/_react["default"].createElement("g", {
|
|
234
247
|
onMouseOver: function onMouseOver(event) {
|
|
235
248
|
setHover(true);
|
|
236
249
|
},
|
|
@@ -238,22 +251,22 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
238
251
|
setHover(false);
|
|
239
252
|
},
|
|
240
253
|
transform: "translate(".concat(x, ",").concat(y, ")")
|
|
241
|
-
}, /*#__PURE__*/
|
|
254
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
242
255
|
transform: "rotate(".concat(rotation, ")")
|
|
243
|
-
}, /*#__PURE__*/
|
|
256
|
+
}, /*#__PURE__*/_react["default"].createElement("g", {
|
|
244
257
|
transform: "translate(".concat(-newWidth / 2, ",").concat(-newDepth / 2, ")")
|
|
245
|
-
}, newDepth > 15 ? [/*#__PURE__*/
|
|
258
|
+
}, newDepth > 15 ? [/*#__PURE__*/_react["default"].createElement("rect", {
|
|
246
259
|
key: "base",
|
|
247
260
|
x: "0",
|
|
248
261
|
y: "12",
|
|
249
262
|
width: newWidth,
|
|
250
263
|
height: newDepth - 12,
|
|
251
264
|
style: style
|
|
252
|
-
}), /*#__PURE__*/
|
|
265
|
+
}), /*#__PURE__*/_react["default"].createElement("polygon", {
|
|
253
266
|
key: "door",
|
|
254
267
|
style: style,
|
|
255
268
|
points: "0,9 ".concat(newWidth, ",9 ").concat(newWidth, ",6 ").concat(newWidth - 5, ",6 ").concat(newWidth - 5, ",3 ").concat(newWidth - 2, ",3 ").concat(newWidth - 2, " 0 ").concat(newWidth - 10, " 0 ").concat(newWidth - 10, ",3 ").concat(newWidth - 7, ",3 ").concat(newWidth - 7, ",6 0 6")
|
|
256
|
-
})] : /*#__PURE__*/
|
|
269
|
+
})] : /*#__PURE__*/_react["default"].createElement("rect", {
|
|
257
270
|
key: "base",
|
|
258
271
|
x: "0",
|
|
259
272
|
y: "0",
|
|
@@ -266,7 +279,7 @@ export function render2DItem(element, layer, scene, sizeinfo, layoutpos, is_corn
|
|
|
266
279
|
}
|
|
267
280
|
// end of render 2d function /////////////////////////
|
|
268
281
|
|
|
269
|
-
|
|
282
|
+
function loadTexture(url) {
|
|
270
283
|
var texture = new Three.TextureLoader().load(url);
|
|
271
284
|
texture.colorSpace = Three.SRGBColorSpace;
|
|
272
285
|
texture.wrapS = Three.MirroredRepeatWrapping;
|
|
@@ -311,10 +324,10 @@ var assignUVs = function assignUVs(geometry) {
|
|
|
311
324
|
* @param sizeinfo Dimesion of the item
|
|
312
325
|
* @param structure_json Structure of the item such as place holders and meshes, etc
|
|
313
326
|
*/
|
|
314
|
-
|
|
327
|
+
function render3DItem(element, layer, scene, sizeinfo, structure_json, is_corner) {
|
|
315
328
|
var mode = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : null;
|
|
316
|
-
if (element.doorStyle.constructor !== Map) {
|
|
317
|
-
element = element.set('doorStyle', fromJS(element.doorStyle));
|
|
329
|
+
if (element.doorStyle.constructor !== _immutable.Map) {
|
|
330
|
+
element = element.set('doorStyle', (0, _immutable.fromJS)(element.doorStyle));
|
|
318
331
|
}
|
|
319
332
|
if (element.doorStyle.toJS().handle_gltf !== '') {
|
|
320
333
|
// Check element has doorHandle
|
|
@@ -336,9 +349,9 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
336
349
|
length: sizeinfo.height,
|
|
337
350
|
unit: 'in'
|
|
338
351
|
};
|
|
339
|
-
var newWidth = convert(width.length).from(width.unit).to('in');
|
|
340
|
-
var newDepth = convert(depth.length).from(depth.unit).to('in');
|
|
341
|
-
var newHeight = convert(height.length).from(height.unit).to('in');
|
|
352
|
+
var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('in');
|
|
353
|
+
var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('in');
|
|
354
|
+
var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('in');
|
|
342
355
|
var mainName = ''; // to get name structure//
|
|
343
356
|
if (element.properties.get('width')) newWidth = element.getIn(['properties', 'width', '_length']);
|
|
344
357
|
if (element.properties.get('depth')) newDepth = element.getIn(['properties', 'depth', '_length']);
|
|
@@ -356,7 +369,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
356
369
|
counterTop.uri = layer.toJS().counterTop.uri;
|
|
357
370
|
}
|
|
358
371
|
if ('name' in element.doorStyle) {
|
|
359
|
-
doorStyles = new Map(element.doorStyle.doorStyles);
|
|
372
|
+
doorStyles = new _immutable.Map(element.doorStyle.doorStyles);
|
|
360
373
|
color = element.doorStyle.color;
|
|
361
374
|
glossness = element.doorStyle.glossness;
|
|
362
375
|
handleMaterial.metalness = element.doorStyle.metalness;
|
|
@@ -399,7 +412,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
399
412
|
var object1 = object;
|
|
400
413
|
var newAltitude = element.properties.get('altitude').get('_length');
|
|
401
414
|
var newUnit = element.properties.get('altitude').get('_unit') || 'in';
|
|
402
|
-
newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
|
|
415
|
+
newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
|
|
403
416
|
var _element = element.toJS();
|
|
404
417
|
if (!_element.doorStyle.doorStyles.is_euro_cds) {
|
|
405
418
|
object1.scale.set(100 * newWidth / sizeinfo.width, 100 * newHeight / sizeinfo.height, 100 * newDepth / sizeinfo.depth);
|
|
@@ -537,7 +550,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
537
550
|
transparent: true,
|
|
538
551
|
opacity: 0.4
|
|
539
552
|
}));
|
|
540
|
-
var _color = new Three.Color(SHADE_DARK_PURPLE_COLOR).convertLinearToSRGB();
|
|
553
|
+
var _color = new Three.Color(_constants.SHADE_DARK_PURPLE_COLOR).convertLinearToSRGB();
|
|
541
554
|
var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
|
|
542
555
|
color: _color
|
|
543
556
|
}));
|
|
@@ -619,7 +632,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
619
632
|
SceneCreator.updateDoorHandleMesh(element, object1, true);
|
|
620
633
|
}
|
|
621
634
|
object1.traverse(function (obj) {
|
|
622
|
-
if (obj.type === OBJTYPE_MESH) {
|
|
635
|
+
if (obj.type === _constants.OBJTYPE_MESH) {
|
|
623
636
|
var name = obj.name;
|
|
624
637
|
if (name.match(/_door_.*_glass_/)) {
|
|
625
638
|
var material = new Three.MeshPhysicalMaterial({
|
|
@@ -674,10 +687,10 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
674
687
|
if (isDoor) {
|
|
675
688
|
var offsetData = object1.userData.door_animate_offset[obj.name];
|
|
676
689
|
// Open Door
|
|
677
|
-
animateDoor(offsetData, obj, open_doors, element.toJS(), is_corner, 'Opened2D');
|
|
690
|
+
(0, _helper.animateDoor)(offsetData, obj, open_doors, element.toJS(), is_corner, 'Opened2D');
|
|
678
691
|
} else {
|
|
679
692
|
// Open Drawer
|
|
680
|
-
translateDrawer(element.toJS(), obj, open_doors, 'Opened2D');
|
|
693
|
+
(0, _helper.translateDrawer)(element.toJS(), obj, open_doors, 'Opened2D');
|
|
681
694
|
}
|
|
682
695
|
}
|
|
683
696
|
}
|
|
@@ -749,7 +762,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
749
762
|
_url = structure[temp[k - 1] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())];
|
|
750
763
|
}
|
|
751
764
|
}
|
|
752
|
-
if (
|
|
765
|
+
if ((0, _typeof2["default"])(_url) == Array) _url = _url[0];
|
|
753
766
|
var uData = _url.split('/');
|
|
754
767
|
uData = uData[uData.length - 1];
|
|
755
768
|
uData = uData.slice(0, -5);
|
|
@@ -794,7 +807,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
794
807
|
} else {
|
|
795
808
|
structure[keys[i] + '_doorStyle' + element.type + 'doorStyle' + JSON.stringify(doorStyles.toJS())] = null;
|
|
796
809
|
}
|
|
797
|
-
return loadGLTF(loadUrl).then(function (object) {
|
|
810
|
+
return (0, _loadObj.loadGLTF)(loadUrl).then(function (object) {
|
|
798
811
|
if (normalMap !== '') {
|
|
799
812
|
var normalUrl = normalMap.split('.')[0] + '-normal.' + normalMap.split('.')[1];
|
|
800
813
|
var t = loadTexture(normalMap);
|
|
@@ -807,7 +820,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
807
820
|
mat2.normalMap = _m;
|
|
808
821
|
// mat2.envMap = textureCube;
|
|
809
822
|
for (var _j3 = 0; _j3 < object.children.length; _j3++) {
|
|
810
|
-
if (object.children[_j3].type === OBJTYPE_MESH) {
|
|
823
|
+
if (object.children[_j3].type === _constants.OBJTYPE_MESH) {
|
|
811
824
|
object.children[_j3].material = mat2;
|
|
812
825
|
object.children[_j3].receiveShadow = true;
|
|
813
826
|
}
|
|
@@ -839,12 +852,12 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
839
852
|
}
|
|
840
853
|
// mat2.envMap = textureCube;
|
|
841
854
|
for (var _j4 = 0; _j4 < object.children.length; _j4++) {
|
|
842
|
-
if (object.children[_j4].type === OBJTYPE_MESH) {
|
|
855
|
+
if (object.children[_j4].type === _constants.OBJTYPE_MESH) {
|
|
843
856
|
object.children[_j4].material = _mat;
|
|
844
857
|
object.children[_j4].receiveShadow = true;
|
|
845
858
|
object.children[_j4].castShadow = true;
|
|
846
859
|
!object.children[_j4].name.includes('handle') && addEdgesToMesh(object.children[_j4]);
|
|
847
|
-
} else if (!object.children[_j4].name.startsWith('ph_') && object.children[_j4].type === OBJTYPE_GROUP) {
|
|
860
|
+
} else if (!object.children[_j4].name.startsWith('ph_') && object.children[_j4].type === _constants.OBJTYPE_GROUP) {
|
|
848
861
|
object.children[_j4].traverse(function (prim) {
|
|
849
862
|
prim.material = _mat;
|
|
850
863
|
prim.receiveShadow = true;
|
|
@@ -858,7 +871,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
858
871
|
});
|
|
859
872
|
// mat2.envMap = textureCube;
|
|
860
873
|
for (var _j5 = 0; _j5 < object.children.length; _j5++) {
|
|
861
|
-
if (object.children[_j5].type === OBJTYPE_MESH) {
|
|
874
|
+
if (object.children[_j5].type === _constants.OBJTYPE_MESH) {
|
|
862
875
|
object.children[_j5].material = _mat2;
|
|
863
876
|
object.children[_j5].receiveShadow = true;
|
|
864
877
|
}
|
|
@@ -882,7 +895,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
882
895
|
if (placeholder.includes('drawer_door') && placeholder.includes('_handle')) {
|
|
883
896
|
tmp.rotateZ(Math.PI / 2);
|
|
884
897
|
}
|
|
885
|
-
if (placeholder.includes('_handle') && tmp.children[0].type === OBJTYPE_MESH) {
|
|
898
|
+
if (placeholder.includes('_handle') && tmp.children[0].type === _constants.OBJTYPE_MESH) {
|
|
886
899
|
// NOTE: change metalness of handle
|
|
887
900
|
tmp.children[0].material.metalness = 1;
|
|
888
901
|
// handleMaterial.metalness || 0.2;
|
|
@@ -903,7 +916,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
903
916
|
});
|
|
904
917
|
}
|
|
905
918
|
};
|
|
906
|
-
return loadGLTF(structure['base']).then(function (object) {
|
|
919
|
+
return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
|
|
907
920
|
object.name = 'MainObject';
|
|
908
921
|
object.receiveShadow = true;
|
|
909
922
|
objGroup = object;
|
|
@@ -980,7 +993,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
980
993
|
addEdgesToMesh(object.children[j]);
|
|
981
994
|
} else if (object.children[j].name.includes('_interior_')) {
|
|
982
995
|
object.children[j].material = mat4;
|
|
983
|
-
} else if (object.children[j].type === OBJTYPE_MESH) {
|
|
996
|
+
} else if (object.children[j].type === _constants.OBJTYPE_MESH) {
|
|
984
997
|
object.children[j].material = mat2;
|
|
985
998
|
object.children[j].receiveShadow = true;
|
|
986
999
|
object.children[j].castShadow = true;
|
|
@@ -996,7 +1009,7 @@ export function render3DItem(element, layer, scene, sizeinfo, structure_json, is
|
|
|
996
1009
|
}
|
|
997
1010
|
|
|
998
1011
|
// render 3d appliance function ////////////////////////////////
|
|
999
|
-
|
|
1012
|
+
function render3DApplianceItem(element, layer, scene, sizeinfo, structure_json) {
|
|
1000
1013
|
var mode = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
|
1001
1014
|
var structure = structure_json;
|
|
1002
1015
|
var applianceMaterial = element.applianceMaterial;
|
|
@@ -1004,16 +1017,16 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1004
1017
|
var onLoadItem = function onLoadItem(object) {
|
|
1005
1018
|
var newAltitude = element.properties.get('altitude').get('_length');
|
|
1006
1019
|
var newUnit = element.properties.get('altitude').get('_unit') || 'in';
|
|
1007
|
-
newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
|
|
1020
|
+
newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
|
|
1008
1021
|
var newWidth = element.properties.get('width').get('_length');
|
|
1009
1022
|
var newWidthUnit = element.properties.get('width').get('_unit') || 'in';
|
|
1010
|
-
newWidth = convert(newWidth).from(newWidthUnit).to('in');
|
|
1023
|
+
newWidth = (0, _convertUnitsLite.convert)(newWidth).from(newWidthUnit).to('in');
|
|
1011
1024
|
var newHeight = element.properties.get('height').get('_length');
|
|
1012
1025
|
var newHeightUnit = element.properties.get('height').get('_unit') || 'in';
|
|
1013
|
-
newHeight = convert(newHeight).from(newHeightUnit).to('in');
|
|
1026
|
+
newHeight = (0, _convertUnitsLite.convert)(newHeight).from(newHeightUnit).to('in');
|
|
1014
1027
|
var newDepth = element.properties.get('depth').get('_length');
|
|
1015
1028
|
var newDepthUnit = element.properties.get('depth').get('_unit') || 'in';
|
|
1016
|
-
newDepth = convert(newDepth).from(newDepthUnit).to('in');
|
|
1029
|
+
newDepth = (0, _convertUnitsLite.convert)(newDepth).from(newDepthUnit).to('in');
|
|
1017
1030
|
object.scale.set(100 * newWidth / sizeinfo.width, 100 * newHeight / sizeinfo.height, 100 * newDepth / sizeinfo.depth);
|
|
1018
1031
|
// Normalize the origin of the object
|
|
1019
1032
|
var boundingBox = new Three.Box3().setFromObject(object);
|
|
@@ -1024,7 +1037,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1024
1037
|
object.position.z -= center[2];
|
|
1025
1038
|
object.position.y += newAltitude;
|
|
1026
1039
|
object.traverse(function (obj) {
|
|
1027
|
-
if (obj.type === OBJTYPE_MESH) {
|
|
1040
|
+
if (obj.type === _constants.OBJTYPE_MESH) {
|
|
1028
1041
|
var name = obj.name;
|
|
1029
1042
|
var texture,
|
|
1030
1043
|
textureLoader = new Three.TextureLoader();
|
|
@@ -1136,7 +1149,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1136
1149
|
transparent: true,
|
|
1137
1150
|
opacity: 0.4
|
|
1138
1151
|
}));
|
|
1139
|
-
var color = new Three.Color(ARROW_COLOR).convertLinearToSRGB();
|
|
1152
|
+
var color = new Three.Color(_constants.ARROW_COLOR).convertLinearToSRGB();
|
|
1140
1153
|
var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
|
|
1141
1154
|
color: color
|
|
1142
1155
|
}));
|
|
@@ -1236,7 +1249,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1236
1249
|
|
|
1237
1250
|
// load base to start //
|
|
1238
1251
|
// return loadGLTF(dirName + structure["base"])
|
|
1239
|
-
return loadGLTF(structure['base']).then(function (object) {
|
|
1252
|
+
return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
|
|
1240
1253
|
// let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
|
|
1241
1254
|
// let texture = loadTexture(textureURL);
|
|
1242
1255
|
// texture.wrapS = Three.MirroredRepeatWrapping;
|
|
@@ -1252,7 +1265,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1252
1265
|
// mat2.envMap = textureCube;
|
|
1253
1266
|
object.material = mat2;
|
|
1254
1267
|
for (var j = 0; j < object.children.length; j++) {
|
|
1255
|
-
if (object.children[j].type === OBJTYPE_MESH) {
|
|
1268
|
+
if (object.children[j].type === _constants.OBJTYPE_MESH) {
|
|
1256
1269
|
object.children[j].material = mat2;
|
|
1257
1270
|
object.children[j].receiveShadow = true;
|
|
1258
1271
|
object.children[j].castShadow = true; // change
|
|
@@ -1267,7 +1280,7 @@ export function render3DApplianceItem(element, layer, scene, sizeinfo, structure
|
|
|
1267
1280
|
});
|
|
1268
1281
|
}
|
|
1269
1282
|
// render 3d appliance function ////////////////////////////////
|
|
1270
|
-
|
|
1283
|
+
function render3DLightingItem(element, layer, scene, sizeinfo, structure_json) {
|
|
1271
1284
|
var mode = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
|
|
1272
1285
|
var structure = structure_json;
|
|
1273
1286
|
var onLoadItem = function onLoadItem(object) {
|
|
@@ -1283,12 +1296,12 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
|
|
|
1283
1296
|
length: sizeinfo.height,
|
|
1284
1297
|
unit: 'in'
|
|
1285
1298
|
};
|
|
1286
|
-
var newWidth = convert(width.length).from(width.unit).to('cm');
|
|
1287
|
-
var newDepth = convert(depth.length).from(depth.unit).to('cm');
|
|
1288
|
-
var newHeight = convert(height.length).from(height.unit).to('cm');
|
|
1299
|
+
var newWidth = (0, _convertUnitsLite.convert)(width.length).from(width.unit).to('cm');
|
|
1300
|
+
var newDepth = (0, _convertUnitsLite.convert)(depth.length).from(depth.unit).to('cm');
|
|
1301
|
+
var newHeight = (0, _convertUnitsLite.convert)(height.length).from(height.unit).to('cm');
|
|
1289
1302
|
var newAltitude = element.properties.get('altitude').get('_length');
|
|
1290
1303
|
var newUnit = element.properties.get('altitude').get('_unit') || 'in';
|
|
1291
|
-
newAltitude = convert(newAltitude).from(newUnit).to(scene.unit);
|
|
1304
|
+
newAltitude = (0, _convertUnitsLite.convert)(newAltitude).from(newUnit).to(scene.unit);
|
|
1292
1305
|
|
|
1293
1306
|
//object.scale.set(newWidth, newHeight, newDepth);
|
|
1294
1307
|
object.scale.set(100, 100, 100);
|
|
@@ -1368,7 +1381,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
|
|
|
1368
1381
|
transparent: true,
|
|
1369
1382
|
opacity: 0.4
|
|
1370
1383
|
}));
|
|
1371
|
-
var color = new Three.Color(ARROW_COLOR).convertLinearToSRGB();
|
|
1384
|
+
var color = new Three.Color(_constants.ARROW_COLOR).convertLinearToSRGB();
|
|
1372
1385
|
var vLine = new Three.Line(vLineGeom, new Three.LineBasicMaterial({
|
|
1373
1386
|
color: color
|
|
1374
1387
|
}));
|
|
@@ -1474,7 +1487,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
|
|
|
1474
1487
|
|
|
1475
1488
|
// load base to start //
|
|
1476
1489
|
// return loadGLTF(dirName + structure["base"])
|
|
1477
|
-
return loadGLTF(structure['base']).then(function (object) {
|
|
1490
|
+
return (0, _loadObj.loadGLTF)(structure['base']).then(function (object) {
|
|
1478
1491
|
// let textureURL = `${API_SERVER_URL}/uploads/assets/default/steel.jpg`;
|
|
1479
1492
|
// let texture = loadTexture(textureURL);
|
|
1480
1493
|
// texture.wrapS = Three.MirroredRepeatWrapping;
|
|
@@ -1489,7 +1502,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
|
|
|
1489
1502
|
// mat2.envMap = textureCube;
|
|
1490
1503
|
object.material = mat2;
|
|
1491
1504
|
for (var j = 0; j < object.children.length; j++) {
|
|
1492
|
-
if (object.children[j].type === OBJTYPE_MESH) {
|
|
1505
|
+
if (object.children[j].type === _constants.OBJTYPE_MESH) {
|
|
1493
1506
|
object.children[j].material = mat2;
|
|
1494
1507
|
object.children[j].receiveShadow = true;
|
|
1495
1508
|
}
|
|
@@ -1502,7 +1515,7 @@ export function render3DLightingItem(element, layer, scene, sizeinfo, structure_
|
|
|
1502
1515
|
return _loadGLTFs3(0);
|
|
1503
1516
|
});
|
|
1504
1517
|
}
|
|
1505
|
-
|
|
1518
|
+
function addEdgesToMesh(inChild) {
|
|
1506
1519
|
var boxEdge = new Three.EdgesGeometry(inChild.geometry, 10);
|
|
1507
1520
|
var boxEdgeMaterial = new Three.LineBasicMaterial({
|
|
1508
1521
|
color: 0x000000,
|
|
@@ -1,18 +1,26 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.loadGLTF = loadGLTF;
|
|
7
|
+
exports.loadObjWithMaterial = loadObjWithMaterial;
|
|
8
|
+
exports.scaleObject = scaleObject;
|
|
9
|
+
var _three = require("three");
|
|
10
|
+
var _MTLLoader = require("three/examples/jsm/loaders/MTLLoader.js");
|
|
11
|
+
var _OBJLoader = require("three/examples/jsm/loaders/OBJLoader.js");
|
|
12
|
+
var _GLTFLoader = require("three/examples/jsm/loaders/GLTFLoader.js");
|
|
13
|
+
var _DRACOLoader = require("three/examples/jsm/loaders/DRACOLoader.js");
|
|
14
|
+
var _constants = require("../../constants");
|
|
15
|
+
function loadObjWithMaterial(mtlFile, objFile, imgPath) {
|
|
16
|
+
var manager = new _three.LoadingManager();
|
|
17
|
+
var mtlLoader = new _MTLLoader.MTLLoader(manager);
|
|
10
18
|
// mtlLoader.setPath(imgPath);
|
|
11
19
|
var url = mtlFile;
|
|
12
20
|
return new Promise(function (resolve, reject) {
|
|
13
21
|
mtlLoader.load(url, function (materials) {
|
|
14
22
|
materials.preload();
|
|
15
|
-
var objLoader = new OBJLoader();
|
|
23
|
+
var objLoader = new _OBJLoader.OBJLoader();
|
|
16
24
|
objLoader.setMaterials(materials);
|
|
17
25
|
objLoader.load(objFile, function (object) {
|
|
18
26
|
return resolve(object);
|
|
@@ -20,12 +28,12 @@ export function loadObjWithMaterial(mtlFile, objFile, imgPath) {
|
|
|
20
28
|
});
|
|
21
29
|
});
|
|
22
30
|
}
|
|
23
|
-
|
|
31
|
+
function loadGLTF(url) {
|
|
24
32
|
if (url == undefined) {
|
|
25
33
|
return Promise.reject('No url is passed');
|
|
26
34
|
}
|
|
27
|
-
var baseURL = LoaderUtils.extractUrlBase(url);
|
|
28
|
-
var manager = new LoadingManager();
|
|
35
|
+
var baseURL = _three.LoaderUtils.extractUrlBase(url);
|
|
36
|
+
var manager = new _three.LoadingManager();
|
|
29
37
|
|
|
30
38
|
// Intercept and override relative URLs.
|
|
31
39
|
manager.setURLModifier(function (url, path) {
|
|
@@ -42,9 +50,9 @@ export function loadGLTF(url) {
|
|
|
42
50
|
// }
|
|
43
51
|
return (path || '') + url;
|
|
44
52
|
});
|
|
45
|
-
var loader = new GLTFLoader(manager);
|
|
53
|
+
var loader = new _GLTFLoader.GLTFLoader(manager);
|
|
46
54
|
loader.setCrossOrigin('anonymous');
|
|
47
|
-
var dracoLoader = new DRACOLoader();
|
|
55
|
+
var dracoLoader = new _DRACOLoader.DRACOLoader();
|
|
48
56
|
dracoLoader.setDecoderPath('/assets/draco/');
|
|
49
57
|
loader.setDRACOLoader(dracoLoader);
|
|
50
58
|
return new Promise(function (resolve, reject) {
|
|
@@ -62,15 +70,15 @@ export function loadGLTF(url) {
|
|
|
62
70
|
});
|
|
63
71
|
});
|
|
64
72
|
}
|
|
65
|
-
|
|
66
|
-
var boundingBox = new Box3().setFromObject(object);
|
|
67
|
-
var initialSizeArray = boundingBox.getSize(new Vector3()).toArray();
|
|
73
|
+
function scaleObject(object, defaultSizeArray, scaleSizeArray) {
|
|
74
|
+
var boundingBox = new _three.Box3().setFromObject(object);
|
|
75
|
+
var initialSizeArray = boundingBox.getSize(new _three.Vector3()).toArray();
|
|
68
76
|
for (var i = 0; i < 3; i++) {
|
|
69
77
|
scaleSizeArray[i] -= defaultSizeArray[i];
|
|
70
78
|
defaultSizeArray[i] /= initialSizeArray[i];
|
|
71
79
|
}
|
|
72
80
|
object.children.forEach(function (child) {
|
|
73
|
-
if (child.type == OBJTYPE_MESH && child.geometry instanceof BufferGeometry) {
|
|
81
|
+
if (child.type == _constants.OBJTYPE_MESH && child.geometry instanceof _three.BufferGeometry) {
|
|
74
82
|
var position = child.geometry.attributes.position;
|
|
75
83
|
var new_pos = position.array.map(function (v, i, a) {
|
|
76
84
|
var j = i % 3;
|
|
@@ -81,7 +89,7 @@ export function scaleObject(object, defaultSizeArray, scaleSizeArray) {
|
|
|
81
89
|
}
|
|
82
90
|
return v;
|
|
83
91
|
});
|
|
84
|
-
var new_geom = child.geometry.clone().setAttribute('position', new BufferAttribute(new_pos, 3));
|
|
92
|
+
var new_geom = child.geometry.clone().setAttribute('position', new _three.BufferAttribute(new_pos, 3));
|
|
85
93
|
new_geom.computeBoundingBox();
|
|
86
94
|
new_geom.computeBoundingSphere();
|
|
87
95
|
child.geometry.dispose();
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = exports.MTLLoader = void 0;
|
|
1
7
|
/**
|
|
2
8
|
* Loads a Wavefront .mtl file specifying materials
|
|
3
9
|
*
|
|
@@ -6,7 +12,7 @@
|
|
|
6
12
|
|
|
7
13
|
var THREE = window.THREE;
|
|
8
14
|
var MTLLoader;
|
|
9
|
-
MTLLoader = function MTLLoader(manager) {
|
|
15
|
+
exports.MTLLoader = MTLLoader = function MTLLoader(manager) {
|
|
10
16
|
this.manager = manager !== undefined ? manager : THREE.DefaultLoadingManager;
|
|
11
17
|
};
|
|
12
18
|
Object.assign(MTLLoader.prototype, THREE.EventDispatcher.prototype, {
|
|
@@ -354,5 +360,4 @@ MTLLoader.MaterialCreator.prototype = {
|
|
|
354
360
|
return texture;
|
|
355
361
|
}
|
|
356
362
|
};
|
|
357
|
-
|
|
358
|
-
export { MTLLoader };
|
|
363
|
+
var _default = exports["default"] = MTLLoader;
|
|
@@ -1,9 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = exports.OBJLoader = void 0;
|
|
1
7
|
/**
|
|
2
8
|
* @author mrdoob / http://mrdoob.com/
|
|
3
9
|
*/
|
|
4
10
|
var THREE = window.THREE;
|
|
5
11
|
var OBJLoader;
|
|
6
|
-
OBJLoader = function () {
|
|
12
|
+
exports.OBJLoader = OBJLoader = function () {
|
|
7
13
|
// o object_name | g group_name
|
|
8
14
|
var object_pattern = /^[og]\s*(.+)?/;
|
|
9
15
|
// mtllib file_reference
|
|
@@ -473,5 +479,4 @@ OBJLoader = function () {
|
|
|
473
479
|
};
|
|
474
480
|
return OBJLoader;
|
|
475
481
|
}();
|
|
476
|
-
|
|
477
|
-
export { OBJLoader };
|
|
482
|
+
var _default = exports["default"] = OBJLoader;
|