kitchen-simulator 1.1.1-test.71 → 1.1.1-test.72
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 +5 -2
- package/es/AppContext.js +6 -3
- package/es/KitchenConfigurator.js +86 -87
- package/es/KitchenConfiguratorApp.js +128 -135
- package/es/actions/area-actions.js +8 -5
- package/es/actions/export.js +24 -12
- package/es/actions/groups-actions.js +41 -27
- package/es/actions/holes-actions.js +51 -34
- package/es/actions/items-actions.js +141 -94
- package/es/actions/lines-actions.js +32 -21
- package/es/actions/project-actions.js +141 -94
- package/es/actions/scene-actions.js +17 -11
- package/es/actions/vertices-actions.js +11 -7
- package/es/actions/viewer2d-actions.js +32 -21
- package/es/actions/viewer3d-actions.js +14 -9
- package/es/catalog/areas/area/planner-element.js +5 -2
- package/es/catalog/catalog.js +17 -15
- package/es/catalog/factories/area-factory-3d.js +26 -22
- package/es/catalog/factories/area-factory.js +15 -13
- package/es/catalog/factories/export.js +10 -6
- package/es/catalog/factories/wall-factory-3d.js +36 -31
- package/es/catalog/factories/wall-factory.js +26 -21
- package/es/catalog/holes/door-closet/planner-element.js +19 -15
- package/es/catalog/holes/door-double/planner-element.js +19 -15
- package/es/catalog/holes/door-exterior/planner-element.js +20 -16
- package/es/catalog/holes/door-interior/planner-element.js +20 -16
- package/es/catalog/holes/door-panic/planner-element.js +11 -7
- package/es/catalog/holes/door-panic-double/planner-element.js +19 -15
- package/es/catalog/holes/door-sliding/planner-element.js +21 -17
- package/es/catalog/holes/doorway-framed/planner-element.js +15 -11
- package/es/catalog/holes/doorway-frameless/planner-element.js +11 -7
- package/es/catalog/holes/export.js +29 -13
- package/es/catalog/holes/window-clear/planner-element.js +14 -10
- package/es/catalog/holes/window-cross/planner-element.js +14 -10
- package/es/catalog/holes/window-double-hung/planner-element.js +14 -10
- package/es/catalog/holes/window-vertical/planner-element.js +14 -10
- package/es/catalog/lines/wall/planner-element.js +5 -2
- package/es/catalog/molding/molding-dcm/planner-element.js +9 -5
- package/es/catalog/molding/molding-fbm/planner-element.js +9 -5
- package/es/catalog/molding/molding-lrm/planner-element.js +9 -5
- package/es/catalog/properties/export.js +31 -20
- package/es/catalog/properties/property-checkbox.js +29 -28
- package/es/catalog/properties/property-color.js +19 -16
- package/es/catalog/properties/property-enum.js +27 -24
- package/es/catalog/properties/property-hidden.js +12 -9
- package/es/catalog/properties/property-lenght-measure.js +41 -38
- package/es/catalog/properties/property-length-measure.js +39 -36
- package/es/catalog/properties/property-length-measure_hole.js +41 -38
- package/es/catalog/properties/property-number.js +20 -17
- package/es/catalog/properties/property-read-only.js +19 -16
- package/es/catalog/properties/property-string.js +19 -16
- package/es/catalog/properties/property-toggle.js +19 -16
- package/es/catalog/properties/shared-property-style.js +3 -1
- package/es/catalog/utils/FuseUtils.js +13 -12
- package/es/catalog/utils/exporter.js +11 -10
- package/es/catalog/utils/geom-utils.js +24 -13
- package/es/catalog/utils/item-loader.js +92 -86
- package/es/catalog/utils/load-obj.js +24 -20
- package/es/catalog/utils/mtl-loader.js +4 -3
- package/es/catalog/utils/obj-loader.js +4 -3
- package/es/class/FuseUtils.js +13 -12
- package/es/class/area.js +24 -24
- package/es/class/export.js +36 -23
- package/es/class/group.js +55 -53
- package/es/class/guide.js +17 -15
- package/es/class/hole.js +85 -83
- package/es/class/item.js +155 -155
- package/es/class/layer.js +61 -59
- package/es/class/line.js +138 -135
- package/es/class/project.js +94 -93
- package/es/class/vertex.js +31 -29
- package/es/components/content.js +23 -19
- package/es/components/disclaimer/disclaimer.js +13 -10
- package/es/components/export.js +13 -8
- package/es/components/style/button.js +25 -25
- package/es/components/style/cancel-button.js +10 -7
- package/es/components/style/content-container.js +12 -11
- package/es/components/style/content-title.js +15 -13
- package/es/components/style/delete-button.js +12 -8
- package/es/components/style/export.js +46 -30
- package/es/components/style/form-block.js +11 -10
- package/es/components/style/form-color-input.js +10 -7
- package/es/components/style/form-label.js +11 -10
- package/es/components/style/form-number-input.js +43 -45
- package/es/components/style/form-number-input_2.js +39 -41
- package/es/components/style/form-select.js +20 -19
- package/es/components/style/form-slider.js +13 -10
- package/es/components/style/form-submit-button.js +12 -8
- package/es/components/style/form-text-input.js +28 -30
- package/es/components/viewer2d/area.js +20 -17
- package/es/components/viewer2d/export.js +46 -30
- package/es/components/viewer2d/grids/grid-horizontal-streak.js +13 -10
- package/es/components/viewer2d/grids/grid-streak.js +13 -10
- package/es/components/viewer2d/grids/grid-vertical-streak.js +13 -10
- package/es/components/viewer2d/grids/grids.js +14 -10
- package/es/components/viewer2d/group.js +19 -15
- package/es/components/viewer2d/item.js +65 -61
- package/es/components/viewer2d/layer.js +26 -23
- package/es/components/viewer2d/line.js +106 -101
- package/es/components/viewer2d/ruler.js +25 -22
- package/es/components/viewer2d/rulerDist.js +24 -21
- package/es/components/viewer2d/rulerX.js +44 -46
- package/es/components/viewer2d/rulerY.js +42 -44
- package/es/components/viewer2d/scene.js +34 -35
- package/es/components/viewer2d/snap.js +17 -13
- package/es/components/viewer2d/state.js +22 -18
- package/es/components/viewer2d/utils.js +33 -24
- package/es/components/viewer2d/vertex.js +12 -8
- package/es/components/viewer2d/viewer2d.js +159 -156
- package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +19 -21
- package/es/components/viewer3d/dcm.js +3 -1
- package/es/components/viewer3d/fbm.js +3 -1
- package/es/components/viewer3d/front3D.js +16 -12
- package/es/components/viewer3d/grid-creator.js +12 -8
- package/es/components/viewer3d/grids/grid-horizontal-streak.js +9 -6
- package/es/components/viewer3d/grids/grid-streak.js +8 -5
- package/es/components/viewer3d/grids/grid-vertical-streak.js +9 -6
- package/es/components/viewer3d/libs/first-person-controls.js +5 -2
- package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +3 -1
- package/es/components/viewer3d/libs/mtl-loader.js +3 -1
- package/es/components/viewer3d/libs/obj-loader.js +3 -1
- package/es/components/viewer3d/libs/orbit-controls.js +4 -2
- package/es/components/viewer3d/libs/pointer-lock-controls.js +4 -2
- package/es/components/viewer3d/lrm.js +3 -1
- package/es/components/viewer3d/model.js +3 -1
- package/es/components/viewer3d/pointer-lock-navigation.js +6 -3
- package/es/components/viewer3d/ruler-utils/itemRect.js +21 -18
- package/es/components/viewer3d/ruler-utils/layer3D.js +62 -59
- package/es/components/viewer3d/ruler-utils/ruler3D.js +43 -42
- package/es/components/viewer3d/ruler-utils/scene3D.js +13 -9
- package/es/components/viewer3d/ruler-utils/state3D.js +7 -4
- package/es/components/viewer3d/scene-creator.js +223 -197
- package/es/components/viewer3d/three-memory-cleaner.js +7 -3
- package/es/components/viewer3d/viewer3d-first-person.js +42 -42
- package/es/components/viewer3d/viewer3d.js +198 -200
- package/es/constants.js +354 -349
- package/es/index.js +11 -7
- package/es/models.js +191 -193
- package/es/plugins/SVGLoader.js +49 -48
- package/es/plugins/autosave.js +5 -3
- package/es/plugins/console-debugger.js +7 -6
- package/es/plugins/export.js +13 -8
- package/es/plugins/keyboard.js +31 -29
- package/es/reducers/areas-reducer.js +9 -7
- package/es/reducers/export.js +37 -24
- package/es/reducers/groups-reducer.js +33 -31
- package/es/reducers/holes-reducer.js +45 -43
- package/es/reducers/items-reducer.js +108 -106
- package/es/reducers/lines-reducer.js +30 -28
- package/es/reducers/project-reducer.js +107 -105
- package/es/reducers/reducer.js +19 -16
- package/es/reducers/scene-reducer.js +17 -15
- package/es/reducers/user-reducer.js +7 -5
- package/es/reducers/vertices-reducer.js +13 -11
- package/es/reducers/viewer2d-reducer.js +20 -18
- package/es/reducers/viewer3d-reducer.js +18 -16
- package/es/shared-style.js +12 -10
- package/es/styles/export.js +6 -3
- package/es/translator/en.js +3 -1
- package/es/translator/it.js +3 -1
- package/es/translator/ru.js +3 -1
- package/es/translator/translator.js +15 -13
- package/es/utils/browser.js +5 -2
- package/es/utils/convert-units-lite.js +3 -1
- package/es/utils/email-validator.js +3 -1
- package/es/utils/export.js +29 -15
- package/es/utils/geometry.js +280 -190
- package/es/utils/get-edges-of-subgraphs.js +5 -2
- package/es/utils/graph-cycles.js +7 -8
- package/es/utils/graph-inner-cycles.js +14 -10
- package/es/utils/graph.js +13 -9
- package/es/utils/helper.js +58 -41
- package/es/utils/history.js +11 -8
- package/es/utils/id-broker.js +11 -8
- package/es/utils/logger.js +3 -1
- package/es/utils/math.js +8 -5
- package/es/utils/molding.js +146 -130
- package/es/utils/name-generator.js +9 -7
- package/es/utils/objects-utils.js +14 -7
- package/es/utils/phone-validator.js +3 -1
- package/es/utils/process-black-list.js +6 -5
- package/es/utils/react-if.js +9 -7
- package/es/utils/snap-scene.js +30 -27
- package/es/utils/snap.js +57 -53
- package/es/utils/summarizeCart.js +3 -1
- package/es/utils/threeCSG.es6.js +17 -13
- package/es/version.js +3 -1
- package/package.json +1 -1
package/es/catalog/catalog.js
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var
|
|
1
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports["default"] = void 0;
|
|
4
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/toConsumableArray"));
|
|
5
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/classCallCheck"));
|
|
6
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/createClass"));
|
|
7
|
+
var _export = require("./properties/export");
|
|
8
|
+
var _constants = require("../constants");
|
|
9
|
+
var _utils = require("../components/viewer2d/utils");
|
|
10
|
+
var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
8
11
|
function Catalog() {
|
|
9
|
-
var unit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : UNIT_CENTIMETER;
|
|
10
|
-
|
|
12
|
+
var unit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : _constants.UNIT_CENTIMETER;
|
|
13
|
+
(0, _classCallCheck2["default"])(this, Catalog);
|
|
11
14
|
this.elements = {};
|
|
12
15
|
this.categories = {
|
|
13
16
|
root: {
|
|
@@ -19,7 +22,7 @@ var Catalog = /*#__PURE__*/function () {
|
|
|
19
22
|
};
|
|
20
23
|
this.propertyTypes = {};
|
|
21
24
|
this.unit = unit;
|
|
22
|
-
this.registerMultiplePropertyType([['color', PropertyColor, PropertyColor], ['enum', PropertyEnum, PropertyEnum], ['string', PropertyString, PropertyString], ['number', PropertyNumber, PropertyNumber], ['length-measure', PropertyLengthMeasure, PropertyLengthMeasure], ['toggle', PropertyToggle, PropertyToggle], ['checkbox', PropertyCheckbox, PropertyCheckbox], ['hidden', PropertyHidden, PropertyHidden], ['read-only', PropertyReadOnly, PropertyReadOnly]]);
|
|
25
|
+
this.registerMultiplePropertyType([['color', _export.PropertyColor, _export.PropertyColor], ['enum', _export.PropertyEnum, _export.PropertyEnum], ['string', _export.PropertyString, _export.PropertyString], ['number', _export.PropertyNumber, _export.PropertyNumber], ['length-measure', _export.PropertyLengthMeasure, _export.PropertyLengthMeasure], ['toggle', _export.PropertyToggle, _export.PropertyToggle], ['checkbox', _export.PropertyCheckbox, _export.PropertyCheckbox], ['hidden', _export.PropertyHidden, _export.PropertyHidden], ['read-only', _export.PropertyReadOnly, _export.PropertyReadOnly]]);
|
|
23
26
|
}
|
|
24
27
|
|
|
25
28
|
/**
|
|
@@ -27,13 +30,13 @@ var Catalog = /*#__PURE__*/function () {
|
|
|
27
30
|
* @param {string} type Element's type
|
|
28
31
|
* @return {?object} Element
|
|
29
32
|
*/
|
|
30
|
-
return
|
|
33
|
+
return (0, _createClass2["default"])(Catalog, [{
|
|
31
34
|
key: "getElement",
|
|
32
35
|
value: function getElement(type) {
|
|
33
36
|
if (this.hasElement(type)) {
|
|
34
37
|
return this.elements[type];
|
|
35
38
|
} else {
|
|
36
|
-
var deepSearchType = returnReplaceableDeepSearchType(type);
|
|
39
|
+
var deepSearchType = (0, _utils.returnReplaceableDeepSearchType)(type);
|
|
37
40
|
var element = this.elements[deepSearchType];
|
|
38
41
|
if (element) return element;
|
|
39
42
|
if (!element) return false;
|
|
@@ -126,7 +129,7 @@ var Catalog = /*#__PURE__*/function () {
|
|
|
126
129
|
value: function registerMultiplePropertyType(propertyTypeArray) {
|
|
127
130
|
var _this2 = this;
|
|
128
131
|
propertyTypeArray.forEach(function (el) {
|
|
129
|
-
return _this2.registerPropertyType.apply(_this2,
|
|
132
|
+
return _this2.registerPropertyType.apply(_this2, (0, _toConsumableArray2["default"])(el));
|
|
130
133
|
});
|
|
131
134
|
}
|
|
132
135
|
|
|
@@ -264,5 +267,4 @@ var Catalog = /*#__PURE__*/function () {
|
|
|
264
267
|
return this.categories.hasOwnProperty(categoryName);
|
|
265
268
|
}
|
|
266
269
|
}]);
|
|
267
|
-
}();
|
|
268
|
-
export { Catalog as default };
|
|
270
|
+
}();
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.createArea = createArea;
|
|
4
|
+
exports.updatedArea = updatedArea;
|
|
5
|
+
var _three = _interopRequireWildcard(require("three"));
|
|
6
|
+
var Three = _three;
|
|
7
|
+
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
8
|
+
var _RGBELoader = require("three/examples/jsm/loaders/RGBELoader");
|
|
5
9
|
var params = {
|
|
6
10
|
envMap: 'HDR',
|
|
7
11
|
roughness: 0.9,
|
|
@@ -18,19 +22,19 @@ var params = {
|
|
|
18
22
|
* @param height: The height of the face
|
|
19
23
|
*/
|
|
20
24
|
var applyTexture = function applyTexture(material, texture, length, height) {
|
|
21
|
-
var loader = new TextureLoader();
|
|
25
|
+
var loader = new _three.TextureLoader();
|
|
22
26
|
if (texture) {
|
|
23
27
|
material.map = loader.load(texture.uri);
|
|
24
28
|
material.map.colorSpace = Three.SRGBColorSpace;
|
|
25
29
|
material.needsUpdate = true;
|
|
26
|
-
material.map.wrapS = RepeatWrapping;
|
|
27
|
-
material.map.wrapT = RepeatWrapping;
|
|
30
|
+
material.map.wrapS = _three.RepeatWrapping;
|
|
31
|
+
material.map.wrapT = _three.RepeatWrapping;
|
|
28
32
|
material.map.repeat.set(length * texture.lengthRepeatScale, height * texture.heightRepeatScale);
|
|
29
33
|
if (texture.normal) {
|
|
30
34
|
material.normalMap = loader.load(texture.normal.uri);
|
|
31
|
-
material.normalScale = new Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
32
|
-
material.normalMap.wrapS = RepeatWrapping;
|
|
33
|
-
material.normalMap.wrapT = RepeatWrapping;
|
|
35
|
+
material.normalScale = new _three.Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
36
|
+
material.normalMap.wrapS = _three.RepeatWrapping;
|
|
37
|
+
material.normalMap.wrapT = _three.RepeatWrapping;
|
|
34
38
|
material.normalMap.repeat.set(length * texture.normal.lengthRepeatScale, height * texture.normal.heightRepeatScale);
|
|
35
39
|
}
|
|
36
40
|
}
|
|
@@ -45,8 +49,8 @@ var assignUVs = function assignUVs(geometry) {
|
|
|
45
49
|
var _geometry$boundingBox = geometry.boundingBox,
|
|
46
50
|
min = _geometry$boundingBox.min,
|
|
47
51
|
max = _geometry$boundingBox.max;
|
|
48
|
-
var offset = new Vector2(0 - min.x, 0 - min.y);
|
|
49
|
-
var range = new Vector2(max.x - min.x, max.y - min.y);
|
|
52
|
+
var offset = new _three.Vector2(0 - min.x, 0 - min.y);
|
|
53
|
+
var range = new _three.Vector2(max.x - min.x, max.y - min.y);
|
|
50
54
|
var uvArray = [];
|
|
51
55
|
var position = geometry.attributes.position;
|
|
52
56
|
for (var i = 0; i < position.count; i += 3) {
|
|
@@ -61,7 +65,7 @@ var assignUVs = function assignUVs(geometry) {
|
|
|
61
65
|
geometry.setAttribute('uv', new Three.BufferAttribute(new Float32Array(uvArray), 2));
|
|
62
66
|
geometry.needsUpdate = true;
|
|
63
67
|
};
|
|
64
|
-
|
|
68
|
+
function createArea(element, layer, scene, textures) {
|
|
65
69
|
var vertices = [];
|
|
66
70
|
element.vertices.forEach(function (vertexID) {
|
|
67
71
|
vertices.push(layer.vertices.get(vertexID));
|
|
@@ -78,20 +82,20 @@ export function createArea(element, layer, scene, textures) {
|
|
|
78
82
|
if (texture.uri === undefined || texture.uri == '') {
|
|
79
83
|
texture.uri = layer.floorStyle.uri;
|
|
80
84
|
}
|
|
81
|
-
var shape = new Shape();
|
|
85
|
+
var shape = new _three.Shape();
|
|
82
86
|
shape.moveTo(vertices[0].x, vertices[0].y);
|
|
83
87
|
for (var i = 1; i < vertices.length; i++) {
|
|
84
88
|
shape.lineTo(vertices[i].x, vertices[i].y);
|
|
85
89
|
}
|
|
86
90
|
function loadFloorENV() {
|
|
87
|
-
return new RGBELoader().load('/assets/Window.hdr', function (texture) {
|
|
91
|
+
return new _RGBELoader.RGBELoader().load('/assets/Window.hdr', function (texture) {
|
|
88
92
|
texture.mapping = Three.EquirectangularReflectionMapping;
|
|
89
93
|
return texture;
|
|
90
94
|
});
|
|
91
95
|
}
|
|
92
96
|
var floorENV = loadFloorENV();
|
|
93
|
-
var loader = new TextureLoader();
|
|
94
|
-
var areaMaterial = new MeshPhysicalMaterial({
|
|
97
|
+
var loader = new _three.TextureLoader();
|
|
98
|
+
var areaMaterial = new _three.MeshPhysicalMaterial({
|
|
95
99
|
side: Three.DoubleSide,
|
|
96
100
|
metalness: texture.metalness,
|
|
97
101
|
roughness: 0.3,
|
|
@@ -123,20 +127,20 @@ export function createArea(element, layer, scene, textures) {
|
|
|
123
127
|
};
|
|
124
128
|
var shapeGeometry = new Three.ExtrudeGeometry(shape, extrudeSettings);
|
|
125
129
|
assignUVs(shapeGeometry);
|
|
126
|
-
var boundingBox = new Box3().setFromObject(new Mesh(shapeGeometry, new MeshBasicMaterial()));
|
|
130
|
+
var boundingBox = new _three.Box3().setFromObject(new _three.Mesh(shapeGeometry, new _three.MeshBasicMaterial()));
|
|
127
131
|
var width = boundingBox.max.x - boundingBox.min.x;
|
|
128
132
|
var height = boundingBox.max.y - boundingBox.min.y;
|
|
129
133
|
var texture_unit = 70 * 2.54; // 70 inch
|
|
130
134
|
|
|
131
135
|
applyTexture(areaMaterial, texture, width / texture_unit * 100, height / texture_unit * 100);
|
|
132
|
-
var area = new Mesh(shapeGeometry, areaMaterial);
|
|
136
|
+
var area = new _three.Mesh(shapeGeometry, areaMaterial);
|
|
133
137
|
area.rotation.x -= Math.PI / 2;
|
|
134
138
|
area.receiveShadow = true;
|
|
135
139
|
area.name = 'floor';
|
|
136
140
|
// This mesh is use for creating ceiling mesh
|
|
137
141
|
|
|
138
142
|
var shapeGeometry2 = new Three.ShapeGeometry(shape);
|
|
139
|
-
var area2 = new Mesh(shapeGeometry2, new MeshBasicMaterial({
|
|
143
|
+
var area2 = new _three.Mesh(shapeGeometry2, new _three.MeshBasicMaterial({
|
|
140
144
|
transparent: true,
|
|
141
145
|
opacity: 0.0
|
|
142
146
|
}));
|
|
@@ -148,7 +152,7 @@ export function createArea(element, layer, scene, textures) {
|
|
|
148
152
|
area.userData.floorSupport = floorSupport;
|
|
149
153
|
return Promise.resolve(area);
|
|
150
154
|
}
|
|
151
|
-
|
|
155
|
+
function updatedArea(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
152
156
|
var noPerf = function noPerf() {
|
|
153
157
|
selfDestroy();
|
|
154
158
|
return selfBuild();
|
|
@@ -172,7 +176,7 @@ export function updatedArea(element, layer, scene, textures, mesh, oldElement, d
|
|
|
172
176
|
* @returns {Shape}
|
|
173
177
|
*/
|
|
174
178
|
var createShape = function createShape(shapeCoords) {
|
|
175
|
-
var shape = new Shape();
|
|
179
|
+
var shape = new _three.Shape();
|
|
176
180
|
shape.moveTo(shapeCoords[0][0], shapeCoords[0][1]);
|
|
177
181
|
for (var i = 1; i < shapeCoords.length; i++) {
|
|
178
182
|
shape.lineTo(shapeCoords[i][0], shapeCoords[i][1]);
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var
|
|
9
|
-
|
|
1
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
|
|
2
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports["default"] = AreaFactory;
|
|
5
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _areaFactory3d = require("./area-factory-3d");
|
|
8
|
+
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
9
|
+
var _translator = _interopRequireDefault(require("../../translator/translator"));
|
|
10
|
+
var translator = new _translator["default"]();
|
|
11
|
+
function AreaFactory(name, info, textures) {
|
|
10
12
|
var areaElement = {
|
|
11
13
|
name: name,
|
|
12
14
|
prototype: 'areas',
|
|
13
|
-
info:
|
|
15
|
+
info: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, info), {}, {
|
|
14
16
|
visibility: {
|
|
15
17
|
catalog: false,
|
|
16
18
|
layerElementsVisible: false
|
|
@@ -48,16 +50,16 @@ export default function AreaFactory(name, info, textures) {
|
|
|
48
50
|
});
|
|
49
51
|
});
|
|
50
52
|
var fill = element.selected ? SharedStyle.AREA_MESH_COLOR.selected : SharedStyle.AREA_MESH_COLOR.unselected;
|
|
51
|
-
return /*#__PURE__*/
|
|
53
|
+
return /*#__PURE__*/_react["default"].createElement("path", {
|
|
52
54
|
d: path,
|
|
53
55
|
fill: fill
|
|
54
56
|
});
|
|
55
57
|
},
|
|
56
58
|
render3D: function render3D(element, layer, scene) {
|
|
57
|
-
return createArea(element, layer, scene, textures);
|
|
59
|
+
return (0, _areaFactory3d.createArea)(element, layer, scene, textures);
|
|
58
60
|
},
|
|
59
61
|
updateRender3D: function updateRender3D(element, layer, scene, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
60
|
-
return updatedArea(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild);
|
|
62
|
+
return (0, _areaFactory3d.updatedArea)(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild);
|
|
61
63
|
}
|
|
62
64
|
};
|
|
63
65
|
if (textures && textures !== {}) {
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports["default"] = void 0;
|
|
4
|
+
var _wallFactory = _interopRequireDefault(require("./wall-factory"));
|
|
5
|
+
exports.WallFactory = _wallFactory["default"];
|
|
6
|
+
var _areaFactory = _interopRequireDefault(require("./area-factory"));
|
|
7
|
+
exports.AreaFactory = _areaFactory["default"];
|
|
8
|
+
var _default = exports["default"] = {
|
|
9
|
+
WallFactory: _wallFactory["default"],
|
|
10
|
+
AreaFactory: _areaFactory["default"]
|
|
7
11
|
};
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
2
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.buildWall = buildWall;
|
|
5
|
+
exports.updatedWall = updatedWall;
|
|
6
|
+
var _three = _interopRequireWildcard(require("three"));
|
|
7
|
+
var Three = _three;
|
|
8
|
+
var _geometry = require("../../utils/geometry");
|
|
9
|
+
var _helper = require("../../utils/helper");
|
|
10
|
+
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
11
|
+
var _constants = require("../../constants");
|
|
12
|
+
var _convertUnitsLite = require("../../utils/convert-units-lite");
|
|
13
|
+
var _threeCSG = _interopRequireDefault(require("../../utils/threeCSG.es6"));
|
|
9
14
|
var params = {
|
|
10
15
|
envMap: 'HDR',
|
|
11
16
|
roughness: 0.1,
|
|
@@ -23,23 +28,23 @@ var halfPI = Math.PI / 2;
|
|
|
23
28
|
* @param height: The height of the face
|
|
24
29
|
*/
|
|
25
30
|
var applyTexture = function applyTexture(material, texture, length, height) {
|
|
26
|
-
var loader = new TextureLoader();
|
|
31
|
+
var loader = new _three.TextureLoader();
|
|
27
32
|
if (texture) {
|
|
28
33
|
material.map = loader.load(texture.uri["default"]);
|
|
29
34
|
material.map.colorSpace = Three.SRGBColorSpace, material.needsUpdate = true;
|
|
30
|
-
material.map.wrapS = RepeatWrapping;
|
|
31
|
-
material.map.wrapT = RepeatWrapping;
|
|
35
|
+
material.map.wrapS = _three.RepeatWrapping;
|
|
36
|
+
material.map.wrapT = _three.RepeatWrapping;
|
|
32
37
|
material.map.repeat.set(length * texture.lengthRepeatScale, height * texture.heightRepeatScale);
|
|
33
38
|
if (texture.normal) {
|
|
34
39
|
material.normalMap = loader.load(texture.normal.uri["default"]);
|
|
35
|
-
material.normalScale = new Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
36
|
-
material.normalMap.wrapS = RepeatWrapping;
|
|
37
|
-
material.normalMap.wrapT = RepeatWrapping;
|
|
40
|
+
material.normalScale = new _three.Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
41
|
+
material.normalMap.wrapS = _three.RepeatWrapping;
|
|
42
|
+
material.normalMap.wrapT = _three.RepeatWrapping;
|
|
38
43
|
material.normalMap.repeat.set(length * texture.normal.lengthRepeatScale, height * texture.normal.heightRepeatScale);
|
|
39
44
|
}
|
|
40
45
|
}
|
|
41
46
|
};
|
|
42
|
-
|
|
47
|
+
function buildWall(element, layer, scene, textures, mode) {
|
|
43
48
|
// Get the two vertices of the wall
|
|
44
49
|
var vetName0 = element.vertices.get(0);
|
|
45
50
|
var vetName1 = element.vertices.get(1);
|
|
@@ -59,9 +64,9 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
59
64
|
// Get height and thickness of the wall converting them into the current scene units
|
|
60
65
|
// let height = element.properties.getIn(['height', 'length']);
|
|
61
66
|
// let thickness = element.properties.getIn(['thickness', 'length']);
|
|
62
|
-
var height = convert(layer.ceilHeight).from(layer.unit).to(UNIT_CENTIMETER);
|
|
67
|
+
var height = (0, _convertUnitsLite.convert)(layer.ceilHeight).from(layer.unit).to(_constants.UNIT_CENTIMETER);
|
|
63
68
|
var thickness = 2.0;
|
|
64
|
-
var distance = verticesDistance(vertex0, vertex1);
|
|
69
|
+
var distance = (0, _geometry.verticesDistance)(vertex0, vertex1);
|
|
65
70
|
var soulMaterial = new Three.MeshPhongMaterial({
|
|
66
71
|
color: new Three.Color(wallColor).convertLinearToSRGB()
|
|
67
72
|
}); //element.selected ? SharedStyle.MESH_SELECTED : 0xD3D3D3
|
|
@@ -71,7 +76,7 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
71
76
|
soulVertices.push(new Three.Vector2(distance / 2, -height / 2));
|
|
72
77
|
soulVertices.push(new Three.Vector2(-distance / 2, -height / 2));
|
|
73
78
|
var soulShape = new Three.Shape(soulVertices);
|
|
74
|
-
var soulMesh = new Mesh(new BoxGeometry(distance, height, thickness), soulMaterial);
|
|
79
|
+
var soulMesh = new _three.Mesh(new _three.BoxGeometry(distance, height, thickness), soulMaterial);
|
|
75
80
|
if (element.userData.stateMode !== 'MODE_DRAWING_HOLE_3D') {
|
|
76
81
|
element.holes.forEach(function (holeID) {
|
|
77
82
|
var holeData = layer.holes.get(holeID);
|
|
@@ -94,14 +99,14 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
94
99
|
}
|
|
95
100
|
var shapeHole = new Three.Shape(holeVertices);
|
|
96
101
|
soulShape.holes.push(shapeHole);
|
|
97
|
-
var holeGeometry = new BoxGeometry(holeWidth, holeHeight, thickness);
|
|
98
|
-
var holeMesh = new Mesh(holeGeometry);
|
|
102
|
+
var holeGeometry = new _three.BoxGeometry(holeWidth, holeHeight, thickness);
|
|
103
|
+
var holeMesh = new _three.Mesh(holeGeometry);
|
|
99
104
|
holeMesh.position.x += holeWidth / 2;
|
|
100
105
|
holeMesh.position.y += holeHeight / 2;
|
|
101
106
|
holeMesh.position.x += holeDistance - distance / 2 - holeWidth / 2;
|
|
102
107
|
holeMesh.position.y -= height / 2 - holeAltitude;
|
|
103
|
-
var wallBSP = new
|
|
104
|
-
var holeBSP = new
|
|
108
|
+
var wallBSP = new _threeCSG["default"](soulMesh);
|
|
109
|
+
var holeBSP = new _threeCSG["default"](holeMesh);
|
|
105
110
|
var wallWithHoleBSP = wallBSP.subtract(holeBSP);
|
|
106
111
|
soulMesh = wallWithHoleBSP.toMesh(soulMaterial);
|
|
107
112
|
}
|
|
@@ -109,7 +114,7 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
109
114
|
}
|
|
110
115
|
var cAlpha = new Three.Vector2(vertex0.x - vertex1.x, vertex0.y - vertex1.y).angle();
|
|
111
116
|
var soulGeometry = new Three.ShapeGeometry(soulShape);
|
|
112
|
-
var soul = new Mesh(soulGeometry, soulMaterial);
|
|
117
|
+
var soul = new _three.Mesh(soulGeometry, soulMaterial);
|
|
113
118
|
soul.receiveShadow = true;
|
|
114
119
|
soul.castShadow = true;
|
|
115
120
|
soul.position.y += height / 2;
|
|
@@ -119,13 +124,13 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
119
124
|
soulMesh.rotation.y = cAlpha + Math.PI;
|
|
120
125
|
soulMesh.name = 'soul';
|
|
121
126
|
soulMesh.castShadow = true;
|
|
122
|
-
var frontMaterial = new MeshStandardMaterial({
|
|
127
|
+
var frontMaterial = new _three.MeshStandardMaterial({
|
|
123
128
|
color: new Three.Color(wallColor).convertLinearToSRGB(),
|
|
124
129
|
metalness: 0.1,
|
|
125
130
|
roughness: 0.9
|
|
126
131
|
// envMap: textureCube,
|
|
127
132
|
});
|
|
128
|
-
var backMaterial = new MeshStandardMaterial({
|
|
133
|
+
var backMaterial = new _three.MeshStandardMaterial({
|
|
129
134
|
color: new Three.Color(wallColor).convertLinearToSRGB(),
|
|
130
135
|
metalness: 0.1,
|
|
131
136
|
roughness: 0.9
|
|
@@ -137,11 +142,11 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
137
142
|
frontFace.material = frontMaterial;
|
|
138
143
|
frontFace.name = 'frontFace';
|
|
139
144
|
soulMesh.material = frontMaterial;
|
|
140
|
-
var merged = new Group();
|
|
145
|
+
var merged = new _three.Group();
|
|
141
146
|
merged.add(frontFace, soulMesh);
|
|
142
147
|
|
|
143
148
|
// if this wall is front of camera, show/hide
|
|
144
|
-
if (!isElevationView(mode)) {
|
|
149
|
+
if (!(0, _helper.isElevationView)(mode)) {
|
|
145
150
|
frontFace.onBeforeRender = function (renderer, scene, camera, geometry, material, group) {
|
|
146
151
|
var soulMesh = this.parent.getObjectByName('soul');
|
|
147
152
|
if (geometry.attributes.normal === undefined) return soulMesh.visible = false;
|
|
@@ -160,7 +165,7 @@ export function buildWall(element, layer, scene, textures, mode) {
|
|
|
160
165
|
}
|
|
161
166
|
return Promise.resolve(merged);
|
|
162
167
|
}
|
|
163
|
-
|
|
168
|
+
function updatedWall(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
164
169
|
var noPerf = function noPerf() {
|
|
165
170
|
selfDestroy();
|
|
166
171
|
return selfBuild();
|
|
@@ -171,7 +176,7 @@ export function updatedWall(element, layer, scene, textures, mesh, oldElement, d
|
|
|
171
176
|
if (differences[0] == 'selected') {
|
|
172
177
|
if (soul !== undefined) {
|
|
173
178
|
if (element.selected) {
|
|
174
|
-
soul.material = new MeshBasicMaterial({
|
|
179
|
+
soul.material = new _three.MeshBasicMaterial({
|
|
175
180
|
color: new Three.Color(SharedStyle.MESH_SELECTED).convertLinearToSRGB()
|
|
176
181
|
});
|
|
177
182
|
} else {
|
|
@@ -181,8 +186,8 @@ export function updatedWall(element, layer, scene, textures, mesh, oldElement, d
|
|
|
181
186
|
}
|
|
182
187
|
} else if (differences[0] == 'properties') {
|
|
183
188
|
if (differences[1] == 'thickness') {
|
|
184
|
-
var newThickness = LINE_THICKNESS / 2;
|
|
185
|
-
var oldThickness = LINE_THICKNESS / 2;
|
|
189
|
+
var newThickness = _constants.LINE_THICKNESS / 2;
|
|
190
|
+
var oldThickness = _constants.LINE_THICKNESS / 2;
|
|
186
191
|
// let newThickness = element.getIn(['properties', 'thickness', 'length']);
|
|
187
192
|
// let oldThickness = oldElement.getIn(['properties', 'thickness', 'length']);
|
|
188
193
|
var halfNewThickness = newThickness / 2;
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
|
|
2
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports["default"] = WallFactory;
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
var _wallFactory3d = require("./wall-factory-3d");
|
|
7
|
+
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
8
|
+
var Geometry = _interopRequireWildcard(require("../../utils/geometry"));
|
|
9
|
+
var _translator = _interopRequireDefault(require("../../translator/translator"));
|
|
10
|
+
var _constants = require("../../constants");
|
|
11
|
+
var _line = _interopRequireDefault(require("../../class/line"));
|
|
7
12
|
// import Line from 'src/class/line';
|
|
8
|
-
|
|
13
|
+
|
|
9
14
|
var epsilon = 20;
|
|
10
15
|
var STYLE_TEXT = {
|
|
11
16
|
textAnchor: 'middle'
|
|
@@ -45,11 +50,11 @@ var STYLE_POLYGON_SELECTED = {
|
|
|
45
50
|
stroke: SharedStyle.LINE_MESH_COLOR.selected,
|
|
46
51
|
fill: SharedStyle.LINE_MESH_COLOR.selected
|
|
47
52
|
};
|
|
48
|
-
var translator = new
|
|
53
|
+
var translator = new _translator["default"]();
|
|
49
54
|
|
|
50
55
|
/** Create Lines from State */
|
|
51
56
|
var createLineGeometry = function createLineGeometry(scene, state) {
|
|
52
|
-
var wall_thickness = LINE_THICKNESS / 2;
|
|
57
|
+
var wall_thickness = _constants.LINE_THICKNESS / 2;
|
|
53
58
|
var layerID = scene.selectedLayer;
|
|
54
59
|
var layer = scene.getIn(['layers', layerID]);
|
|
55
60
|
var lines = layer.lines;
|
|
@@ -133,13 +138,13 @@ var createLineGeometry = function createLineGeometry(scene, state) {
|
|
|
133
138
|
});
|
|
134
139
|
}
|
|
135
140
|
});
|
|
136
|
-
state =
|
|
141
|
+
state = _line["default"].setRelatedLine(state, layer.id, line.id, intersection).updatedState;
|
|
137
142
|
});
|
|
138
143
|
return {
|
|
139
144
|
updatedState: state
|
|
140
145
|
};
|
|
141
146
|
};
|
|
142
|
-
|
|
147
|
+
function WallFactory(name, info, textures) {
|
|
143
148
|
var wallElement = {
|
|
144
149
|
name: name,
|
|
145
150
|
prototype: 'lines',
|
|
@@ -155,7 +160,7 @@ export default function WallFactory(name, info, textures) {
|
|
|
155
160
|
label: translator.t('thickness'),
|
|
156
161
|
type: 'length-measure',
|
|
157
162
|
defaultValue: {
|
|
158
|
-
length: LINE_THICKNESS / 2
|
|
163
|
+
length: _constants.LINE_THICKNESS / 2
|
|
159
164
|
}
|
|
160
165
|
},
|
|
161
166
|
properties: {},
|
|
@@ -175,7 +180,7 @@ export default function WallFactory(name, info, textures) {
|
|
|
175
180
|
var verticesinfo = layer.vertices.get(element.vertices.get(0));
|
|
176
181
|
var length = Geometry.pointsDistance(x1, y1, x2, y2);
|
|
177
182
|
var length_5 = length / 5;
|
|
178
|
-
var thickness = LINE_THICKNESS;
|
|
183
|
+
var thickness = _constants.LINE_THICKNESS;
|
|
179
184
|
// let thickness = element.getIn(['properties', 'thickness', 'length']);
|
|
180
185
|
var half_thickness = thickness / 2;
|
|
181
186
|
var half_thickness_eps = half_thickness + epsilon;
|
|
@@ -198,35 +203,35 @@ export default function WallFactory(name, info, textures) {
|
|
|
198
203
|
});
|
|
199
204
|
|
|
200
205
|
//Fill a polygon with the pattern specified by the polygon's id.(For example:fill='url(#pat) =><pattern id="pat">)
|
|
201
|
-
var outwall = /*#__PURE__*/
|
|
206
|
+
var outwall = /*#__PURE__*/_react["default"].createElement("defs", null, /*#__PURE__*/_react["default"].createElement("pattern", {
|
|
202
207
|
id: "pat",
|
|
203
208
|
x: "0",
|
|
204
209
|
y: "0",
|
|
205
210
|
width: "5",
|
|
206
211
|
height: "5",
|
|
207
212
|
patternUnits: "userSpaceOnUse"
|
|
208
|
-
}, /*#__PURE__*/
|
|
213
|
+
}, /*#__PURE__*/_react["default"].createElement("line", {
|
|
209
214
|
x1: "0",
|
|
210
215
|
y1: "0",
|
|
211
216
|
x2: "3",
|
|
212
217
|
y2: "3",
|
|
213
218
|
style: STYLE_LINE
|
|
214
219
|
})));
|
|
215
|
-
return !element.selected ? /*#__PURE__*/
|
|
220
|
+
return !element.selected ? /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("polygon", {
|
|
216
221
|
points: "".concat(x1, ",").concat(y1, " ").concat(related0x, ",").concat(related0y, " ").concat(related1x, ",").concat(related1y, " ").concat(x2, ",").concat(y2),
|
|
217
222
|
fill: "url(#pat)",
|
|
218
223
|
fillRule: "evenodd"
|
|
219
|
-
}), outwall, /*#__PURE__*/
|
|
224
|
+
}), outwall, /*#__PURE__*/_react["default"].createElement("line", {
|
|
220
225
|
x1: x1,
|
|
221
226
|
y1: y1,
|
|
222
227
|
x2: x2,
|
|
223
228
|
y2: y2,
|
|
224
229
|
style: STYLE_INTERIOR_LINE
|
|
225
|
-
})) : /*#__PURE__*/
|
|
230
|
+
})) : /*#__PURE__*/_react["default"].createElement("g", null, /*#__PURE__*/_react["default"].createElement("polygon", {
|
|
226
231
|
points: "".concat(x1, ",").concat(y1, " ").concat(related0x, ",").concat(related0y, " ").concat(related1x, ",").concat(related1y, " ").concat(x2, ",").concat(y2),
|
|
227
232
|
fill: "url(#pat)",
|
|
228
233
|
fillRule: "evenodd"
|
|
229
|
-
}), outwall, /*#__PURE__*/
|
|
234
|
+
}), outwall, /*#__PURE__*/_react["default"].createElement("line", {
|
|
230
235
|
x1: x1,
|
|
231
236
|
y1: y1,
|
|
232
237
|
x2: x2,
|
|
@@ -235,10 +240,10 @@ export default function WallFactory(name, info, textures) {
|
|
|
235
240
|
}));
|
|
236
241
|
},
|
|
237
242
|
render3D: function render3D(element, layer, scene, mode) {
|
|
238
|
-
return buildWall(element, layer, scene, textures, mode);
|
|
243
|
+
return (0, _wallFactory3d.buildWall)(element, layer, scene, textures, mode);
|
|
239
244
|
},
|
|
240
245
|
updateRender3D: function updateRender3D(element, layer, scene, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
241
|
-
return updatedWall(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild);
|
|
246
|
+
return (0, _wallFactory3d.updatedWall)(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild);
|
|
242
247
|
}
|
|
243
248
|
};
|
|
244
249
|
if (textures && textures !== {}) {
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
|
|
2
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports["default"] = void 0;
|
|
5
|
+
var _react = _interopRequireDefault(require("react"));
|
|
6
|
+
var Three = _interopRequireWildcard(require("three"));
|
|
7
|
+
var _loadObj = require("../../utils/load-obj");
|
|
8
|
+
var _constants = require("../../../constants");
|
|
5
9
|
var cached3DDoor = null;
|
|
6
10
|
var STYLE_HOLE_BASE = {
|
|
7
11
|
stroke: 'rgb(73, 73, 73)',
|
|
@@ -60,7 +64,7 @@ var STYLE_FNT0 = {
|
|
|
60
64
|
fontFamily: 'Proxima Nova Rg'
|
|
61
65
|
};
|
|
62
66
|
var EPSILON = 3;
|
|
63
|
-
|
|
67
|
+
var _default = exports["default"] = {
|
|
64
68
|
name: 'Closet',
|
|
65
69
|
prototype: 'holes',
|
|
66
70
|
info: {
|
|
@@ -121,20 +125,20 @@ export default {
|
|
|
121
125
|
var rectStyle = element.selected ? STYLE_STR0_S : STYLE_STR0;
|
|
122
126
|
var length = element.properties.get('width').get('length');
|
|
123
127
|
if (flip == false) {
|
|
124
|
-
return /*#__PURE__*/
|
|
128
|
+
return /*#__PURE__*/_react["default"].createElement("g", {
|
|
125
129
|
transform: "translate(".concat(-length / 2, ", 0)")
|
|
126
|
-
}, /*#__PURE__*/
|
|
130
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
127
131
|
d: arcPath,
|
|
128
132
|
style: arcStyle,
|
|
129
133
|
transform: "translate(".concat(0, ",", holeWidth, ") scale(", 1, ",").concat(-1, ") rotate(", 0, ")")
|
|
130
|
-
}), /*#__PURE__*/
|
|
134
|
+
}), /*#__PURE__*/_react["default"].createElement("line", {
|
|
131
135
|
x1: 0,
|
|
132
136
|
y1: holeWidth - EPSILON,
|
|
133
137
|
x2: 0,
|
|
134
138
|
y2: 0 - EPSILON,
|
|
135
139
|
style: holeStyle,
|
|
136
140
|
transform: "scale(".concat(-1, ",", 1, ")")
|
|
137
|
-
}), /*#__PURE__*/
|
|
141
|
+
}), /*#__PURE__*/_react["default"].createElement("rect", {
|
|
138
142
|
style: rectStyle,
|
|
139
143
|
x: "0",
|
|
140
144
|
y: -lineWidth / 2,
|
|
@@ -142,20 +146,20 @@ export default {
|
|
|
142
146
|
height: lineWidth
|
|
143
147
|
}));
|
|
144
148
|
} else {
|
|
145
|
-
return /*#__PURE__*/
|
|
149
|
+
return /*#__PURE__*/_react["default"].createElement("g", {
|
|
146
150
|
transform: "translate(".concat(-length / 2, ", 0)")
|
|
147
|
-
}, /*#__PURE__*/
|
|
151
|
+
}, /*#__PURE__*/_react["default"].createElement("path", {
|
|
148
152
|
d: arcPath,
|
|
149
153
|
style: arcStyle,
|
|
150
154
|
transform: "translate(".concat(0, ",", -holeWidth, ") scale(", 1, ",", 1, ") rotate(", 0, ")")
|
|
151
|
-
}), /*#__PURE__*/
|
|
155
|
+
}), /*#__PURE__*/_react["default"].createElement("line", {
|
|
152
156
|
x1: 0,
|
|
153
157
|
y1: -holeWidth - EPSILON,
|
|
154
158
|
x2: 0,
|
|
155
159
|
y2: 0 - EPSILON,
|
|
156
160
|
style: holeStyle,
|
|
157
161
|
transform: "scale(".concat(1, ",", 1, ")")
|
|
158
|
-
}), /*#__PURE__*/
|
|
162
|
+
}), /*#__PURE__*/_react["default"].createElement("rect", {
|
|
159
163
|
style: rectStyle,
|
|
160
164
|
x: "0",
|
|
161
165
|
y: -lineWidth / 2,
|
|
@@ -198,7 +202,7 @@ export default {
|
|
|
198
202
|
// mat2.map = t;
|
|
199
203
|
// mat2.envMap = textureCube;
|
|
200
204
|
for (var j = 0; j < object.children.length; j++) {
|
|
201
|
-
if (object.children[j].type === OBJTYPE_MESH) {
|
|
205
|
+
if (object.children[j].type === _constants.OBJTYPE_MESH) {
|
|
202
206
|
object.children[j].material = mat2;
|
|
203
207
|
object.children[j].receiveShadow = true;
|
|
204
208
|
}
|
|
@@ -214,7 +218,7 @@ export default {
|
|
|
214
218
|
if (cached3DDoor) {
|
|
215
219
|
return Promise.resolve(onLoadItem(cached3DDoor.clone()));
|
|
216
220
|
}
|
|
217
|
-
return loadGLTF(element.url).then(function (object) {
|
|
221
|
+
return (0, _loadObj.loadGLTF)(element.url).then(function (object) {
|
|
218
222
|
cached3DDoor = object;
|
|
219
223
|
return onLoadItem(cached3DDoor.clone());
|
|
220
224
|
});
|