redhotmagma-visualization 1.51.0 → 1.51.2
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/AlignTargetProvider.js +21 -30
- package/CommonUtils/Deferred.js +11 -19
- package/CommonUtils/Observable.js +23 -30
- package/CommonUtils/PropertyObserver.js +4 -10
- package/CommonUtils/SyncCurrentFunction.js +25 -31
- package/CommonUtils/SyncObservableEvent.js +4 -10
- package/CommonUtils/pointerEvent.js +9 -15
- package/Constants.js +2 -8
- package/DevApp.js +224 -236
- package/ExposedModules.js +4 -19
- package/FallbackVisualization.js +5 -12
- package/PrintingEffects/ColorEmbossingEffect.js +13 -19
- package/PrintingEffects/DomingEffect.js +13 -19
- package/PrintingEffects/EmbossingEffect.js +14 -20
- package/PrintingEffects/EmbroideryEffect.js +113 -128
- package/PrintingEffects/EngravingEffect.js +14 -20
- package/PrintingEffects/PrintingEffects.js +40 -48
- package/PrintingEffects/PrintingEffectsUtils.js +4 -13
- package/React/ReactBase.js +29 -37
- package/Three/Exporters/glTFExporter.js +3 -10
- package/Three/Three2D.js +441 -470
- package/Three/Three2DLayers.js +136 -148
- package/Three/Three3D.js +285 -302
- package/Three/Three3DScene.js +326 -341
- package/Three/ThreeBase.js +92 -104
- package/Utils/DesignArea/getDesignAreaCanvasSize.js +3 -10
- package/Utils/TextureBuilder/createTextureBuilder.js +57 -69
- package/Utils/TextureBuilder/textureBuilderFunctions.js +4 -10
- package/Utils/canvasBlur.js +2 -8
- package/Utils/createAlphaMapFromAlphaChannel.js +8 -13
- package/Utils/createBakedShadow.js +18 -25
- package/Utils/createCache.js +1 -7
- package/Utils/createCanvas.js +1 -7
- package/Utils/createImageRepository.js +38 -53
- package/Utils/disposeMaterial.js +7 -12
- package/Utils/getImageSize.js +1 -7
- package/Utils/imagePreloader.js +22 -29
- package/Utils/initTextureCanvas.js +10 -17
- package/Utils/isMobileDevice.js +1 -7
- package/Utils/optimizeTextureImage.js +8 -13
- package/Utils/rememberCameraViewOffset.js +1 -7
- package/Utils/removeObject.js +3 -9
- package/Utils/restrictCameraMovement.js +5 -12
- package/Utils/setLightShadow.js +3 -9
- package/Utils/setOrthographicCameraSize.js +1 -7
- package/Utils/updateFitSizeToElement.js +5 -11
- package/VisualizationContainer.js +46 -55
- package/VisualizationInterface.js +42 -50
- package/VisualizationProvider.js +8 -15
- package/index.js +4 -7
- package/package.json +2 -2
- package/src/Three/Exporters/glTFExporter.js +1 -1
- package/src/Three/Three3D.js +4 -4
- package/src/Three/Three3DScene.js +13 -3
- package/src/Utils/restrictCameraMovement.js +1 -1
- package/visualizationAdapterCreator.js +18 -27
package/Three/Three2D.js
CHANGED
|
@@ -1,61 +1,57 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.allowZooming = exports.Three2D = void 0;
|
|
7
|
-
var _three = require("three");
|
|
8
|
-
var _tween = _interopRequireDefault(require("@tweenjs/tween.js"));
|
|
9
|
-
var _get2 = _interopRequireDefault(require("lodash/get"));
|
|
10
|
-
var _first = _interopRequireDefault(require("lodash/first"));
|
|
11
|
-
var _find = _interopRequireDefault(require("lodash/find"));
|
|
12
|
-
var _size = _interopRequireDefault(require("lodash/size"));
|
|
13
|
-
var _debounce = _interopRequireDefault(require("lodash/debounce"));
|
|
14
|
-
var _ThreeBase2 = require("./ThreeBase");
|
|
15
|
-
var _createCanvas = require("../Utils/createCanvas");
|
|
16
|
-
var _Deferred = require("../CommonUtils/Deferred");
|
|
17
|
-
var _PropertyObserver = require("../CommonUtils/PropertyObserver");
|
|
18
|
-
var _SyncCurrentFunction = require("../CommonUtils/SyncCurrentFunction");
|
|
19
|
-
var _pointerEvent = require("../CommonUtils/pointerEvent");
|
|
20
|
-
var _Constants = require("../Constants");
|
|
21
|
-
var _createTextureBuilder = require("../Utils/TextureBuilder/createTextureBuilder");
|
|
22
|
-
var _getDesignAreaCanvasSize = require("../Utils/DesignArea/getDesignAreaCanvasSize");
|
|
23
|
-
var _disposeMaterial = require("../Utils/disposeMaterial");
|
|
24
|
-
var _createImageRepository = require("../Utils/createImageRepository");
|
|
25
|
-
var _createCache = require("../Utils/createCache");
|
|
26
|
-
var _getImageSize = require("../Utils/getImageSize");
|
|
27
|
-
var _removeObject = require("../Utils/removeObject");
|
|
28
|
-
var _setOrthographicCameraSize = require("../Utils/setOrthographicCameraSize");
|
|
29
|
-
var _optimizeTextureImage = require("../Utils/optimizeTextureImage");
|
|
30
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
31
1
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
32
|
-
function
|
|
33
|
-
function
|
|
2
|
+
function _regeneratorValues(e) { if (null != e) { var t = e["function" == typeof Symbol && Symbol.iterator || "@@iterator"], r = 0; if (t) return t.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) return { next: function next() { return e && r >= e.length && (e = void 0), { value: e && e[r++], done: !e }; } }; } throw new TypeError(_typeof(e) + " is not iterable"); }
|
|
3
|
+
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; } } }; }
|
|
4
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
34
5
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
35
|
-
function _unsupportedIterableToArray(
|
|
36
|
-
function _arrayLikeToArray(
|
|
6
|
+
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; } }
|
|
7
|
+
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; }
|
|
37
8
|
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
38
|
-
function _arrayWithHoles(
|
|
9
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
39
10
|
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; }
|
|
40
11
|
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; }
|
|
41
|
-
function
|
|
42
|
-
function
|
|
43
|
-
function
|
|
44
|
-
function
|
|
45
|
-
function
|
|
46
|
-
function
|
|
47
|
-
function
|
|
48
|
-
function
|
|
49
|
-
function
|
|
50
|
-
function
|
|
51
|
-
function
|
|
52
|
-
function
|
|
53
|
-
function
|
|
54
|
-
function
|
|
55
|
-
function _getPrototypeOf(
|
|
56
|
-
function
|
|
57
|
-
function
|
|
58
|
-
function
|
|
12
|
+
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
|
|
13
|
+
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
|
|
14
|
+
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
|
|
15
|
+
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
|
|
16
|
+
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
17
|
+
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
18
|
+
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|
|
19
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
20
|
+
function _possibleConstructorReturn(t, e) { if (e && ("object" == _typeof(e) || "function" == typeof e)) return e; if (void 0 !== e) throw new TypeError("Derived constructors may only return object or undefined"); return _assertThisInitialized(t); }
|
|
21
|
+
function _assertThisInitialized(e) { if (void 0 === e) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return e; }
|
|
22
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
23
|
+
function _superPropGet(t, o, e, r) { var p = _get(_getPrototypeOf(1 & r ? t.prototype : t), o, e); return 2 & r && "function" == typeof p ? function (t) { return p.apply(e, t); } : p; }
|
|
24
|
+
function _get() { return _get = "undefined" != typeof Reflect && Reflect.get ? Reflect.get.bind() : function (e, t, r) { var p = _superPropBase(e, t); if (p) { var n = Object.getOwnPropertyDescriptor(p, t); return n.get ? n.get.call(arguments.length < 3 ? e : r) : n.value; } }, _get.apply(null, arguments); }
|
|
25
|
+
function _superPropBase(t, o) { for (; !{}.hasOwnProperty.call(t, o) && null !== (t = _getPrototypeOf(t));); return t; }
|
|
26
|
+
function _getPrototypeOf(t) { return _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (t) { return t.__proto__ || Object.getPrototypeOf(t); }, _getPrototypeOf(t); }
|
|
27
|
+
function _inherits(t, e) { if ("function" != typeof e && null !== e) throw new TypeError("Super expression must either be null or a function"); t.prototype = Object.create(e && e.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, "prototype", { writable: !1 }), e && _setPrototypeOf(t, e); }
|
|
28
|
+
function _setPrototypeOf(t, e) { return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) { return t.__proto__ = e, t; }, _setPrototypeOf(t, e); }
|
|
29
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
30
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
31
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
|
+
import { BackSide, Box3, CylinderGeometry, Group, ImageLoader, Mesh, MeshBasicMaterial, NearestFilter, LinearFilter, OrthographicCamera, PlaneGeometry, Texture, Vector2, Vector3, WebGLRenderer, BufferGeometry, Float32BufferAttribute, DoubleSide, LinearSRGBColorSpace } from "three";
|
|
33
|
+
import TWEEN from "@tweenjs/tween.js";
|
|
34
|
+
import get from "lodash/get";
|
|
35
|
+
import first from "lodash/first";
|
|
36
|
+
import find from "lodash/find";
|
|
37
|
+
import size from "lodash/size";
|
|
38
|
+
import debounce from "lodash/debounce";
|
|
39
|
+
import { ThreeBase } from "./ThreeBase";
|
|
40
|
+
import { createWorkingCanvas } from "../Utils/createCanvas";
|
|
41
|
+
import { DeferredGroup } from "../CommonUtils/Deferred";
|
|
42
|
+
import { observeProperty } from "../CommonUtils/PropertyObserver";
|
|
43
|
+
import { syncCurrent } from "../CommonUtils/SyncCurrentFunction";
|
|
44
|
+
import { createMouseWheelEventListener, createPointerMoveEventListener } from "../CommonUtils/pointerEvent";
|
|
45
|
+
import { EventTypes, Numeric } from "../Constants";
|
|
46
|
+
import { createTextureBuilder, optimizeSizeToTexture } from "../Utils/TextureBuilder/createTextureBuilder";
|
|
47
|
+
import { getDesignAreaCanvasSize } from "../Utils/DesignArea/getDesignAreaCanvasSize";
|
|
48
|
+
import { disposeMaterial } from "../Utils/disposeMaterial";
|
|
49
|
+
import { createImageRepository } from "../Utils/createImageRepository";
|
|
50
|
+
import { createCache } from "../Utils/createCache";
|
|
51
|
+
import { getImageSize } from "../Utils/getImageSize";
|
|
52
|
+
import { removeObject } from "../Utils/removeObject";
|
|
53
|
+
import { setOrthographicCameraSize } from "../Utils/setOrthographicCameraSize";
|
|
54
|
+
import { optimizeTextureImage } from "../Utils/optimizeTextureImage";
|
|
59
55
|
var DESIGN_AREA_PIXEL_RATIO = 2;
|
|
60
56
|
var MIN_TEXTURE_SIZE = 2048;
|
|
61
57
|
var MAX_TEXTURE_SIZE = 2048;
|
|
@@ -63,50 +59,48 @@ var cameraZ = 100000;
|
|
|
63
59
|
var getPlaneZ = function getPlaneZ(overlayMode) {
|
|
64
60
|
return overlayMode ? 100 : -100000;
|
|
65
61
|
};
|
|
66
|
-
var allowZooming =
|
|
62
|
+
export var allowZooming = function allowZooming(zoom, originalZoom, minZoom, maxZoom) {
|
|
67
63
|
return originalZoom > zoom && zoom >= minZoom || originalZoom < zoom && zoom <= maxZoom;
|
|
68
64
|
};
|
|
69
|
-
var Three2D =
|
|
70
|
-
_inherits(Three2D, _ThreeBase);
|
|
71
|
-
var _super = _createSuper(Three2D);
|
|
65
|
+
export var Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
72
66
|
function Three2D() {
|
|
73
67
|
var _this;
|
|
74
68
|
var cfg = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
75
69
|
_classCallCheck(this, Three2D);
|
|
76
|
-
_this =
|
|
77
|
-
_defineProperty(
|
|
78
|
-
_defineProperty(
|
|
79
|
-
_defineProperty(
|
|
80
|
-
_defineProperty(
|
|
81
|
-
_defineProperty(
|
|
82
|
-
_defineProperty(
|
|
83
|
-
_defineProperty(
|
|
84
|
-
_defineProperty(
|
|
70
|
+
_this = _callSuper(this, Three2D, [cfg]);
|
|
71
|
+
_defineProperty(_this, "_materialMap", new Map());
|
|
72
|
+
_defineProperty(_this, "_designAreaList", []);
|
|
73
|
+
_defineProperty(_this, "_currentDesignView", null);
|
|
74
|
+
_defineProperty(_this, "_currentDesignArea", null);
|
|
75
|
+
_defineProperty(_this, "_viewPath", "");
|
|
76
|
+
_defineProperty(_this, "_model", null);
|
|
77
|
+
_defineProperty(_this, "_containerGroup", null);
|
|
78
|
+
_defineProperty(_this, "_size", {
|
|
85
79
|
width: 0,
|
|
86
80
|
height: 0
|
|
87
81
|
});
|
|
88
|
-
_defineProperty(
|
|
89
|
-
_defineProperty(
|
|
90
|
-
_defineProperty(
|
|
91
|
-
_defineProperty(
|
|
92
|
-
_defineProperty(
|
|
93
|
-
_defineProperty(
|
|
94
|
-
_defineProperty(
|
|
95
|
-
_defineProperty(
|
|
96
|
-
_defineProperty(
|
|
97
|
-
_defineProperty(
|
|
82
|
+
_defineProperty(_this, "_fitSize", null);
|
|
83
|
+
_defineProperty(_this, "_minZoom", 0.5);
|
|
84
|
+
_defineProperty(_this, "_maxZoom", 2);
|
|
85
|
+
_defineProperty(_this, "_pointerMoveEventListener", null);
|
|
86
|
+
_defineProperty(_this, "_mouseWheelEventListener", null);
|
|
87
|
+
_defineProperty(_this, "_redraw", null);
|
|
88
|
+
_defineProperty(_this, "_modelBasePath", "");
|
|
89
|
+
_defineProperty(_this, "_modelPath", null);
|
|
90
|
+
_defineProperty(_this, "_overlayMode", false);
|
|
91
|
+
_defineProperty(_this, "_options", {
|
|
98
92
|
sharperFullView: false,
|
|
99
93
|
// when zoom = 1 use NearestFilter for sharper product image
|
|
100
94
|
optimizeProductImage: false,
|
|
101
95
|
// upscale or downscale the product image to fit 2048 x 2048
|
|
102
96
|
premultiplyAlpha: false
|
|
103
97
|
});
|
|
104
|
-
_defineProperty(
|
|
98
|
+
_defineProperty(_this, "_imageRepository", createImageRepository(createCache(20), function (src) {
|
|
105
99
|
return new Promise(function (resolve, reject) {
|
|
106
|
-
return new
|
|
100
|
+
return new ImageLoader(_this._loadingManager).load(src, resolve, undefined, reject);
|
|
107
101
|
});
|
|
108
102
|
}));
|
|
109
|
-
_defineProperty(
|
|
103
|
+
_defineProperty(_this, "updateModelTextureFilter", function (_ref) {
|
|
110
104
|
var _this$_model;
|
|
111
105
|
var currentZoom = _ref.value;
|
|
112
106
|
if (!_this._options.sharperFullView) {
|
|
@@ -117,18 +111,18 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
117
111
|
return;
|
|
118
112
|
}
|
|
119
113
|
if (currentZoom === 1) {
|
|
120
|
-
tex.magFilter =
|
|
114
|
+
tex.magFilter = NearestFilter;
|
|
121
115
|
tex.needsUpdate = true;
|
|
122
|
-
} else if (tex.magFilter !==
|
|
123
|
-
tex.magFilter =
|
|
116
|
+
} else if (tex.magFilter !== LinearFilter) {
|
|
117
|
+
tex.magFilter = LinearFilter;
|
|
124
118
|
tex.needsUpdate = true;
|
|
125
119
|
}
|
|
126
120
|
});
|
|
127
|
-
_defineProperty(
|
|
121
|
+
_defineProperty(_this, "redraw", function () {
|
|
128
122
|
return _this._redraw && _this._redraw();
|
|
129
123
|
});
|
|
130
|
-
_defineProperty(
|
|
131
|
-
var _ref2 = _asyncToGenerator(
|
|
124
|
+
_defineProperty(_this, "updateView", syncCurrent(/*#__PURE__*/function () {
|
|
125
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(designView) {
|
|
132
126
|
var options,
|
|
133
127
|
_options$forceUpdate,
|
|
134
128
|
forceUpdate,
|
|
@@ -141,21 +135,22 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
141
135
|
needsUpdate,
|
|
142
136
|
availableDesignAreas,
|
|
143
137
|
containerGroup,
|
|
144
|
-
_args = arguments
|
|
145
|
-
|
|
146
|
-
|
|
138
|
+
_args = arguments,
|
|
139
|
+
_t;
|
|
140
|
+
return _regenerator().w(function (_context) {
|
|
141
|
+
while (1) switch (_context.n) {
|
|
147
142
|
case 0:
|
|
148
143
|
options = _args.length > 1 && _args[1] !== undefined ? _args[1] : {};
|
|
149
144
|
_options$forceUpdate = options.forceUpdate, forceUpdate = _options$forceUpdate === void 0 ? false : _options$forceUpdate, _options$updateMateri = options.updateMaterial, updateMaterial = _options$updateMateri === void 0 ? true : _options$updateMateri;
|
|
150
145
|
designViewIdentifier = designView && designView.identifier;
|
|
151
146
|
if (designViewIdentifier) {
|
|
152
|
-
_context.
|
|
147
|
+
_context.n = 1;
|
|
153
148
|
break;
|
|
154
149
|
}
|
|
155
150
|
// eslint-disable-next-line no-console
|
|
156
151
|
console.log("No design view identifier! Skipping update.");
|
|
157
|
-
return _context.
|
|
158
|
-
case
|
|
152
|
+
return _context.a(2);
|
|
153
|
+
case 1:
|
|
159
154
|
try {
|
|
160
155
|
oldModelPath = _this.getModelPath();
|
|
161
156
|
} catch (e) {
|
|
@@ -169,37 +164,36 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
169
164
|
modelPathChanged = _this.getModelPath() !== oldModelPath;
|
|
170
165
|
needsUpdate = forceUpdate || modelPathChanged || _this._currentDesignView !== designView;
|
|
171
166
|
if (needsUpdate) {
|
|
172
|
-
_context.
|
|
167
|
+
_context.n = 2;
|
|
173
168
|
break;
|
|
174
169
|
}
|
|
175
|
-
return _context.
|
|
176
|
-
case
|
|
170
|
+
return _context.a(2);
|
|
171
|
+
case 2:
|
|
177
172
|
_this._currentDesignView = designView;
|
|
178
173
|
|
|
179
174
|
// skip view update if the design view is the same
|
|
180
175
|
if (!(forceUpdate || modelPathChanged)) {
|
|
181
|
-
_context.
|
|
176
|
+
_context.n = 3;
|
|
182
177
|
break;
|
|
183
178
|
}
|
|
184
|
-
_context.
|
|
179
|
+
_context.n = 3;
|
|
185
180
|
return _this.loadView();
|
|
186
|
-
case
|
|
181
|
+
case 3:
|
|
187
182
|
_this.clearScene();
|
|
188
|
-
availableDesignAreas = (
|
|
183
|
+
availableDesignAreas = get(designView, "designAreas") || [];
|
|
189
184
|
containerGroup = _this.createObjectsForDesignAreas(availableDesignAreas);
|
|
190
185
|
_this._containerGroup = containerGroup;
|
|
191
186
|
_this._intersectionRoot = containerGroup;
|
|
192
187
|
_this.scene && _this.scene.add(containerGroup);
|
|
193
|
-
|
|
194
|
-
if (!
|
|
195
|
-
_context.
|
|
188
|
+
_t = updateMaterial;
|
|
189
|
+
if (!_t) {
|
|
190
|
+
_context.n = 4;
|
|
196
191
|
break;
|
|
197
192
|
}
|
|
198
|
-
_context.
|
|
193
|
+
_context.n = 4;
|
|
199
194
|
return _this.dispatchMaterialUpdateEvent();
|
|
200
|
-
case
|
|
201
|
-
|
|
202
|
-
return _context.stop();
|
|
195
|
+
case 4:
|
|
196
|
+
return _context.a(2);
|
|
203
197
|
}
|
|
204
198
|
}, _callee);
|
|
205
199
|
}));
|
|
@@ -210,7 +204,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
210
204
|
if (cfg.modelBasePath) {
|
|
211
205
|
_this._modelBasePath = cfg.modelBasePath;
|
|
212
206
|
}
|
|
213
|
-
|
|
207
|
+
observeProperty(_this, "_size", function (_ref3) {
|
|
214
208
|
var value = _ref3.value,
|
|
215
209
|
dispose = _ref3.dispose;
|
|
216
210
|
if (value.width > 0 && value.height > 0) {
|
|
@@ -220,7 +214,8 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
220
214
|
});
|
|
221
215
|
return _this;
|
|
222
216
|
}
|
|
223
|
-
|
|
217
|
+
_inherits(Three2D, _ThreeBase);
|
|
218
|
+
return _createClass(Three2D, [{
|
|
224
219
|
key: "setOverlayMode",
|
|
225
220
|
value: function setOverlayMode(mode) {
|
|
226
221
|
this._overlayMode = mode;
|
|
@@ -228,15 +223,14 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
228
223
|
}, {
|
|
229
224
|
key: "createRenderer",
|
|
230
225
|
value: function createRenderer() {
|
|
231
|
-
var renderer = new
|
|
226
|
+
var renderer = new WebGLRenderer({
|
|
232
227
|
alpha: true,
|
|
233
228
|
antialias: true,
|
|
234
229
|
stencil: false,
|
|
235
230
|
depth: true // needed only for the admin area, consider to make it configurable
|
|
236
231
|
});
|
|
237
|
-
|
|
238
232
|
renderer.setPixelRatio(window.devicePixelRatio ? window.devicePixelRatio : 1);
|
|
239
|
-
renderer.outputColorSpace =
|
|
233
|
+
renderer.outputColorSpace = LinearSRGBColorSpace;
|
|
240
234
|
return renderer;
|
|
241
235
|
}
|
|
242
236
|
}, {
|
|
@@ -247,12 +241,12 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
247
241
|
redrawOnZoomChange = _options$redrawOnZoom === void 0 ? false : _options$redrawOnZoom,
|
|
248
242
|
_options$redrawDeboun = options.redrawDebounceWait,
|
|
249
243
|
redrawDebounceWait = _options$redrawDeboun === void 0 ? 100 : _options$redrawDeboun;
|
|
250
|
-
var camera = new
|
|
244
|
+
var camera = new OrthographicCamera();
|
|
251
245
|
camera.near = 0.01;
|
|
252
246
|
camera.far = cameraZ - getPlaneZ(this._overlayMode) + 1000;
|
|
253
247
|
camera.position.set(0, 0, cameraZ);
|
|
254
|
-
redrawOnZoomChange &&
|
|
255
|
-
|
|
248
|
+
redrawOnZoomChange && observeProperty(camera, "zoom", debounce(this.redraw, redrawDebounceWait));
|
|
249
|
+
observeProperty(camera, "zoom", this.updateModelTextureFilter);
|
|
256
250
|
return camera;
|
|
257
251
|
}
|
|
258
252
|
}, {
|
|
@@ -273,10 +267,10 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
273
267
|
var width = _ref4.width,
|
|
274
268
|
height = _ref4.height;
|
|
275
269
|
var rerender = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
276
|
-
|
|
270
|
+
_superPropGet(Three2D, "setSize", this, 3)([{
|
|
277
271
|
width: width,
|
|
278
272
|
height: height
|
|
279
|
-
}, rerender);
|
|
273
|
+
}, rerender]);
|
|
280
274
|
if (this.camera.zoom < 1) {
|
|
281
275
|
this.updateZoom(rerender);
|
|
282
276
|
}
|
|
@@ -299,7 +293,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
299
293
|
}, {
|
|
300
294
|
key: "setCameraPositionToCurrentDesignArea",
|
|
301
295
|
value: function () {
|
|
302
|
-
var _setCameraPositionToCurrentDesignArea = _asyncToGenerator(
|
|
296
|
+
var _setCameraPositionToCurrentDesignArea = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
303
297
|
var _ref5,
|
|
304
298
|
animate,
|
|
305
299
|
duration,
|
|
@@ -310,21 +304,21 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
310
304
|
viewOffset,
|
|
311
305
|
position,
|
|
312
306
|
_args2 = arguments;
|
|
313
|
-
return
|
|
314
|
-
while (1) switch (_context2.
|
|
307
|
+
return _regenerator().w(function (_context2) {
|
|
308
|
+
while (1) switch (_context2.n) {
|
|
315
309
|
case 0:
|
|
316
310
|
_ref5 = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {
|
|
317
311
|
animate: false,
|
|
318
312
|
duration: {}
|
|
319
313
|
}, animate = _ref5.animate, duration = _ref5.duration, getViewOffset = _ref5.getViewOffset;
|
|
320
|
-
_context2.
|
|
314
|
+
_context2.n = 1;
|
|
321
315
|
return this.getScreenshotsReady();
|
|
322
|
-
case
|
|
323
|
-
designArea = this._currentDesignArea || (
|
|
316
|
+
case 1:
|
|
317
|
+
designArea = this._currentDesignArea || first(this._designAreaList);
|
|
324
318
|
obj = designArea && this.findAreaObjectByName(designArea.identifier);
|
|
325
319
|
zoom = this.calculateZoomForObject(obj);
|
|
326
320
|
viewOffset = getViewOffset && getViewOffset();
|
|
327
|
-
position = new
|
|
321
|
+
position = new Vector3();
|
|
328
322
|
if (obj) {
|
|
329
323
|
obj.getWorldPosition(position);
|
|
330
324
|
}
|
|
@@ -335,9 +329,8 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
335
329
|
this.stopAnimation("camera");
|
|
336
330
|
this.setCameraPosition(position, zoom, viewOffset);
|
|
337
331
|
}
|
|
338
|
-
case
|
|
339
|
-
|
|
340
|
-
return _context2.stop();
|
|
332
|
+
case 2:
|
|
333
|
+
return _context2.a(2);
|
|
341
334
|
}
|
|
342
335
|
}, _callee2, this);
|
|
343
336
|
}));
|
|
@@ -349,7 +342,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
349
342
|
}, {
|
|
350
343
|
key: "updateCamera",
|
|
351
344
|
value: function updateCamera(width, height) {
|
|
352
|
-
|
|
345
|
+
setOrthographicCameraSize(this.camera, width, height);
|
|
353
346
|
this.camera.updateProjectionMatrix();
|
|
354
347
|
}
|
|
355
348
|
}, {
|
|
@@ -368,7 +361,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
368
361
|
value: function getDefaultZoom() {
|
|
369
362
|
var _this2 = this;
|
|
370
363
|
return this._size ? this.getZoomForSize(this._fitSize || function () {
|
|
371
|
-
var size = new
|
|
364
|
+
var size = new Vector2();
|
|
372
365
|
_this2.renderer.getSize(size);
|
|
373
366
|
return size;
|
|
374
367
|
}()) : 1;
|
|
@@ -393,7 +386,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
393
386
|
}
|
|
394
387
|
var realWidth = Math.floor(this._size.width * zoom);
|
|
395
388
|
var realHeight = Math.floor(this._size.height * zoom);
|
|
396
|
-
var size = new
|
|
389
|
+
var size = new Vector2();
|
|
397
390
|
this.renderer.getSize(size);
|
|
398
391
|
var canvasWidth = size.width,
|
|
399
392
|
canvasHeight = size.height;
|
|
@@ -408,7 +401,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
408
401
|
y: 0
|
|
409
402
|
};
|
|
410
403
|
}
|
|
411
|
-
var size = new
|
|
404
|
+
var size = new Vector2();
|
|
412
405
|
this.renderer.getSize(size);
|
|
413
406
|
var _ref6 = this.camera.view ? this.camera.view : {
|
|
414
407
|
width: size.x,
|
|
@@ -447,7 +440,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
447
440
|
key: "setPositionBetweenBoundaries",
|
|
448
441
|
value: function setPositionBetweenBoundaries(x, y, zoom) {
|
|
449
442
|
var position = this.getPositionBetweenBoundaries(x, y, zoom);
|
|
450
|
-
var positionVector = new
|
|
443
|
+
var positionVector = new Vector3(position.x, position.y, this.camera.position.z);
|
|
451
444
|
var animate = this.isObjectSmallerThanCanvas(zoom) && this.camera.position.x !== 0 && this.camera.position.y !== 0;
|
|
452
445
|
if (animate) {
|
|
453
446
|
this.moveCamera(positionVector, zoom, 1000);
|
|
@@ -468,7 +461,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
468
461
|
update: function update() {}
|
|
469
462
|
};
|
|
470
463
|
var element = targetElement || this.renderer.domElement;
|
|
471
|
-
this._pointerMoveEventListener =
|
|
464
|
+
this._pointerMoveEventListener = createPointerMoveEventListener(element, function (evt, change) {
|
|
472
465
|
evt.preventDefault();
|
|
473
466
|
if (!_this3.controls || !_this3.controls.enabled) {
|
|
474
467
|
return;
|
|
@@ -484,7 +477,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
484
477
|
}
|
|
485
478
|
_this3.setPositionBetweenBoundaries(x, y, zoom);
|
|
486
479
|
});
|
|
487
|
-
this._mouseWheelEventListener =
|
|
480
|
+
this._mouseWheelEventListener = createMouseWheelEventListener(element, function (evt) {
|
|
488
481
|
if (_this3._cameraMovementLocked) {
|
|
489
482
|
return;
|
|
490
483
|
}
|
|
@@ -511,14 +504,14 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
511
504
|
}, {
|
|
512
505
|
key: "dispatchMaterialUpdateEvent",
|
|
513
506
|
value: function () {
|
|
514
|
-
var _dispatchMaterialUpdateEvent = _asyncToGenerator(
|
|
507
|
+
var _dispatchMaterialUpdateEvent = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
|
|
515
508
|
var options,
|
|
516
509
|
_options$screenshot,
|
|
517
510
|
screenshot,
|
|
518
511
|
eventParams,
|
|
519
512
|
_args3 = arguments;
|
|
520
|
-
return
|
|
521
|
-
while (1) switch (_context3.
|
|
513
|
+
return _regenerator().w(function (_context3) {
|
|
514
|
+
while (1) switch (_context3.n) {
|
|
522
515
|
case 0:
|
|
523
516
|
options = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {};
|
|
524
517
|
_options$screenshot = options.screenshot, screenshot = _options$screenshot === void 0 ? false : _options$screenshot;
|
|
@@ -526,11 +519,10 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
526
519
|
variant: this._materialVariantPath,
|
|
527
520
|
screenshot: screenshot
|
|
528
521
|
}; // the redrawing of the areas can be synced if the event handler returns a Promise
|
|
529
|
-
_context3.
|
|
530
|
-
return this.observable.dispatch(
|
|
531
|
-
case
|
|
532
|
-
|
|
533
|
-
return _context3.stop();
|
|
522
|
+
_context3.n = 1;
|
|
523
|
+
return this.observable.dispatch(EventTypes.MaterialUpdated, eventParams, true);
|
|
524
|
+
case 1:
|
|
525
|
+
return _context3.a(2);
|
|
534
526
|
}
|
|
535
527
|
}, _callee3, this);
|
|
536
528
|
}));
|
|
@@ -542,20 +534,17 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
542
534
|
}, {
|
|
543
535
|
key: "updateMaterial",
|
|
544
536
|
value: function () {
|
|
545
|
-
var _updateMaterial = _asyncToGenerator(
|
|
537
|
+
var _updateMaterial = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
|
|
546
538
|
var targetObject,
|
|
547
539
|
_args4 = arguments;
|
|
548
|
-
return
|
|
549
|
-
while (1) switch (_context4.
|
|
540
|
+
return _regenerator().w(function (_context4) {
|
|
541
|
+
while (1) switch (_context4.n) {
|
|
550
542
|
case 0:
|
|
551
543
|
targetObject = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : this.scene;
|
|
552
|
-
_context4.
|
|
544
|
+
_context4.n = 1;
|
|
553
545
|
return this.updateView(this._currentDesignView);
|
|
554
|
-
case
|
|
555
|
-
return _context4.
|
|
556
|
-
case 4:
|
|
557
|
-
case "end":
|
|
558
|
-
return _context4.stop();
|
|
546
|
+
case 1:
|
|
547
|
+
return _context4.a(2, _context4.v);
|
|
559
548
|
}
|
|
560
549
|
}, _callee4, this);
|
|
561
550
|
}));
|
|
@@ -567,36 +556,36 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
567
556
|
}, {
|
|
568
557
|
key: "_getDrawingContext",
|
|
569
558
|
value: function () {
|
|
570
|
-
var _getDrawingContext2 = _asyncToGenerator(
|
|
559
|
+
var _getDrawingContext2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(drawingFn) {
|
|
571
560
|
var _this4 = this;
|
|
572
561
|
var updateAlpha,
|
|
573
562
|
clearTexture,
|
|
574
563
|
materialName,
|
|
575
564
|
availableDesignAreas,
|
|
576
565
|
_args6 = arguments;
|
|
577
|
-
return
|
|
578
|
-
while (1) switch (_context6.
|
|
566
|
+
return _regenerator().w(function (_context6) {
|
|
567
|
+
while (1) switch (_context6.n) {
|
|
579
568
|
case 0:
|
|
580
569
|
updateAlpha = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : false;
|
|
581
570
|
clearTexture = _args6.length > 2 && _args6[2] !== undefined ? _args6[2] : false;
|
|
582
571
|
materialName = _args6.length > 3 && _args6[3] !== undefined ? _args6[3] : undefined;
|
|
583
|
-
availableDesignAreas = (
|
|
584
|
-
_context6.
|
|
585
|
-
return Promise.all(availableDesignAreas.map(
|
|
586
|
-
var _ref7 = _asyncToGenerator(
|
|
572
|
+
availableDesignAreas = get(this._currentDesignView, "designAreas") || [];
|
|
573
|
+
_context6.n = 1;
|
|
574
|
+
return Promise.all(availableDesignAreas.map(/*#__PURE__*/function () {
|
|
575
|
+
var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(designArea) {
|
|
587
576
|
var material, _this4$getCanvasConte, ctx, canvas, texture, getTextureBuilder, width, height;
|
|
588
|
-
return
|
|
589
|
-
while (1) switch (_context5.
|
|
577
|
+
return _regenerator().w(function (_context5) {
|
|
578
|
+
while (1) switch (_context5.n) {
|
|
590
579
|
case 0:
|
|
591
580
|
material = _this4._materialMap.get(designArea.identifier);
|
|
592
581
|
if (!(!material || !material.map || !material.map.image)) {
|
|
593
|
-
_context5.
|
|
582
|
+
_context5.n = 1;
|
|
594
583
|
break;
|
|
595
584
|
}
|
|
596
585
|
throw new Error("Cannot get drawing context for material: ".concat(materialName, "! Is it prepared already?"));
|
|
597
|
-
case
|
|
586
|
+
case 1:
|
|
598
587
|
_this4$getCanvasConte = _this4.getCanvasContextForTexture(material.map), ctx = _this4$getCanvasConte.ctx, canvas = _this4$getCanvasConte.canvas, texture = _this4$getCanvasConte.texture;
|
|
599
|
-
getTextureBuilder =
|
|
588
|
+
getTextureBuilder = createTextureBuilder(canvas, {
|
|
600
589
|
currentZoom: _this4._screenshotCamera ? _this4._screenshotCamera.zoom : _this4.camera.zoom,
|
|
601
590
|
useTextureSize: true
|
|
602
591
|
});
|
|
@@ -604,13 +593,12 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
604
593
|
width = canvas.width, height = canvas.height;
|
|
605
594
|
ctx.clearRect(0, 0, width, height);
|
|
606
595
|
}
|
|
607
|
-
_context5.
|
|
596
|
+
_context5.n = 2;
|
|
608
597
|
return drawingFn(ctx, getTextureBuilder, [designArea]);
|
|
609
|
-
case
|
|
598
|
+
case 2:
|
|
610
599
|
texture.needsUpdate = true;
|
|
611
|
-
case
|
|
612
|
-
|
|
613
|
-
return _context5.stop();
|
|
600
|
+
case 3:
|
|
601
|
+
return _context5.a(2);
|
|
614
602
|
}
|
|
615
603
|
}, _callee5);
|
|
616
604
|
}));
|
|
@@ -618,13 +606,12 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
618
606
|
return _ref7.apply(this, arguments);
|
|
619
607
|
};
|
|
620
608
|
}()));
|
|
621
|
-
case
|
|
609
|
+
case 1:
|
|
622
610
|
if (!this.isAnimating()) {
|
|
623
611
|
this.render();
|
|
624
612
|
}
|
|
625
|
-
case
|
|
626
|
-
|
|
627
|
-
return _context6.stop();
|
|
613
|
+
case 2:
|
|
614
|
+
return _context6.a(2);
|
|
628
615
|
}
|
|
629
616
|
}, _callee6, this);
|
|
630
617
|
}));
|
|
@@ -636,58 +623,58 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
636
623
|
}, {
|
|
637
624
|
key: "getDrawingContext",
|
|
638
625
|
value: function () {
|
|
639
|
-
var _getDrawingContext3 = _asyncToGenerator(
|
|
626
|
+
var _getDrawingContext3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
|
|
640
627
|
var _this$_getDrawingCont,
|
|
641
628
|
_this5 = this;
|
|
642
|
-
var _args8 = arguments
|
|
643
|
-
|
|
644
|
-
|
|
629
|
+
var _args8 = arguments,
|
|
630
|
+
_t3;
|
|
631
|
+
return _regenerator().w(function (_context8) {
|
|
632
|
+
while (1) switch (_context8.p = _context8.n) {
|
|
645
633
|
case 0:
|
|
646
634
|
this._redraw = (_this$_getDrawingCont = this._getDrawingContext).bind.apply(_this$_getDrawingCont, [this].concat(Array.prototype.slice.call(_args8)));
|
|
647
|
-
_context8.
|
|
648
|
-
_context8.
|
|
635
|
+
_context8.p = 1;
|
|
636
|
+
_context8.n = 2;
|
|
649
637
|
return this._redrawPromise;
|
|
650
|
-
case
|
|
651
|
-
_context8.
|
|
638
|
+
case 2:
|
|
639
|
+
_context8.n = 4;
|
|
652
640
|
break;
|
|
653
|
-
case
|
|
654
|
-
_context8.
|
|
655
|
-
|
|
656
|
-
case
|
|
641
|
+
case 3:
|
|
642
|
+
_context8.p = 3;
|
|
643
|
+
_t3 = _context8.v;
|
|
644
|
+
case 4:
|
|
657
645
|
this._redrawPromise = new Promise(function (resolve, reject) {
|
|
658
|
-
_this5._redrawFrame = window.requestAnimationFrame(
|
|
659
|
-
|
|
660
|
-
|
|
646
|
+
_this5._redrawFrame = window.requestAnimationFrame(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
|
|
647
|
+
var _t2;
|
|
648
|
+
return _regenerator().w(function (_context7) {
|
|
649
|
+
while (1) switch (_context7.p = _context7.n) {
|
|
661
650
|
case 0:
|
|
662
|
-
_context7.
|
|
663
|
-
_context7.
|
|
651
|
+
_context7.p = 0;
|
|
652
|
+
_context7.n = 1;
|
|
664
653
|
return _this5.redraw();
|
|
665
|
-
case
|
|
654
|
+
case 1:
|
|
666
655
|
resolve();
|
|
667
|
-
_context7.
|
|
656
|
+
_context7.n = 3;
|
|
668
657
|
break;
|
|
669
|
-
case
|
|
670
|
-
_context7.
|
|
671
|
-
|
|
672
|
-
reject(
|
|
673
|
-
case
|
|
674
|
-
_context7.
|
|
658
|
+
case 2:
|
|
659
|
+
_context7.p = 2;
|
|
660
|
+
_t2 = _context7.v;
|
|
661
|
+
reject(_t2);
|
|
662
|
+
case 3:
|
|
663
|
+
_context7.p = 3;
|
|
675
664
|
delete _this5._redrawPromise;
|
|
676
|
-
return _context7.
|
|
677
|
-
case
|
|
678
|
-
|
|
679
|
-
return _context7.stop();
|
|
665
|
+
return _context7.f(3);
|
|
666
|
+
case 4:
|
|
667
|
+
return _context7.a(2);
|
|
680
668
|
}
|
|
681
|
-
}, _callee7, null, [[0,
|
|
669
|
+
}, _callee7, null, [[0, 2, 3, 4]]);
|
|
682
670
|
})));
|
|
683
671
|
});
|
|
684
|
-
_context8.
|
|
672
|
+
_context8.n = 5;
|
|
685
673
|
return this._redrawPromise;
|
|
686
|
-
case
|
|
687
|
-
|
|
688
|
-
return _context8.stop();
|
|
674
|
+
case 5:
|
|
675
|
+
return _context8.a(2);
|
|
689
676
|
}
|
|
690
|
-
}, _callee8, this, [[1,
|
|
677
|
+
}, _callee8, this, [[1, 3]]);
|
|
691
678
|
}));
|
|
692
679
|
function getDrawingContext() {
|
|
693
680
|
return _getDrawingContext3.apply(this, arguments);
|
|
@@ -740,43 +727,42 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
740
727
|
}, {
|
|
741
728
|
key: "loadView",
|
|
742
729
|
value: function () {
|
|
743
|
-
var _loadView = _asyncToGenerator(
|
|
730
|
+
var _loadView = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() {
|
|
744
731
|
var rerender,
|
|
745
732
|
url,
|
|
746
733
|
image,
|
|
747
734
|
tex,
|
|
748
735
|
_args9 = arguments;
|
|
749
|
-
return
|
|
750
|
-
while (1) switch (_context9.
|
|
736
|
+
return _regenerator().w(function (_context9) {
|
|
737
|
+
while (1) switch (_context9.n) {
|
|
751
738
|
case 0:
|
|
752
739
|
rerender = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : false;
|
|
753
740
|
if (this._itemPath && this._viewPath) {
|
|
754
|
-
_context9.
|
|
741
|
+
_context9.n = 1;
|
|
755
742
|
break;
|
|
756
743
|
}
|
|
757
|
-
return _context9.
|
|
758
|
-
case
|
|
744
|
+
return _context9.a(2, false);
|
|
745
|
+
case 1:
|
|
759
746
|
url = this.getModelPath();
|
|
760
747
|
this.onLoadStart();
|
|
761
|
-
_context9.
|
|
748
|
+
_context9.n = 2;
|
|
762
749
|
return this._imageRepository.loadImage(url);
|
|
763
|
-
case
|
|
764
|
-
image = _context9.
|
|
750
|
+
case 2:
|
|
751
|
+
image = _context9.v;
|
|
765
752
|
this.onLoadFinished();
|
|
766
|
-
tex = new
|
|
753
|
+
tex = new Texture(this._options.optimizeProductImage ? optimizeTextureImage(image, MAX_TEXTURE_SIZE, MIN_TEXTURE_SIZE) : image);
|
|
767
754
|
tex.premultiplyAlpha = this._options.premultiplyAlpha;
|
|
768
755
|
if (this._options.sharperFullView) {
|
|
769
|
-
tex.magFilter =
|
|
756
|
+
tex.magFilter = NearestFilter;
|
|
770
757
|
}
|
|
771
|
-
tex.originalSize =
|
|
758
|
+
tex.originalSize = getImageSize(image);
|
|
772
759
|
tex.needsUpdate = true;
|
|
773
760
|
this.initModelWithTexture(tex);
|
|
774
761
|
if (rerender) {
|
|
775
762
|
this.render();
|
|
776
763
|
}
|
|
777
|
-
case
|
|
778
|
-
|
|
779
|
-
return _context9.stop();
|
|
764
|
+
case 3:
|
|
765
|
+
return _context9.a(2);
|
|
780
766
|
}
|
|
781
767
|
}, _callee9, this);
|
|
782
768
|
}));
|
|
@@ -791,12 +777,12 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
791
777
|
var _tex$originalSize = tex.originalSize,
|
|
792
778
|
width = _tex$originalSize.width,
|
|
793
779
|
height = _tex$originalSize.height;
|
|
794
|
-
var planeMaterial = new
|
|
780
|
+
var planeMaterial = new MeshBasicMaterial({
|
|
795
781
|
map: tex,
|
|
796
782
|
transparent: true
|
|
797
783
|
});
|
|
798
|
-
var planeGeometry = new
|
|
799
|
-
var plane = new
|
|
784
|
+
var planeGeometry = new PlaneGeometry(width, height, 1, 1);
|
|
785
|
+
var plane = new Mesh(planeGeometry, planeMaterial);
|
|
800
786
|
plane.position.z = getPlaneZ(this._overlayMode);
|
|
801
787
|
|
|
802
788
|
// remove the current model first
|
|
@@ -822,32 +808,32 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
822
808
|
}, {
|
|
823
809
|
key: "createCanvasMaterial",
|
|
824
810
|
value: function createCanvasMaterial(designArea) {
|
|
825
|
-
var originalSize =
|
|
811
|
+
var originalSize = getDesignAreaCanvasSize(designArea);
|
|
826
812
|
var size;
|
|
827
813
|
try {
|
|
828
|
-
size =
|
|
814
|
+
size = optimizeSizeToTexture(originalSize, DESIGN_AREA_PIXEL_RATIO, true, MAX_TEXTURE_SIZE);
|
|
829
815
|
} catch (e) {
|
|
830
|
-
this.observable.dispatch(
|
|
816
|
+
this.observable.dispatch(EventTypes.Error, e);
|
|
831
817
|
throw e;
|
|
832
818
|
}
|
|
833
|
-
var _createWorkingCanvas =
|
|
819
|
+
var _createWorkingCanvas = createWorkingCanvas(size),
|
|
834
820
|
_createWorkingCanvas2 = _slicedToArray(_createWorkingCanvas, 1),
|
|
835
821
|
canvas = _createWorkingCanvas2[0];
|
|
836
|
-
var tex = new
|
|
822
|
+
var tex = new Texture(canvas);
|
|
837
823
|
tex.anisotropy = this.renderer.capabilities.getMaxAnisotropy();
|
|
838
824
|
tex.originalSize = originalSize;
|
|
839
|
-
var mat = new
|
|
825
|
+
var mat = new MeshBasicMaterial({
|
|
840
826
|
map: tex
|
|
841
827
|
});
|
|
842
828
|
mat.transparent = true;
|
|
843
829
|
mat.name = designArea.identifier;
|
|
844
830
|
|
|
845
831
|
// if the "inside" prop is true, use the BackSide
|
|
846
|
-
if ((
|
|
847
|
-
mat.side =
|
|
832
|
+
if (get(designArea, "baseShape.inside", false)) {
|
|
833
|
+
mat.side = BackSide;
|
|
848
834
|
}
|
|
849
|
-
if ((
|
|
850
|
-
mat.side =
|
|
835
|
+
if (get(designArea, "baseShape.type") === "Plane") {
|
|
836
|
+
mat.side = DoubleSide;
|
|
851
837
|
}
|
|
852
838
|
this._customizableMaterialKeys.push(mat.name);
|
|
853
839
|
this._customizableMaterials.push(mat);
|
|
@@ -869,26 +855,26 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
869
855
|
var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
870
856
|
var viewOffset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
|
|
871
857
|
this.cleanUpCameraAnimations();
|
|
872
|
-
var animationDef = new
|
|
858
|
+
var animationDef = new DeferredGroup();
|
|
873
859
|
if (zoom) {
|
|
874
|
-
new
|
|
860
|
+
new TWEEN.Tween(this.camera, this.cameraTweenGroup).to({
|
|
875
861
|
zoom: zoom
|
|
876
|
-
}, duration.zoom || 1000).easing(
|
|
862
|
+
}, duration.zoom || 1000).easing(TWEEN.Easing.Quadratic.Out).onUpdate(function () {
|
|
877
863
|
return _this7.camera.updateProjectionMatrix();
|
|
878
864
|
}).onComplete(animationDef.createResolver()).start();
|
|
879
865
|
}
|
|
880
866
|
if (position) {
|
|
881
|
-
new
|
|
867
|
+
new TWEEN.Tween(this.camera.position, this.cameraTweenGroup).to(position, duration.position || 1000).easing(TWEEN.Easing.Quadratic.Out).onComplete(animationDef.createResolver()).start();
|
|
882
868
|
}
|
|
883
869
|
if (viewOffset) {
|
|
884
870
|
if (!this.camera.view) {
|
|
885
|
-
var _this$renderer$getSiz = this.renderer.getSize(new
|
|
871
|
+
var _this$renderer$getSiz = this.renderer.getSize(new Vector2()),
|
|
886
872
|
width = _this$renderer$getSiz.x,
|
|
887
873
|
height = _this$renderer$getSiz.y;
|
|
888
874
|
this.camera.setViewOffset(width, height, 0, 0, width, height);
|
|
889
875
|
}
|
|
890
876
|
var currentViewOffset = this.camera.view;
|
|
891
|
-
new
|
|
877
|
+
new TWEEN.Tween(currentViewOffset, this.cameraTweenGroup).to(viewOffset, duration.viewOffset || 1000).easing(TWEEN.Easing.Quadratic.Out).onComplete(animationDef.createResolver()).start();
|
|
892
878
|
}
|
|
893
879
|
animationDef.then(function () {
|
|
894
880
|
return _this7.stopAnimation("camera");
|
|
@@ -906,13 +892,13 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
906
892
|
if (!obj) {
|
|
907
893
|
return this.getDefaultZoom();
|
|
908
894
|
}
|
|
909
|
-
var _Box3$setFromObject = new
|
|
895
|
+
var _Box3$setFromObject = new Box3().setFromObject(obj),
|
|
910
896
|
min = _Box3$setFromObject.min,
|
|
911
897
|
max = _Box3$setFromObject.max;
|
|
912
898
|
var _max$sub = max.sub(min),
|
|
913
899
|
w = _max$sub.x,
|
|
914
900
|
h = _max$sub.y;
|
|
915
|
-
var _ref9 = this._fitSize || this.renderer.getSize(new
|
|
901
|
+
var _ref9 = this._fitSize || this.renderer.getSize(new Vector2()),
|
|
916
902
|
cWidth = _ref9.width,
|
|
917
903
|
cHeight = _ref9.height;
|
|
918
904
|
return Math.max(cWidth / w, cHeight / h);
|
|
@@ -921,7 +907,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
921
907
|
key: "createObjectsForDesignAreas",
|
|
922
908
|
value: function createObjectsForDesignAreas(designAreas) {
|
|
923
909
|
var _this8 = this;
|
|
924
|
-
var containerGroup = new
|
|
910
|
+
var containerGroup = new Group();
|
|
925
911
|
var EPS = 10;
|
|
926
912
|
var index = 1;
|
|
927
913
|
designAreas.forEach(function (designArea) {
|
|
@@ -930,7 +916,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
930
916
|
try {
|
|
931
917
|
geometry = createBaseShapeGeometry(designArea);
|
|
932
918
|
} catch (e) {
|
|
933
|
-
_this8.observable.dispatch(
|
|
919
|
+
_this8.observable.dispatch(EventTypes.Error, e);
|
|
934
920
|
throw e;
|
|
935
921
|
}
|
|
936
922
|
var _x$y$z$rotation$baseS = _objectSpread({
|
|
@@ -948,7 +934,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
948
934
|
z = _x$y$z$rotation$baseS.z,
|
|
949
935
|
rotation = _x$y$z$rotation$baseS.rotation;
|
|
950
936
|
var mat = _this8.createCanvasMaterial(designArea);
|
|
951
|
-
var obj = new
|
|
937
|
+
var obj = new Mesh(geometry, mat);
|
|
952
938
|
Object.assign(obj.rotation, rotation);
|
|
953
939
|
obj.position.x = x;
|
|
954
940
|
obj.position.y = y;
|
|
@@ -962,14 +948,14 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
962
948
|
}, {
|
|
963
949
|
key: "getModelPathFromDesignView",
|
|
964
950
|
value: function getModelPathFromDesignView(designView) {
|
|
965
|
-
var images = (
|
|
951
|
+
var images = get(designView, "images");
|
|
966
952
|
var isImageArray = images instanceof Array;
|
|
967
953
|
if (images && !isImageArray && this._materialVariantPath && images.hasOwnProperty(this._materialVariantPath)) {
|
|
968
954
|
return images[this._materialVariantPath];
|
|
969
955
|
} else if (images && !isImageArray && images.hasOwnProperty(this._itemPath)) {
|
|
970
956
|
return images[this._itemPath];
|
|
971
957
|
} else {
|
|
972
|
-
return this._materialVariantPath ? (
|
|
958
|
+
return this._materialVariantPath ? get(designView, "images[".concat(this._materialVariantPath, "]")) : get(designView, "images[".concat(this._itemPath, "]"));
|
|
973
959
|
}
|
|
974
960
|
}
|
|
975
961
|
}, {
|
|
@@ -977,34 +963,31 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
977
963
|
value: function clearScene() {
|
|
978
964
|
delete this._redraw; // remove the redraw function to prevent drawing on non-existing textures
|
|
979
965
|
this.scene && this.scene.remove(this._containerGroup);
|
|
980
|
-
|
|
966
|
+
removeObject(this._containerGroup);
|
|
981
967
|
this._intersectionRoot = null;
|
|
982
968
|
this._customizableMaterialKeys = [];
|
|
983
969
|
this._customizableMaterials = [];
|
|
984
|
-
this._materialMap.forEach(
|
|
970
|
+
this._materialMap.forEach(disposeMaterial);
|
|
985
971
|
this._materialMap.clear();
|
|
986
972
|
}
|
|
987
973
|
}, {
|
|
988
974
|
key: "updateViewForArea",
|
|
989
975
|
value: function () {
|
|
990
|
-
var _updateViewForArea = _asyncToGenerator(
|
|
976
|
+
var _updateViewForArea = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(selectedDesignArea) {
|
|
991
977
|
var options,
|
|
992
978
|
designView,
|
|
993
|
-
|
|
994
|
-
return
|
|
995
|
-
while (1) switch (
|
|
979
|
+
_args0 = arguments;
|
|
980
|
+
return _regenerator().w(function (_context0) {
|
|
981
|
+
while (1) switch (_context0.n) {
|
|
996
982
|
case 0:
|
|
997
|
-
options =
|
|
998
|
-
designView = (
|
|
999
|
-
|
|
983
|
+
options = _args0.length > 1 && _args0[1] !== undefined ? _args0[1] : {};
|
|
984
|
+
designView = get(selectedDesignArea, "designView");
|
|
985
|
+
_context0.n = 1;
|
|
1000
986
|
return this.updateView(designView, options);
|
|
1001
|
-
case
|
|
1002
|
-
return
|
|
1003
|
-
case 5:
|
|
1004
|
-
case "end":
|
|
1005
|
-
return _context10.stop();
|
|
987
|
+
case 1:
|
|
988
|
+
return _context0.a(2, _context0.v);
|
|
1006
989
|
}
|
|
1007
|
-
},
|
|
990
|
+
}, _callee0, this);
|
|
1008
991
|
}));
|
|
1009
992
|
function updateViewForArea(_x4) {
|
|
1010
993
|
return _updateViewForArea.apply(this, arguments);
|
|
@@ -1020,7 +1003,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1020
1003
|
key: "findDesignArea",
|
|
1021
1004
|
value: function findDesignArea(identifier) {
|
|
1022
1005
|
return this._designAreaList.filter(function (designArea) {
|
|
1023
|
-
return (
|
|
1006
|
+
return get(designArea, "designView.identifier") === identifier;
|
|
1024
1007
|
})[0] || this._designAreaList.filter(function (designArea) {
|
|
1025
1008
|
return designArea.identifier === identifier;
|
|
1026
1009
|
})[0];
|
|
@@ -1046,8 +1029,8 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1046
1029
|
*/
|
|
1047
1030
|
}, {
|
|
1048
1031
|
key: "jumpToArea",
|
|
1049
|
-
value: function () {
|
|
1050
|
-
var _jumpToArea = _asyncToGenerator(
|
|
1032
|
+
value: (function () {
|
|
1033
|
+
var _jumpToArea = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(designAreaIdentifier) {
|
|
1051
1034
|
var animate,
|
|
1052
1035
|
duration,
|
|
1053
1036
|
forceUpdate,
|
|
@@ -1055,37 +1038,37 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1055
1038
|
obj,
|
|
1056
1039
|
zoom,
|
|
1057
1040
|
position,
|
|
1058
|
-
|
|
1059
|
-
return
|
|
1060
|
-
while (1) switch (
|
|
1041
|
+
_args1 = arguments;
|
|
1042
|
+
return _regenerator().w(function (_context1) {
|
|
1043
|
+
while (1) switch (_context1.n) {
|
|
1061
1044
|
case 0:
|
|
1062
|
-
animate =
|
|
1063
|
-
duration =
|
|
1064
|
-
forceUpdate =
|
|
1045
|
+
animate = _args1.length > 1 && _args1[1] !== undefined ? _args1[1] : true;
|
|
1046
|
+
duration = _args1.length > 2 && _args1[2] !== undefined ? _args1[2] : {};
|
|
1047
|
+
forceUpdate = _args1.length > 3 && _args1[3] !== undefined ? _args1[3] : false;
|
|
1065
1048
|
// use the current design area if present, otherwise try to find it by the designViewIdentifier
|
|
1066
|
-
designArea = (
|
|
1049
|
+
designArea = size(this._currentDesignArea) > 0 ? this._currentDesignArea : this.findDesignArea(designAreaIdentifier);
|
|
1067
1050
|
if (!(designAreaIdentifier !== "default")) {
|
|
1068
|
-
|
|
1051
|
+
_context1.n = 2;
|
|
1069
1052
|
break;
|
|
1070
1053
|
}
|
|
1071
|
-
|
|
1054
|
+
_context1.n = 1;
|
|
1072
1055
|
return this.updateViewForArea(designArea, {
|
|
1073
1056
|
forceUpdate: forceUpdate
|
|
1074
1057
|
});
|
|
1075
|
-
case
|
|
1058
|
+
case 1:
|
|
1076
1059
|
this.render();
|
|
1077
|
-
case
|
|
1060
|
+
case 2:
|
|
1078
1061
|
if (this._containerGroup) {
|
|
1079
|
-
|
|
1062
|
+
_context1.n = 3;
|
|
1080
1063
|
break;
|
|
1081
1064
|
}
|
|
1082
1065
|
// eslint-disable-next-line no-console
|
|
1083
1066
|
console.log("Container group is not available, skipping jump to view!");
|
|
1084
|
-
return
|
|
1085
|
-
case
|
|
1067
|
+
return _context1.a(2, false);
|
|
1068
|
+
case 3:
|
|
1086
1069
|
obj = designArea && this.findAreaObjectByName(designArea.identifier);
|
|
1087
1070
|
zoom = this.calculateZoomForObject(obj);
|
|
1088
|
-
position = new
|
|
1071
|
+
position = new Vector3();
|
|
1089
1072
|
if (obj) {
|
|
1090
1073
|
obj.getWorldPosition(position);
|
|
1091
1074
|
}
|
|
@@ -1095,12 +1078,9 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1095
1078
|
} else {
|
|
1096
1079
|
this.setCameraPosition(position, zoom);
|
|
1097
1080
|
}
|
|
1098
|
-
return
|
|
1099
|
-
case 18:
|
|
1100
|
-
case "end":
|
|
1101
|
-
return _context11.stop();
|
|
1081
|
+
return _context1.a(2, true);
|
|
1102
1082
|
}
|
|
1103
|
-
},
|
|
1083
|
+
}, _callee1, this);
|
|
1104
1084
|
}));
|
|
1105
1085
|
function jumpToArea(_x5) {
|
|
1106
1086
|
return _jumpToArea.apply(this, arguments);
|
|
@@ -1112,37 +1092,35 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1112
1092
|
* @param {object} designView The design view object
|
|
1113
1093
|
* @return {boolean} False if the operation is not possible, otherwise true
|
|
1114
1094
|
*/
|
|
1095
|
+
)
|
|
1115
1096
|
}, {
|
|
1116
1097
|
key: "setView",
|
|
1117
|
-
value: function () {
|
|
1118
|
-
var _setView = _asyncToGenerator(
|
|
1119
|
-
return
|
|
1120
|
-
while (1) switch (
|
|
1098
|
+
value: (function () {
|
|
1099
|
+
var _setView = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(designView) {
|
|
1100
|
+
return _regenerator().w(function (_context10) {
|
|
1101
|
+
while (1) switch (_context10.n) {
|
|
1121
1102
|
case 0:
|
|
1122
|
-
|
|
1103
|
+
_context10.n = 1;
|
|
1123
1104
|
return this.updateView(designView);
|
|
1124
|
-
case
|
|
1105
|
+
case 1:
|
|
1125
1106
|
if (this._containerGroup) {
|
|
1126
|
-
|
|
1107
|
+
_context10.n = 2;
|
|
1127
1108
|
break;
|
|
1128
1109
|
}
|
|
1129
1110
|
// eslint-disable-next-line no-console
|
|
1130
1111
|
console.log("Container group is not available, skipping jump to view!");
|
|
1131
|
-
return
|
|
1132
|
-
case
|
|
1112
|
+
return _context10.a(2, false);
|
|
1113
|
+
case 2:
|
|
1133
1114
|
this.render();
|
|
1134
|
-
return
|
|
1135
|
-
case 7:
|
|
1136
|
-
case "end":
|
|
1137
|
-
return _context12.stop();
|
|
1115
|
+
return _context10.a(2, true);
|
|
1138
1116
|
}
|
|
1139
|
-
},
|
|
1117
|
+
}, _callee10, this);
|
|
1140
1118
|
}));
|
|
1141
1119
|
function setView(_x6) {
|
|
1142
1120
|
return _setView.apply(this, arguments);
|
|
1143
1121
|
}
|
|
1144
1122
|
return setView;
|
|
1145
|
-
}()
|
|
1123
|
+
}())
|
|
1146
1124
|
}, {
|
|
1147
1125
|
key: "updateMaxZoomSetting",
|
|
1148
1126
|
value: function updateMaxZoomSetting(maxZoom) {
|
|
@@ -1167,38 +1145,37 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1167
1145
|
}, {
|
|
1168
1146
|
key: "updateDesignAreaList",
|
|
1169
1147
|
value: function () {
|
|
1170
|
-
var _updateDesignAreaList = _asyncToGenerator(
|
|
1148
|
+
var _updateDesignAreaList = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(designAreaList) {
|
|
1171
1149
|
var updateView,
|
|
1172
1150
|
identifier,
|
|
1173
1151
|
activeArea,
|
|
1174
|
-
|
|
1175
|
-
return
|
|
1176
|
-
while (1) switch (
|
|
1152
|
+
_args11 = arguments;
|
|
1153
|
+
return _regenerator().w(function (_context11) {
|
|
1154
|
+
while (1) switch (_context11.n) {
|
|
1177
1155
|
case 0:
|
|
1178
|
-
updateView =
|
|
1156
|
+
updateView = _args11.length > 1 && _args11[1] !== undefined ? _args11[1] : false;
|
|
1179
1157
|
this._designAreaList = designAreaList;
|
|
1180
1158
|
if (!updateView) {
|
|
1181
|
-
|
|
1159
|
+
_context11.n = 2;
|
|
1182
1160
|
break;
|
|
1183
1161
|
}
|
|
1184
1162
|
identifier = this._currentDesignArea && this._currentDesignArea.identifier;
|
|
1185
|
-
activeArea = (
|
|
1163
|
+
activeArea = find(designAreaList, {
|
|
1186
1164
|
identifier: identifier
|
|
1187
|
-
}) || (
|
|
1165
|
+
}) || first(designAreaList);
|
|
1188
1166
|
if (!activeArea) {
|
|
1189
|
-
|
|
1167
|
+
_context11.n = 2;
|
|
1190
1168
|
break;
|
|
1191
1169
|
}
|
|
1192
|
-
|
|
1170
|
+
_context11.n = 1;
|
|
1193
1171
|
return this.updateViewForArea(activeArea);
|
|
1194
|
-
case
|
|
1172
|
+
case 1:
|
|
1195
1173
|
// update the zoom to the initial value only if there is no designArea selected
|
|
1196
1174
|
!identifier && this.updateZoom();
|
|
1197
|
-
case
|
|
1198
|
-
|
|
1199
|
-
return _context13.stop();
|
|
1175
|
+
case 2:
|
|
1176
|
+
return _context11.a(2);
|
|
1200
1177
|
}
|
|
1201
|
-
},
|
|
1178
|
+
}, _callee11, this);
|
|
1202
1179
|
}));
|
|
1203
1180
|
function updateDesignAreaList(_x7) {
|
|
1204
1181
|
return _updateDesignAreaList.apply(this, arguments);
|
|
@@ -1208,8 +1185,8 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1208
1185
|
}, {
|
|
1209
1186
|
key: "getScreenshotSize",
|
|
1210
1187
|
value: function getScreenshotSize(targetSize) {
|
|
1211
|
-
var width = (
|
|
1212
|
-
var height = (
|
|
1188
|
+
var width = get(targetSize, "width", 1024);
|
|
1189
|
+
var height = get(targetSize, "height", 768);
|
|
1213
1190
|
var initialRatio = width / height;
|
|
1214
1191
|
var modelRatio = this._size.width / this._size.height;
|
|
1215
1192
|
if (modelRatio > initialRatio) {
|
|
@@ -1225,9 +1202,9 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1225
1202
|
}, {
|
|
1226
1203
|
key: "getScreenshots",
|
|
1227
1204
|
value: function () {
|
|
1228
|
-
var _getScreenshots = _asyncToGenerator(
|
|
1205
|
+
var _getScreenshots = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14(callback) {
|
|
1229
1206
|
var _this9 = this;
|
|
1230
|
-
var
|
|
1207
|
+
var _ref0,
|
|
1231
1208
|
designViewList,
|
|
1232
1209
|
areaList,
|
|
1233
1210
|
variantList,
|
|
@@ -1247,26 +1224,27 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1247
1224
|
_step,
|
|
1248
1225
|
_loop,
|
|
1249
1226
|
_ret,
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1227
|
+
_args16 = arguments,
|
|
1228
|
+
_t8;
|
|
1229
|
+
return _regenerator().w(function (_context16) {
|
|
1230
|
+
while (1) switch (_context16.p = _context16.n) {
|
|
1253
1231
|
case 0:
|
|
1254
|
-
|
|
1232
|
+
_ref0 = _args16.length > 1 && _args16[1] !== undefined ? _args16[1] : {}, designViewList = _ref0.designViewList, areaList = _ref0.areaList, variantList = _ref0.variantList, size = _ref0.size;
|
|
1255
1233
|
if (this.renderer) {
|
|
1256
|
-
|
|
1234
|
+
_context16.n = 1;
|
|
1257
1235
|
break;
|
|
1258
1236
|
}
|
|
1259
|
-
return
|
|
1260
|
-
case
|
|
1237
|
+
return _context16.a(2, callback({}));
|
|
1238
|
+
case 1:
|
|
1261
1239
|
this._screenshottingInProgress = true;
|
|
1262
1240
|
this.endAnimation();
|
|
1263
|
-
|
|
1241
|
+
_context16.n = 2;
|
|
1264
1242
|
return this.animationRunning();
|
|
1265
|
-
case
|
|
1266
|
-
|
|
1243
|
+
case 2:
|
|
1244
|
+
_context16.n = 3;
|
|
1267
1245
|
return this.createTempOverlay();
|
|
1268
|
-
case
|
|
1269
|
-
removeTempOverlay =
|
|
1246
|
+
case 3:
|
|
1247
|
+
removeTempOverlay = _context16.v;
|
|
1270
1248
|
origDesignView = this._currentDesignView; // if the areaList option is provided, use it to filter the design areas
|
|
1271
1249
|
designAreaList = areaList instanceof Array && areaList.length > 0 ? this._designAreaList.filter(function (designArea) {
|
|
1272
1250
|
return areaList.indexOf(designArea.identifier) !== -1;
|
|
@@ -1274,91 +1252,90 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1274
1252
|
variants = variantList instanceof Array && variantList.length > 0 ? variantList : [this._materialVariantPath];
|
|
1275
1253
|
screenshots = {}; // store the original camera, variant and renderer size
|
|
1276
1254
|
origVariantPath = this._materialVariantPath;
|
|
1277
|
-
origSize = new
|
|
1255
|
+
origSize = new Vector2();
|
|
1278
1256
|
this.renderer.getSize(origSize);
|
|
1279
1257
|
origPixelRatio = this.renderer.getPixelRatio();
|
|
1280
1258
|
restoreOriginalValues = /*#__PURE__*/function () {
|
|
1281
|
-
var
|
|
1282
|
-
return
|
|
1283
|
-
while (1) switch (
|
|
1259
|
+
var _ref1 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12() {
|
|
1260
|
+
return _regenerator().w(function (_context12) {
|
|
1261
|
+
while (1) switch (_context12.n) {
|
|
1284
1262
|
case 0:
|
|
1285
1263
|
_this9._screenshotCamera = null;
|
|
1286
1264
|
_this9._screenshottingInProgress = false;
|
|
1287
1265
|
_this9._materialVariantPath = origVariantPath;
|
|
1288
1266
|
_this9._currentDesignView = null;
|
|
1289
|
-
|
|
1267
|
+
_context12.n = 1;
|
|
1290
1268
|
return _this9.setView(origDesignView);
|
|
1291
|
-
case
|
|
1269
|
+
case 1:
|
|
1292
1270
|
_this9.renderer.setSize(origSize.width, origSize.height);
|
|
1293
1271
|
_this9.renderer.setPixelRatio(origPixelRatio);
|
|
1294
1272
|
_this9.render();
|
|
1295
1273
|
removeTempOverlay();
|
|
1296
|
-
case
|
|
1297
|
-
|
|
1298
|
-
return _context14.stop();
|
|
1274
|
+
case 2:
|
|
1275
|
+
return _context12.a(2);
|
|
1299
1276
|
}
|
|
1300
|
-
},
|
|
1277
|
+
}, _callee12);
|
|
1301
1278
|
}));
|
|
1302
1279
|
return function restoreOriginalValues() {
|
|
1303
|
-
return
|
|
1280
|
+
return _ref1.apply(this, arguments);
|
|
1304
1281
|
};
|
|
1305
1282
|
}();
|
|
1306
1283
|
camera = this.createCameraBase();
|
|
1307
1284
|
this._screenshotCamera = camera;
|
|
1308
|
-
views = designViewList || designAreaList.map(function (
|
|
1309
|
-
var designView =
|
|
1285
|
+
views = designViewList || designAreaList.map(function (_ref10) {
|
|
1286
|
+
var designView = _ref10.designView;
|
|
1310
1287
|
return designView;
|
|
1311
1288
|
});
|
|
1312
1289
|
_iterator = _createForOfIteratorHelper(variants);
|
|
1313
|
-
|
|
1314
|
-
_loop = /*#__PURE__*/
|
|
1315
|
-
var variant, data, _iterator2, _step2, _loop2, _ret2;
|
|
1316
|
-
return
|
|
1317
|
-
while (1) switch (
|
|
1290
|
+
_context16.p = 4;
|
|
1291
|
+
_loop = /*#__PURE__*/_regenerator().m(function _loop() {
|
|
1292
|
+
var variant, data, _iterator2, _step2, _loop2, _ret2, _t7;
|
|
1293
|
+
return _regenerator().w(function (_context15) {
|
|
1294
|
+
while (1) switch (_context15.p = _context15.n) {
|
|
1318
1295
|
case 0:
|
|
1319
1296
|
variant = _step.value;
|
|
1320
1297
|
data = {};
|
|
1321
1298
|
_this9.setMaterialVariantPath(variant);
|
|
1322
1299
|
_this9._currentDesignView = null;
|
|
1323
1300
|
_iterator2 = _createForOfIteratorHelper(views);
|
|
1324
|
-
|
|
1325
|
-
_loop2 = /*#__PURE__*/
|
|
1326
|
-
var view;
|
|
1327
|
-
return
|
|
1328
|
-
while (1) switch (
|
|
1301
|
+
_context15.p = 1;
|
|
1302
|
+
_loop2 = /*#__PURE__*/_regenerator().m(function _loop2() {
|
|
1303
|
+
var view, _t4, _t5, _t6;
|
|
1304
|
+
return _regenerator().w(function (_context14) {
|
|
1305
|
+
while (1) switch (_context14.p = _context14.n) {
|
|
1329
1306
|
case 0:
|
|
1330
1307
|
view = _step2.value;
|
|
1331
1308
|
if (!_this9._abortScreenshotting) {
|
|
1332
|
-
|
|
1309
|
+
_context14.n = 2;
|
|
1333
1310
|
break;
|
|
1334
1311
|
}
|
|
1335
|
-
|
|
1312
|
+
_context14.n = 1;
|
|
1336
1313
|
return restoreOriginalValues();
|
|
1337
|
-
case
|
|
1338
|
-
|
|
1339
|
-
|
|
1340
|
-
v:
|
|
1314
|
+
case 1:
|
|
1315
|
+
_t4 = _context14.v;
|
|
1316
|
+
_t5 = {
|
|
1317
|
+
v: _t4
|
|
1341
1318
|
};
|
|
1342
|
-
return
|
|
1343
|
-
v:
|
|
1319
|
+
return _context14.a(2, {
|
|
1320
|
+
v: _t5
|
|
1344
1321
|
});
|
|
1345
|
-
case
|
|
1346
|
-
|
|
1347
|
-
|
|
1322
|
+
case 2:
|
|
1323
|
+
_context14.p = 2;
|
|
1324
|
+
_context14.n = 3;
|
|
1348
1325
|
return new Promise(function (resolve) {
|
|
1349
|
-
window.setTimeout(
|
|
1326
|
+
window.setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13() {
|
|
1350
1327
|
var _this9$getScreenshotS, width, height;
|
|
1351
|
-
return
|
|
1352
|
-
while (1) switch (
|
|
1328
|
+
return _regenerator().w(function (_context13) {
|
|
1329
|
+
while (1) switch (_context13.n) {
|
|
1353
1330
|
case 0:
|
|
1354
|
-
|
|
1331
|
+
_context13.n = 1;
|
|
1355
1332
|
return _this9.updateView(view, {
|
|
1356
1333
|
forceUpdate: false,
|
|
1357
1334
|
updateMaterial: false
|
|
1358
1335
|
});
|
|
1359
|
-
case
|
|
1336
|
+
case 1:
|
|
1360
1337
|
_this9$getScreenshotS = _this9.getScreenshotSize(size), width = _this9$getScreenshotS.width, height = _this9$getScreenshotS.height;
|
|
1361
|
-
|
|
1338
|
+
setOrthographicCameraSize(camera, width, height);
|
|
1362
1339
|
_this9.renderer.setSize(width, height);
|
|
1363
1340
|
_this9.renderer.setPixelRatio(1);
|
|
1364
1341
|
camera.zoom = _this9.getZoomForSize({
|
|
@@ -1366,110 +1343,106 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1366
1343
|
height: height
|
|
1367
1344
|
});
|
|
1368
1345
|
camera.updateProjectionMatrix();
|
|
1369
|
-
|
|
1346
|
+
_context13.n = 2;
|
|
1370
1347
|
return _this9.dispatchMaterialUpdateEvent({
|
|
1371
1348
|
screenshot: true
|
|
1372
1349
|
});
|
|
1373
|
-
case
|
|
1350
|
+
case 2:
|
|
1374
1351
|
// set size and pixel ratio right before rendering, to make sure they are correct
|
|
1375
1352
|
_this9.renderer.setSize(width, height);
|
|
1376
1353
|
_this9.renderer.setPixelRatio(1);
|
|
1377
1354
|
_this9.renderer.render(_this9.scene, camera);
|
|
1378
1355
|
data[view.identifier] = _this9.renderer.domElement.toDataURL();
|
|
1379
1356
|
resolve();
|
|
1380
|
-
case
|
|
1381
|
-
|
|
1382
|
-
return _context15.stop();
|
|
1357
|
+
case 3:
|
|
1358
|
+
return _context13.a(2);
|
|
1383
1359
|
}
|
|
1384
|
-
},
|
|
1360
|
+
}, _callee13);
|
|
1385
1361
|
})));
|
|
1386
1362
|
});
|
|
1387
|
-
case
|
|
1388
|
-
|
|
1363
|
+
case 3:
|
|
1364
|
+
_context14.n = 5;
|
|
1389
1365
|
break;
|
|
1390
|
-
case
|
|
1391
|
-
|
|
1392
|
-
|
|
1393
|
-
case
|
|
1394
|
-
|
|
1395
|
-
return _context16.stop();
|
|
1366
|
+
case 4:
|
|
1367
|
+
_context14.p = 4;
|
|
1368
|
+
_t6 = _context14.v;
|
|
1369
|
+
case 5:
|
|
1370
|
+
return _context14.a(2);
|
|
1396
1371
|
}
|
|
1397
|
-
}, _loop2, null, [[
|
|
1372
|
+
}, _loop2, null, [[2, 4]]);
|
|
1398
1373
|
});
|
|
1399
1374
|
_iterator2.s();
|
|
1400
|
-
case
|
|
1375
|
+
case 2:
|
|
1401
1376
|
if ((_step2 = _iterator2.n()).done) {
|
|
1402
|
-
|
|
1377
|
+
_context15.n = 5;
|
|
1403
1378
|
break;
|
|
1404
1379
|
}
|
|
1405
|
-
return
|
|
1406
|
-
case
|
|
1407
|
-
_ret2 =
|
|
1380
|
+
return _context15.d(_regeneratorValues(_loop2()), 3);
|
|
1381
|
+
case 3:
|
|
1382
|
+
_ret2 = _context15.v;
|
|
1408
1383
|
if (!_ret2) {
|
|
1409
|
-
|
|
1384
|
+
_context15.n = 4;
|
|
1410
1385
|
break;
|
|
1411
1386
|
}
|
|
1412
|
-
return
|
|
1413
|
-
case
|
|
1414
|
-
|
|
1387
|
+
return _context15.a(2, _ret2.v);
|
|
1388
|
+
case 4:
|
|
1389
|
+
_context15.n = 2;
|
|
1415
1390
|
break;
|
|
1416
|
-
case
|
|
1417
|
-
|
|
1391
|
+
case 5:
|
|
1392
|
+
_context15.n = 7;
|
|
1418
1393
|
break;
|
|
1419
|
-
case
|
|
1420
|
-
|
|
1421
|
-
|
|
1422
|
-
_iterator2.e(
|
|
1423
|
-
case
|
|
1424
|
-
|
|
1394
|
+
case 6:
|
|
1395
|
+
_context15.p = 6;
|
|
1396
|
+
_t7 = _context15.v;
|
|
1397
|
+
_iterator2.e(_t7);
|
|
1398
|
+
case 7:
|
|
1399
|
+
_context15.p = 7;
|
|
1425
1400
|
_iterator2.f();
|
|
1426
|
-
return
|
|
1427
|
-
case
|
|
1401
|
+
return _context15.f(7);
|
|
1402
|
+
case 8:
|
|
1428
1403
|
screenshots[variant] = data;
|
|
1429
|
-
case
|
|
1430
|
-
|
|
1431
|
-
return _context17.stop();
|
|
1404
|
+
case 9:
|
|
1405
|
+
return _context15.a(2);
|
|
1432
1406
|
}
|
|
1433
|
-
}, _loop, null, [[
|
|
1407
|
+
}, _loop, null, [[1, 6, 7, 8]]);
|
|
1434
1408
|
});
|
|
1435
1409
|
_iterator.s();
|
|
1436
|
-
case
|
|
1410
|
+
case 5:
|
|
1437
1411
|
if ((_step = _iterator.n()).done) {
|
|
1438
|
-
|
|
1412
|
+
_context16.n = 8;
|
|
1439
1413
|
break;
|
|
1440
1414
|
}
|
|
1441
|
-
return
|
|
1442
|
-
case
|
|
1443
|
-
_ret =
|
|
1415
|
+
return _context16.d(_regeneratorValues(_loop()), 6);
|
|
1416
|
+
case 6:
|
|
1417
|
+
_ret = _context16.v;
|
|
1444
1418
|
if (!_ret) {
|
|
1445
|
-
|
|
1419
|
+
_context16.n = 7;
|
|
1446
1420
|
break;
|
|
1447
1421
|
}
|
|
1448
|
-
return
|
|
1449
|
-
case
|
|
1450
|
-
|
|
1422
|
+
return _context16.a(2, _ret.v);
|
|
1423
|
+
case 7:
|
|
1424
|
+
_context16.n = 5;
|
|
1451
1425
|
break;
|
|
1452
|
-
case
|
|
1453
|
-
|
|
1426
|
+
case 8:
|
|
1427
|
+
_context16.n = 10;
|
|
1454
1428
|
break;
|
|
1455
|
-
case
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
_iterator.e(
|
|
1459
|
-
case
|
|
1460
|
-
|
|
1429
|
+
case 9:
|
|
1430
|
+
_context16.p = 9;
|
|
1431
|
+
_t8 = _context16.v;
|
|
1432
|
+
_iterator.e(_t8);
|
|
1433
|
+
case 10:
|
|
1434
|
+
_context16.p = 10;
|
|
1461
1435
|
_iterator.f();
|
|
1462
|
-
return
|
|
1463
|
-
case
|
|
1464
|
-
|
|
1436
|
+
return _context16.f(10);
|
|
1437
|
+
case 11:
|
|
1438
|
+
_context16.n = 12;
|
|
1465
1439
|
return restoreOriginalValues();
|
|
1466
|
-
case
|
|
1440
|
+
case 12:
|
|
1467
1441
|
callback(screenshots);
|
|
1468
|
-
case
|
|
1469
|
-
|
|
1470
|
-
return _context18.stop();
|
|
1442
|
+
case 13:
|
|
1443
|
+
return _context16.a(2);
|
|
1471
1444
|
}
|
|
1472
|
-
},
|
|
1445
|
+
}, _callee14, this, [[4, 9, 10, 11]]);
|
|
1473
1446
|
}));
|
|
1474
1447
|
function getScreenshots(_x8) {
|
|
1475
1448
|
return _getScreenshots.apply(this, arguments);
|
|
@@ -1479,7 +1452,7 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1479
1452
|
}, {
|
|
1480
1453
|
key: "textureHitFormatter",
|
|
1481
1454
|
value: function textureHitFormatter(intersect, position) {
|
|
1482
|
-
var designAreaIdentifier = (
|
|
1455
|
+
var designAreaIdentifier = get(intersect, "object.material.name");
|
|
1483
1456
|
var texture = intersect.object.material.map;
|
|
1484
1457
|
var flipY = texture.flipY,
|
|
1485
1458
|
originalSize = texture.originalSize;
|
|
@@ -1500,11 +1473,11 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1500
1473
|
key: "addCylinder",
|
|
1501
1474
|
value: function addCylinder(r, width, height) {
|
|
1502
1475
|
var theta = width / r;
|
|
1503
|
-
var cylinder = new
|
|
1504
|
-
var mat = new
|
|
1476
|
+
var cylinder = new CylinderGeometry(r, r, height, 0, 1, true, -theta / 2, theta);
|
|
1477
|
+
var mat = new MeshBasicMaterial({
|
|
1505
1478
|
color: 0x55ff55
|
|
1506
1479
|
});
|
|
1507
|
-
var obj = new
|
|
1480
|
+
var obj = new Mesh(cylinder, mat);
|
|
1508
1481
|
obj.position.x = 1200;
|
|
1509
1482
|
obj.position.y = -400;
|
|
1510
1483
|
this.scene.add(obj);
|
|
@@ -1527,36 +1500,35 @@ var Three2D = exports.Three2D = /*#__PURE__*/function (_ThreeBase) {
|
|
|
1527
1500
|
this._containerGroup = null;
|
|
1528
1501
|
this._redraw = null;
|
|
1529
1502
|
this._materialMap.clear();
|
|
1530
|
-
|
|
1503
|
+
_superPropGet(Three2D, "dispose", this, 3)([]);
|
|
1531
1504
|
}
|
|
1532
1505
|
}]);
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
var
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
baseShape = _ref14.baseShape;
|
|
1506
|
+
}(ThreeBase);
|
|
1507
|
+
var createGridGeometryBuffer = function createGridGeometryBuffer(_ref12) {
|
|
1508
|
+
var width = _ref12.width,
|
|
1509
|
+
height = _ref12.height,
|
|
1510
|
+
baseShape = _ref12.baseShape;
|
|
1539
1511
|
var halfSizeX = 0.5 * width;
|
|
1540
1512
|
var halfSizeY = 0.5 * height;
|
|
1541
1513
|
var points = baseShape === null || baseShape === void 0 ? void 0 : baseShape.points;
|
|
1542
|
-
var
|
|
1543
|
-
pA: new
|
|
1544
|
-
pB: new
|
|
1545
|
-
pC: new
|
|
1546
|
-
pD: new
|
|
1514
|
+
var _ref13 = points ? {
|
|
1515
|
+
pA: new Vector2(points.pA.x, points.pA.y),
|
|
1516
|
+
pB: new Vector2(points.pB.x, points.pB.y),
|
|
1517
|
+
pC: new Vector2(points.pC.x, points.pC.y),
|
|
1518
|
+
pD: new Vector2(points.pD.x, points.pD.y)
|
|
1547
1519
|
} : {
|
|
1548
|
-
pA: new
|
|
1549
|
-
pB: new
|
|
1550
|
-
pC: new
|
|
1551
|
-
pD: new
|
|
1520
|
+
pA: new Vector2(-halfSizeX, -halfSizeY),
|
|
1521
|
+
pB: new Vector2(halfSizeX, -halfSizeY),
|
|
1522
|
+
pC: new Vector2(halfSizeX, halfSizeY),
|
|
1523
|
+
pD: new Vector2(-halfSizeX, halfSizeY)
|
|
1552
1524
|
},
|
|
1553
|
-
pA =
|
|
1554
|
-
pB =
|
|
1555
|
-
pC =
|
|
1556
|
-
pD =
|
|
1557
|
-
var pAD = new
|
|
1558
|
-
var pBC = new
|
|
1559
|
-
var p = new
|
|
1525
|
+
pA = _ref13.pA,
|
|
1526
|
+
pB = _ref13.pB,
|
|
1527
|
+
pC = _ref13.pC,
|
|
1528
|
+
pD = _ref13.pD;
|
|
1529
|
+
var pAD = new Vector2();
|
|
1530
|
+
var pBC = new Vector2();
|
|
1531
|
+
var p = new Vector2();
|
|
1560
1532
|
var gridSize = 12;
|
|
1561
1533
|
var vertices = [];
|
|
1562
1534
|
var normals = [];
|
|
@@ -1584,12 +1556,11 @@ var createGridGeometryBuffer = function createGridGeometryBuffer(_ref14) {
|
|
|
1584
1556
|
indices.push(d, c, b); // face two
|
|
1585
1557
|
}
|
|
1586
1558
|
}
|
|
1587
|
-
|
|
1588
|
-
var geometry = new _three.BufferGeometry();
|
|
1559
|
+
var geometry = new BufferGeometry();
|
|
1589
1560
|
geometry.setIndex(indices);
|
|
1590
|
-
geometry.setAttribute("position", new
|
|
1591
|
-
geometry.setAttribute("normal", new
|
|
1592
|
-
geometry.setAttribute("uv", new
|
|
1561
|
+
geometry.setAttribute("position", new Float32BufferAttribute(vertices, 3));
|
|
1562
|
+
geometry.setAttribute("normal", new Float32BufferAttribute(normals, 3));
|
|
1563
|
+
geometry.setAttribute("uv", new Float32BufferAttribute(uvs, 2));
|
|
1593
1564
|
geometry.getControlPoints = function () {
|
|
1594
1565
|
return {
|
|
1595
1566
|
pA: pA,
|
|
@@ -1619,7 +1590,7 @@ var createBaseShapeGeometry = function createBaseShapeGeometry(designArea) {
|
|
|
1619
1590
|
switch (type) {
|
|
1620
1591
|
case "Plane":
|
|
1621
1592
|
{
|
|
1622
|
-
var _getDesignAreaCanvasS =
|
|
1593
|
+
var _getDesignAreaCanvasS = getDesignAreaCanvasSize(designArea),
|
|
1623
1594
|
width = _getDesignAreaCanvasS.width,
|
|
1624
1595
|
height = _getDesignAreaCanvasS.height;
|
|
1625
1596
|
if (baseShape.useControlPoints) {
|
|
@@ -1629,11 +1600,11 @@ var createBaseShapeGeometry = function createBaseShapeGeometry(designArea) {
|
|
|
1629
1600
|
baseShape: baseShape
|
|
1630
1601
|
});
|
|
1631
1602
|
}
|
|
1632
|
-
return new
|
|
1603
|
+
return new PlaneGeometry(width, height, 1, 1);
|
|
1633
1604
|
}
|
|
1634
1605
|
case "Cylinder":
|
|
1635
1606
|
{
|
|
1636
|
-
var _getDesignAreaCanvasS2 =
|
|
1607
|
+
var _getDesignAreaCanvasS2 = getDesignAreaCanvasSize(designArea),
|
|
1637
1608
|
_width = _getDesignAreaCanvasS2.width,
|
|
1638
1609
|
_height = _getDesignAreaCanvasS2.height;
|
|
1639
1610
|
var _r$thetaOffset$baseSh = _objectSpread({
|
|
@@ -1642,9 +1613,9 @@ var createBaseShapeGeometry = function createBaseShapeGeometry(designArea) {
|
|
|
1642
1613
|
}, baseShape),
|
|
1643
1614
|
r = _r$thetaOffset$baseSh.r,
|
|
1644
1615
|
thetaOffset = _r$thetaOffset$baseSh.thetaOffset;
|
|
1645
|
-
var theta = Math.min(_width / r,
|
|
1616
|
+
var theta = Math.min(_width / r, Numeric.TwoPI);
|
|
1646
1617
|
var radiusSegments = Math.round(theta * r);
|
|
1647
|
-
return new
|
|
1618
|
+
return new CylinderGeometry(r, r, _height, radiusSegments, 1, true, -theta / 2 + thetaOffset, theta);
|
|
1648
1619
|
}
|
|
1649
1620
|
default:
|
|
1650
1621
|
throw new Error("Unknown shape type: ".concat(type));
|