kitchen-simulator 1.1.1-test.62 → 1.1.1-test.64
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 +2 -10
- package/es/AppContext.js +3 -10
- package/es/KitchenConfigurator.js +70 -79
- package/es/KitchenConfiguratorApp.js +98 -107
- package/es/actions/area-actions.js +5 -12
- package/es/actions/export.js +12 -29
- package/es/actions/groups-actions.js +27 -45
- package/es/actions/holes-actions.js +34 -55
- package/es/actions/items-actions.js +94 -145
- package/es/actions/lines-actions.js +21 -36
- package/es/actions/project-actions.js +94 -145
- package/es/actions/scene-actions.js +11 -21
- package/es/actions/vertices-actions.js +7 -15
- package/es/actions/viewer2d-actions.js +21 -36
- package/es/actions/viewer3d-actions.js +9 -18
- package/es/catalog/areas/area/planner-element.js +2 -9
- package/es/catalog/catalog.js +15 -21
- package/es/catalog/factories/area-factory-3d.js +22 -31
- package/es/catalog/factories/area-factory.js +11 -20
- package/es/catalog/factories/export.js +6 -24
- package/es/catalog/factories/wall-factory-3d.js +31 -41
- package/es/catalog/factories/wall-factory.js +21 -31
- package/es/catalog/holes/door-closet/planner-element.js +15 -24
- package/es/catalog/holes/door-double/planner-element.js +15 -24
- package/es/catalog/holes/door-exterior/planner-element.js +16 -25
- package/es/catalog/holes/door-interior/planner-element.js +16 -25
- package/es/catalog/holes/door-panic/planner-element.js +7 -16
- package/es/catalog/holes/door-panic-double/planner-element.js +15 -24
- package/es/catalog/holes/door-sliding/planner-element.js +16 -25
- package/es/catalog/holes/doorway-framed/planner-element.js +11 -20
- package/es/catalog/holes/doorway-frameless/planner-element.js +7 -16
- package/es/catalog/holes/export.js +13 -97
- package/es/catalog/holes/window-clear/planner-element.js +10 -19
- package/es/catalog/holes/window-cross/planner-element.js +10 -19
- package/es/catalog/holes/window-double-hung/planner-element.js +10 -19
- package/es/catalog/holes/window-vertical/planner-element.js +10 -19
- package/es/catalog/lines/wall/planner-element.js +2 -9
- package/es/catalog/molding/molding-dcm/planner-element.js +5 -14
- package/es/catalog/molding/molding-fbm/planner-element.js +5 -14
- package/es/catalog/molding/molding-lrm/planner-element.js +5 -14
- package/es/catalog/properties/export.js +20 -80
- package/es/catalog/properties/property-checkbox.js +24 -31
- package/es/catalog/properties/property-color.js +16 -23
- package/es/catalog/properties/property-enum.js +24 -31
- package/es/catalog/properties/property-hidden.js +9 -16
- package/es/catalog/properties/property-lenght-measure.js +38 -45
- package/es/catalog/properties/property-length-measure.js +36 -43
- package/es/catalog/properties/property-length-measure_hole.js +38 -45
- package/es/catalog/properties/property-number.js +17 -24
- package/es/catalog/properties/property-read-only.js +16 -23
- package/es/catalog/properties/property-string.js +16 -23
- package/es/catalog/properties/property-toggle.js +16 -23
- package/es/catalog/properties/shared-property-style.js +1 -7
- package/es/catalog/utils/FuseUtils.js +8 -15
- package/es/catalog/utils/exporter.js +8 -15
- package/es/catalog/utils/geom-utils.js +13 -29
- package/es/catalog/utils/item-loader.js +84 -97
- package/es/catalog/utils/load-obj.js +20 -28
- package/es/catalog/utils/mtl-loader.js +3 -8
- package/es/catalog/utils/obj-loader.js +3 -8
- package/es/class/FuseUtils.js +8 -15
- package/es/class/area.js +22 -28
- package/es/class/export.js +23 -95
- package/es/class/group.js +53 -59
- package/es/class/guide.js +15 -21
- package/es/class/hole.js +83 -89
- package/es/class/item.js +141 -147
- package/es/class/layer.js +59 -65
- package/es/class/line.js +135 -143
- package/es/class/project.js +90 -98
- package/es/class/vertex.js +29 -35
- package/es/components/content.js +19 -28
- package/es/components/disclaimer/disclaimer.js +10 -18
- package/es/components/export.js +8 -32
- package/es/components/style/button.js +23 -31
- package/es/components/style/cancel-button.js +7 -14
- package/es/components/style/content-container.js +9 -16
- package/es/components/style/content-title.js +11 -20
- package/es/components/style/delete-button.js +8 -17
- package/es/components/style/export.js +30 -120
- package/es/components/style/form-block.js +8 -15
- package/es/components/style/form-color-input.js +7 -14
- package/es/components/style/form-label.js +8 -15
- package/es/components/style/form-number-input.js +41 -49
- package/es/components/style/form-number-input_2.js +36 -44
- package/es/components/style/form-select.js +17 -24
- package/es/components/style/form-slider.js +10 -17
- package/es/components/style/form-submit-button.js +8 -17
- package/es/components/style/form-text-input.js +26 -34
- package/es/components/viewer2d/area.js +17 -24
- package/es/components/viewer2d/export.js +30 -120
- package/es/components/viewer2d/grids/grid-horizontal-streak.js +10 -17
- package/es/components/viewer2d/grids/grid-streak.js +10 -17
- package/es/components/viewer2d/grids/grid-vertical-streak.js +10 -17
- package/es/components/viewer2d/grids/grids.js +10 -19
- package/es/components/viewer2d/group.js +15 -24
- package/es/components/viewer2d/item.js +61 -70
- package/es/components/viewer2d/layer.js +23 -30
- package/es/components/viewer2d/line.js +101 -111
- package/es/components/viewer2d/ruler.js +22 -29
- package/es/components/viewer2d/rulerDist.js +21 -28
- package/es/components/viewer2d/rulerX.js +39 -47
- package/es/components/viewer2d/rulerY.js +37 -45
- package/es/components/viewer2d/scene.js +30 -38
- package/es/components/viewer2d/snap.js +13 -22
- package/es/components/viewer2d/state.js +18 -27
- package/es/components/viewer2d/utils.js +24 -37
- package/es/components/viewer2d/vertex.js +8 -17
- package/es/components/viewer2d/viewer2d.js +153 -163
- package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +17 -23
- package/es/components/viewer3d/dcm.js +1 -7
- package/es/components/viewer3d/fbm.js +1 -7
- package/es/components/viewer3d/front3D.js +12 -21
- package/es/components/viewer3d/grid-creator.js +8 -17
- package/es/components/viewer3d/grids/grid-horizontal-streak.js +6 -14
- package/es/components/viewer3d/grids/grid-streak.js +5 -13
- package/es/components/viewer3d/grids/grid-vertical-streak.js +6 -14
- package/es/components/viewer3d/libs/first-person-controls.js +2 -9
- package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +1 -7
- package/es/components/viewer3d/libs/mtl-loader.js +1 -7
- package/es/components/viewer3d/libs/obj-loader.js +1 -7
- package/es/components/viewer3d/libs/orbit-controls.js +2 -8
- package/es/components/viewer3d/libs/pointer-lock-controls.js +2 -8
- package/es/components/viewer3d/lrm.js +1 -7
- package/es/components/viewer3d/model.js +1 -7
- package/es/components/viewer3d/pointer-lock-navigation.js +3 -10
- package/es/components/viewer3d/ruler-utils/itemRect.js +18 -25
- package/es/components/viewer3d/ruler-utils/layer3D.js +59 -66
- package/es/components/viewer3d/ruler-utils/ruler3D.js +39 -46
- package/es/components/viewer3d/ruler-utils/scene3D.js +9 -17
- package/es/components/viewer3d/ruler-utils/state3D.js +4 -11
- package/es/components/viewer3d/scene-creator.js +191 -226
- package/es/components/viewer3d/three-memory-cleaner.js +3 -12
- package/es/components/viewer3d/viewer3d-first-person.js +40 -46
- package/es/components/viewer3d/viewer3d.js +196 -202
- package/es/constants.js +349 -358
- package/es/index.js +7 -15
- package/es/models.js +177 -184
- package/es/plugins/SVGLoader.js +48 -53
- package/es/plugins/autosave.js +3 -9
- package/es/plugins/console-debugger.js +5 -12
- package/es/plugins/export.js +8 -32
- package/es/plugins/keyboard.js +29 -35
- package/es/reducers/areas-reducer.js +7 -13
- package/es/reducers/export.js +24 -96
- package/es/reducers/groups-reducer.js +31 -37
- package/es/reducers/holes-reducer.js +43 -49
- package/es/reducers/items-reducer.js +106 -112
- package/es/reducers/lines-reducer.js +28 -34
- package/es/reducers/project-reducer.js +105 -111
- package/es/reducers/reducer.js +16 -23
- package/es/reducers/scene-reducer.js +15 -21
- package/es/reducers/user-reducer.js +5 -11
- package/es/reducers/vertices-reducer.js +11 -17
- package/es/reducers/viewer2d-reducer.js +18 -24
- package/es/reducers/viewer3d-reducer.js +16 -22
- package/es/shared-style.js +10 -16
- package/es/styles/export.js +3 -11
- package/es/translator/en.js +1 -7
- package/es/translator/it.js +1 -7
- package/es/translator/ru.js +1 -7
- package/es/translator/translator.js +13 -19
- package/es/utils/browser.js +2 -9
- package/es/utils/convert-units-lite.js +1 -7
- package/es/utils/email-validator.js +1 -7
- package/es/utils/export.js +15 -46
- package/es/utils/geometry.js +181 -278
- package/es/utils/get-edges-of-subgraphs.js +2 -9
- package/es/utils/graph-cycles.js +8 -11
- package/es/utils/graph-inner-cycles.js +10 -18
- package/es/utils/graph.js +9 -17
- package/es/utils/helper.js +39 -63
- package/es/utils/history.js +8 -15
- package/es/utils/id-broker.js +8 -15
- package/es/utils/logger.js +1 -7
- package/es/utils/math.js +5 -12
- package/es/utils/molding.js +119 -144
- package/es/utils/name-generator.js +7 -13
- package/es/utils/objects-utils.js +7 -19
- package/es/utils/phone-validator.js +1 -7
- package/es/utils/process-black-list.js +3 -10
- package/es/utils/react-if.js +6 -12
- package/es/utils/snap-scene.js +27 -34
- package/es/utils/snap.js +45 -59
- package/es/utils/summarizeCart.js +1 -7
- package/es/utils/threeCSG.es6.js +13 -22
- package/es/version.js +1 -7
- package/lib/@history.js +2 -1
- package/lib/AppContext.js +2 -1
- package/lib/KitchenConfigurator.js +2 -1
- package/lib/KitchenConfiguratorApp.js +2 -1
- package/lib/catalog/areas/area/planner-element.js +2 -1
- package/lib/catalog/catalog.js +2 -1
- package/lib/catalog/factories/area-factory.js +2 -1
- package/lib/catalog/factories/wall-factory.js +2 -1
- package/lib/catalog/holes/door-closet/planner-element.js +2 -1
- package/lib/catalog/holes/door-double/planner-element.js +2 -1
- package/lib/catalog/holes/door-exterior/planner-element.js +2 -1
- package/lib/catalog/holes/door-interior/planner-element.js +2 -1
- package/lib/catalog/holes/door-panic/planner-element.js +2 -1
- package/lib/catalog/holes/door-panic-double/planner-element.js +2 -1
- package/lib/catalog/holes/door-sliding/planner-element.js +2 -1
- package/lib/catalog/holes/doorway-framed/planner-element.js +2 -1
- package/lib/catalog/holes/doorway-frameless/planner-element.js +2 -1
- package/lib/catalog/holes/window-clear/planner-element.js +2 -1
- package/lib/catalog/holes/window-cross/planner-element.js +2 -1
- package/lib/catalog/holes/window-double-hung/planner-element.js +2 -1
- package/lib/catalog/holes/window-vertical/planner-element.js +2 -1
- package/lib/catalog/lines/wall/planner-element.js +2 -1
- package/lib/catalog/molding/molding-dcm/planner-element.js +2 -1
- package/lib/catalog/molding/molding-fbm/planner-element.js +2 -1
- package/lib/catalog/molding/molding-lrm/planner-element.js +2 -1
- package/lib/catalog/properties/property-checkbox.js +2 -1
- package/lib/catalog/properties/property-color.js +2 -1
- package/lib/catalog/properties/property-enum.js +2 -1
- package/lib/catalog/properties/property-hidden.js +2 -1
- package/lib/catalog/properties/property-lenght-measure.js +2 -1
- package/lib/catalog/properties/property-length-measure.js +2 -1
- package/lib/catalog/properties/property-length-measure_hole.js +2 -1
- package/lib/catalog/properties/property-number.js +2 -1
- package/lib/catalog/properties/property-read-only.js +2 -1
- package/lib/catalog/properties/property-string.js +2 -1
- package/lib/catalog/properties/property-toggle.js +2 -1
- package/lib/catalog/properties/shared-property-style.js +2 -1
- package/lib/catalog/utils/FuseUtils.js +2 -1
- package/lib/catalog/utils/exporter.js +2 -1
- package/lib/class/FuseUtils.js +2 -1
- package/lib/class/area.js +2 -1
- package/lib/class/group.js +2 -1
- package/lib/class/hole.js +2 -1
- package/lib/class/item.js +2 -1
- package/lib/class/layer.js +2 -1
- package/lib/class/line.js +2 -1
- package/lib/class/project.js +2 -1
- package/lib/class/vertex.js +2 -1
- package/lib/components/content.js +2 -1
- package/lib/components/disclaimer/disclaimer.js +2 -1
- package/lib/components/style/button.js +2 -1
- package/lib/components/style/cancel-button.js +2 -1
- package/lib/components/style/content-container.js +2 -1
- package/lib/components/style/content-title.js +2 -1
- package/lib/components/style/delete-button.js +2 -1
- package/lib/components/style/form-block.js +2 -1
- package/lib/components/style/form-color-input.js +2 -1
- package/lib/components/style/form-label.js +2 -1
- package/lib/components/style/form-number-input.js +2 -1
- package/lib/components/style/form-number-input_2.js +2 -1
- package/lib/components/style/form-select.js +2 -1
- package/lib/components/style/form-slider.js +2 -1
- package/lib/components/style/form-submit-button.js +2 -1
- package/lib/components/style/form-text-input.js +2 -1
- package/lib/components/viewer2d/area.js +2 -1
- package/lib/components/viewer2d/grids/grid-horizontal-streak.js +2 -1
- package/lib/components/viewer2d/grids/grid-streak.js +2 -1
- package/lib/components/viewer2d/grids/grid-vertical-streak.js +2 -1
- package/lib/components/viewer2d/grids/grids.js +2 -1
- package/lib/components/viewer2d/group.js +2 -1
- package/lib/components/viewer2d/item.js +2 -1
- package/lib/components/viewer2d/layer.js +2 -1
- package/lib/components/viewer2d/ruler.js +2 -1
- package/lib/components/viewer2d/rulerDist.js +2 -1
- package/lib/components/viewer2d/rulerX.js +2 -1
- package/lib/components/viewer2d/rulerY.js +2 -1
- package/lib/components/viewer2d/scene.js +2 -1
- package/lib/components/viewer2d/snap.js +2 -1
- package/lib/components/viewer2d/state.js +2 -1
- package/lib/components/viewer2d/vertex.js +2 -1
- package/lib/components/viewer2d/viewer2d.js +2 -1
- package/lib/components/viewer3d/dcm.js +2 -1
- package/lib/components/viewer3d/fbm.js +2 -1
- package/lib/components/viewer3d/front3D.js +2 -1
- package/lib/components/viewer3d/grid-creator.js +2 -1
- package/lib/components/viewer3d/grids/grid-horizontal-streak.js +2 -1
- package/lib/components/viewer3d/grids/grid-streak.js +2 -1
- package/lib/components/viewer3d/grids/grid-vertical-streak.js +2 -1
- package/lib/components/viewer3d/libs/mtl-loader.js +2 -1
- package/lib/components/viewer3d/libs/obj-loader.js +2 -1
- package/lib/components/viewer3d/lrm.js +2 -1
- package/lib/components/viewer3d/ruler-utils/itemRect.js +2 -1
- package/lib/components/viewer3d/ruler-utils/layer3D.js +2 -1
- package/lib/components/viewer3d/ruler-utils/ruler3D.js +2 -1
- package/lib/components/viewer3d/ruler-utils/state3D.js +2 -1
- package/lib/components/viewer3d/viewer3d-first-person.js +2 -1
- package/lib/components/viewer3d/viewer3d.js +2 -1
- package/lib/plugins/autosave.js +2 -1
- package/lib/plugins/console-debugger.js +2 -1
- package/lib/plugins/keyboard.js +2 -1
- package/lib/reducers/areas-reducer.js +2 -1
- package/lib/reducers/groups-reducer.js +2 -1
- package/lib/reducers/holes-reducer.js +2 -1
- package/lib/reducers/items-reducer.js +2 -1
- package/lib/reducers/lines-reducer.js +2 -1
- package/lib/reducers/project-reducer.js +2 -1
- package/lib/reducers/scene-reducer.js +2 -1
- package/lib/reducers/user-reducer.js +2 -1
- package/lib/reducers/vertices-reducer.js +2 -1
- package/lib/reducers/viewer2d-reducer.js +2 -1
- package/lib/reducers/viewer3d-reducer.js +2 -1
- package/lib/translator/en.js +2 -1
- package/lib/translator/it.js +2 -1
- package/lib/translator/ru.js +2 -1
- package/lib/translator/translator.js +2 -1
- package/lib/utils/name-generator.js +2 -1
- package/lib/utils/react-if.js +2 -1
- package/lib/utils/threeCSG.es6.js +2 -1
- package/package.json +2 -1
|
@@ -1,73 +1,58 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.changeBaseCabinetMeasure = changeBaseCabinetMeasure;
|
|
7
|
-
exports.changeWallCabinetMeasure = changeWallCabinetMeasure;
|
|
8
|
-
exports.changeWallLengthMeasure = changeWallLengthMeasure;
|
|
9
|
-
exports.changeWindowDoorMeasure = changeWindowDoorMeasure;
|
|
10
|
-
exports.selectToolPan = selectToolPan;
|
|
11
|
-
exports.selectToolZoomIn = selectToolZoomIn;
|
|
12
|
-
exports.selectToolZoomOut = selectToolZoomOut;
|
|
13
|
-
exports.updateCameraView = updateCameraView;
|
|
14
|
-
exports.updateCeilHeight = updateCeilHeight;
|
|
15
|
-
exports.updateCeilHeightUnit = updateCeilHeightUnit;
|
|
16
|
-
var _constants = require("../constants");
|
|
17
|
-
function updateCeilHeight(value) {
|
|
1
|
+
import { CHANGE_BASE_CABINET_MEASURE, CHANGE_WALL_CABINET_MEASURE, CHANGE_WALL_LENGTH_MEASURE, CHANGE_WINDOW_DOOR_MEASURE, SELECT_TOOL_PAN, SELECT_TOOL_ZOOM_IN, SELECT_TOOL_ZOOM_OUT, UPDATE_2D_CAMERA, UPDATE_CEIL_HEIGHT, UPDATE_CEIL_HEIGHT_UNIT } from "../constants";
|
|
2
|
+
export function updateCeilHeight(value) {
|
|
18
3
|
return {
|
|
19
|
-
type:
|
|
4
|
+
type: UPDATE_CEIL_HEIGHT,
|
|
20
5
|
value: value
|
|
21
6
|
};
|
|
22
7
|
}
|
|
23
|
-
function updateCeilHeightUnit(value) {
|
|
8
|
+
export function updateCeilHeightUnit(value) {
|
|
24
9
|
return {
|
|
25
|
-
type:
|
|
10
|
+
type: UPDATE_CEIL_HEIGHT_UNIT,
|
|
26
11
|
value: value
|
|
27
12
|
};
|
|
28
13
|
}
|
|
29
|
-
function updateCameraView(value) {
|
|
14
|
+
export function updateCameraView(value) {
|
|
30
15
|
return {
|
|
31
|
-
type:
|
|
16
|
+
type: UPDATE_2D_CAMERA,
|
|
32
17
|
value: value
|
|
33
18
|
};
|
|
34
19
|
}
|
|
35
|
-
function changeWallLengthMeasure(value) {
|
|
20
|
+
export function changeWallLengthMeasure(value) {
|
|
36
21
|
return {
|
|
37
|
-
type:
|
|
22
|
+
type: CHANGE_WALL_LENGTH_MEASURE,
|
|
38
23
|
value: value
|
|
39
24
|
};
|
|
40
25
|
}
|
|
41
|
-
function changeBaseCabinetMeasure(value) {
|
|
26
|
+
export function changeBaseCabinetMeasure(value) {
|
|
42
27
|
return {
|
|
43
|
-
type:
|
|
28
|
+
type: CHANGE_BASE_CABINET_MEASURE,
|
|
44
29
|
value: value
|
|
45
30
|
};
|
|
46
31
|
}
|
|
47
|
-
function changeWallCabinetMeasure(value) {
|
|
32
|
+
export function changeWallCabinetMeasure(value) {
|
|
48
33
|
return {
|
|
49
|
-
type:
|
|
34
|
+
type: CHANGE_WALL_CABINET_MEASURE,
|
|
50
35
|
value: value
|
|
51
36
|
};
|
|
52
37
|
}
|
|
53
|
-
function changeWindowDoorMeasure(value) {
|
|
38
|
+
export function changeWindowDoorMeasure(value) {
|
|
54
39
|
return {
|
|
55
|
-
type:
|
|
40
|
+
type: CHANGE_WINDOW_DOOR_MEASURE,
|
|
56
41
|
value: value
|
|
57
42
|
};
|
|
58
43
|
}
|
|
59
|
-
function selectToolPan() {
|
|
44
|
+
export function selectToolPan() {
|
|
60
45
|
return {
|
|
61
|
-
type:
|
|
46
|
+
type: SELECT_TOOL_PAN
|
|
62
47
|
};
|
|
63
48
|
}
|
|
64
|
-
function selectToolZoomOut() {
|
|
49
|
+
export function selectToolZoomOut() {
|
|
65
50
|
return {
|
|
66
|
-
type:
|
|
51
|
+
type: SELECT_TOOL_ZOOM_OUT
|
|
67
52
|
};
|
|
68
53
|
}
|
|
69
|
-
function selectToolZoomIn() {
|
|
54
|
+
export function selectToolZoomIn() {
|
|
70
55
|
return {
|
|
71
|
-
type:
|
|
56
|
+
type: SELECT_TOOL_ZOOM_IN
|
|
72
57
|
};
|
|
73
58
|
}
|
|
@@ -1,32 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.selectTool3DFirstPerson = selectTool3DFirstPerson;
|
|
7
|
-
exports.selectTool3DView = selectTool3DView;
|
|
8
|
-
exports.update3DCeilHeight = update3DCeilHeight;
|
|
9
|
-
exports.update3DCeilHeightUnit = update3DCeilHeightUnit;
|
|
10
|
-
var _constants = require("../constants");
|
|
11
|
-
function selectTool3DView() {
|
|
1
|
+
import { SELECT_TOOL_3D_FIRST_PERSON, SELECT_TOOL_3D_VIEW, UPDATE_3D_CEIL_HEIGHT, UPDATE_3D_CEIL_HEIGHT_UNIT } from "../constants";
|
|
2
|
+
export function selectTool3DView() {
|
|
12
3
|
return {
|
|
13
|
-
type:
|
|
4
|
+
type: SELECT_TOOL_3D_VIEW
|
|
14
5
|
};
|
|
15
6
|
}
|
|
16
|
-
function selectTool3DFirstPerson() {
|
|
7
|
+
export function selectTool3DFirstPerson() {
|
|
17
8
|
return {
|
|
18
|
-
type:
|
|
9
|
+
type: SELECT_TOOL_3D_FIRST_PERSON
|
|
19
10
|
};
|
|
20
11
|
}
|
|
21
|
-
function update3DCeilHeight(value) {
|
|
12
|
+
export function update3DCeilHeight(value) {
|
|
22
13
|
return {
|
|
23
|
-
type:
|
|
14
|
+
type: UPDATE_3D_CEIL_HEIGHT,
|
|
24
15
|
value: value
|
|
25
16
|
};
|
|
26
17
|
}
|
|
27
|
-
function update3DCeilHeightUnit(value) {
|
|
18
|
+
export function update3DCeilHeightUnit(value) {
|
|
28
19
|
return {
|
|
29
|
-
type:
|
|
20
|
+
type: UPDATE_3D_CEIL_HEIGHT_UNIT,
|
|
30
21
|
value: value
|
|
31
22
|
};
|
|
32
23
|
}
|
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports["default"] = void 0;
|
|
8
|
-
var _export = _interopRequireDefault(require("../../factories/export"));
|
|
1
|
+
import ElementsFactories from "../../factories/export";
|
|
9
2
|
var textureUrl = function textureUrl(file) {
|
|
10
3
|
return new URL("./textures/".concat(file), import.meta.url).href;
|
|
11
4
|
};
|
|
@@ -47,4 +40,4 @@ var textures = {
|
|
|
47
40
|
heightRepeatScale: 0.01
|
|
48
41
|
}
|
|
49
42
|
};
|
|
50
|
-
|
|
43
|
+
export default ElementsFactories.AreaFactory('area', info, textures);
|
package/es/catalog/catalog.js
CHANGED
|
@@ -1,20 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
9
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
10
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
11
|
-
var _export = require("./properties/export");
|
|
12
|
-
var _constants = require("../constants");
|
|
13
|
-
var _utils = require("../components/viewer2d/utils");
|
|
14
|
-
var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
+
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
3
|
+
import _createClass from "@babel/runtime/helpers/createClass";
|
|
4
|
+
import { PropertyColor, PropertyEnum, PropertyString, PropertyNumber, PropertyLengthMeasure, PropertyToggle, PropertyCheckbox, PropertyHidden, PropertyReadOnly } from "./properties/export";
|
|
5
|
+
import { UNIT_CENTIMETER, UNIT_INCH } from "../constants";
|
|
6
|
+
import { returnReplaceableDeepSearchType } from "../components/viewer2d/utils";
|
|
7
|
+
var Catalog = /*#__PURE__*/function () {
|
|
15
8
|
function Catalog() {
|
|
16
|
-
var unit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] :
|
|
17
|
-
(
|
|
9
|
+
var unit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : UNIT_CENTIMETER;
|
|
10
|
+
_classCallCheck(this, Catalog);
|
|
18
11
|
this.elements = {};
|
|
19
12
|
this.categories = {
|
|
20
13
|
root: {
|
|
@@ -26,7 +19,7 @@ var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
|
26
19
|
};
|
|
27
20
|
this.propertyTypes = {};
|
|
28
21
|
this.unit = unit;
|
|
29
|
-
this.registerMultiplePropertyType([['color',
|
|
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]]);
|
|
30
23
|
}
|
|
31
24
|
|
|
32
25
|
/**
|
|
@@ -34,13 +27,13 @@ var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
|
34
27
|
* @param {string} type Element's type
|
|
35
28
|
* @return {?object} Element
|
|
36
29
|
*/
|
|
37
|
-
return (
|
|
30
|
+
return _createClass(Catalog, [{
|
|
38
31
|
key: "getElement",
|
|
39
32
|
value: function getElement(type) {
|
|
40
33
|
if (this.hasElement(type)) {
|
|
41
34
|
return this.elements[type];
|
|
42
35
|
} else {
|
|
43
|
-
var deepSearchType =
|
|
36
|
+
var deepSearchType = returnReplaceableDeepSearchType(type);
|
|
44
37
|
var element = this.elements[deepSearchType];
|
|
45
38
|
if (element) return element;
|
|
46
39
|
if (!element) return false;
|
|
@@ -133,7 +126,7 @@ var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
|
133
126
|
value: function registerMultiplePropertyType(propertyTypeArray) {
|
|
134
127
|
var _this2 = this;
|
|
135
128
|
propertyTypeArray.forEach(function (el) {
|
|
136
|
-
return _this2.registerPropertyType.apply(_this2, (
|
|
129
|
+
return _this2.registerPropertyType.apply(_this2, _toConsumableArray(el));
|
|
137
130
|
});
|
|
138
131
|
}
|
|
139
132
|
|
|
@@ -271,4 +264,5 @@ var Catalog = exports["default"] = /*#__PURE__*/function () {
|
|
|
271
264
|
return this.categories.hasOwnProperty(categoryName);
|
|
272
265
|
}
|
|
273
266
|
}]);
|
|
274
|
-
}();
|
|
267
|
+
}();
|
|
268
|
+
export { Catalog as default };
|
|
@@ -1,16 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.createArea = createArea;
|
|
8
|
-
exports.updatedArea = updatedArea;
|
|
9
|
-
var _three = _interopRequireWildcard(require("three"));
|
|
10
|
-
var Three = _three;
|
|
11
|
-
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
12
|
-
var _RGBELoader = require("three/examples/jsm/loaders/RGBELoader");
|
|
13
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
1
|
+
import * as Three from 'three';
|
|
2
|
+
import { Box3, Mesh, MeshBasicMaterial, MeshPhysicalMaterial, RepeatWrapping, Shape, TextureLoader, Vector2 } from 'three';
|
|
3
|
+
import * as SharedStyle from "../../shared-style";
|
|
4
|
+
import { RGBELoader } from 'three/examples/jsm/loaders/RGBELoader';
|
|
14
5
|
var params = {
|
|
15
6
|
envMap: 'HDR',
|
|
16
7
|
roughness: 0.9,
|
|
@@ -27,19 +18,19 @@ var params = {
|
|
|
27
18
|
* @param height: The height of the face
|
|
28
19
|
*/
|
|
29
20
|
var applyTexture = function applyTexture(material, texture, length, height) {
|
|
30
|
-
var loader = new
|
|
21
|
+
var loader = new TextureLoader();
|
|
31
22
|
if (texture) {
|
|
32
23
|
material.map = loader.load(texture.uri);
|
|
33
24
|
material.map.colorSpace = Three.SRGBColorSpace;
|
|
34
25
|
material.needsUpdate = true;
|
|
35
|
-
material.map.wrapS =
|
|
36
|
-
material.map.wrapT =
|
|
26
|
+
material.map.wrapS = RepeatWrapping;
|
|
27
|
+
material.map.wrapT = RepeatWrapping;
|
|
37
28
|
material.map.repeat.set(length * texture.lengthRepeatScale, height * texture.heightRepeatScale);
|
|
38
29
|
if (texture.normal) {
|
|
39
30
|
material.normalMap = loader.load(texture.normal.uri);
|
|
40
|
-
material.normalScale = new
|
|
41
|
-
material.normalMap.wrapS =
|
|
42
|
-
material.normalMap.wrapT =
|
|
31
|
+
material.normalScale = new Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
32
|
+
material.normalMap.wrapS = RepeatWrapping;
|
|
33
|
+
material.normalMap.wrapT = RepeatWrapping;
|
|
43
34
|
material.normalMap.repeat.set(length * texture.normal.lengthRepeatScale, height * texture.normal.heightRepeatScale);
|
|
44
35
|
}
|
|
45
36
|
}
|
|
@@ -54,8 +45,8 @@ var assignUVs = function assignUVs(geometry) {
|
|
|
54
45
|
var _geometry$boundingBox = geometry.boundingBox,
|
|
55
46
|
min = _geometry$boundingBox.min,
|
|
56
47
|
max = _geometry$boundingBox.max;
|
|
57
|
-
var offset = new
|
|
58
|
-
var range = new
|
|
48
|
+
var offset = new Vector2(0 - min.x, 0 - min.y);
|
|
49
|
+
var range = new Vector2(max.x - min.x, max.y - min.y);
|
|
59
50
|
var uvArray = [];
|
|
60
51
|
var position = geometry.attributes.position;
|
|
61
52
|
for (var i = 0; i < position.count; i += 3) {
|
|
@@ -70,7 +61,7 @@ var assignUVs = function assignUVs(geometry) {
|
|
|
70
61
|
geometry.setAttribute('uv', new Three.BufferAttribute(new Float32Array(uvArray), 2));
|
|
71
62
|
geometry.needsUpdate = true;
|
|
72
63
|
};
|
|
73
|
-
function createArea(element, layer, scene, textures) {
|
|
64
|
+
export function createArea(element, layer, scene, textures) {
|
|
74
65
|
var vertices = [];
|
|
75
66
|
element.vertices.forEach(function (vertexID) {
|
|
76
67
|
vertices.push(layer.vertices.get(vertexID));
|
|
@@ -87,20 +78,20 @@ function createArea(element, layer, scene, textures) {
|
|
|
87
78
|
if (texture.uri === undefined || texture.uri == '') {
|
|
88
79
|
texture.uri = layer.floorStyle.uri;
|
|
89
80
|
}
|
|
90
|
-
var shape = new
|
|
81
|
+
var shape = new Shape();
|
|
91
82
|
shape.moveTo(vertices[0].x, vertices[0].y);
|
|
92
83
|
for (var i = 1; i < vertices.length; i++) {
|
|
93
84
|
shape.lineTo(vertices[i].x, vertices[i].y);
|
|
94
85
|
}
|
|
95
86
|
function loadFloorENV() {
|
|
96
|
-
return new
|
|
87
|
+
return new RGBELoader().load('/assets/Window.hdr', function (texture) {
|
|
97
88
|
texture.mapping = Three.EquirectangularReflectionMapping;
|
|
98
89
|
return texture;
|
|
99
90
|
});
|
|
100
91
|
}
|
|
101
92
|
var floorENV = loadFloorENV();
|
|
102
|
-
var loader = new
|
|
103
|
-
var areaMaterial = new
|
|
93
|
+
var loader = new TextureLoader();
|
|
94
|
+
var areaMaterial = new MeshPhysicalMaterial({
|
|
104
95
|
side: Three.DoubleSide,
|
|
105
96
|
metalness: texture.metalness,
|
|
106
97
|
roughness: 0.3,
|
|
@@ -132,20 +123,20 @@ function createArea(element, layer, scene, textures) {
|
|
|
132
123
|
};
|
|
133
124
|
var shapeGeometry = new Three.ExtrudeGeometry(shape, extrudeSettings);
|
|
134
125
|
assignUVs(shapeGeometry);
|
|
135
|
-
var boundingBox = new
|
|
126
|
+
var boundingBox = new Box3().setFromObject(new Mesh(shapeGeometry, new MeshBasicMaterial()));
|
|
136
127
|
var width = boundingBox.max.x - boundingBox.min.x;
|
|
137
128
|
var height = boundingBox.max.y - boundingBox.min.y;
|
|
138
129
|
var texture_unit = 70 * 2.54; // 70 inch
|
|
139
130
|
|
|
140
131
|
applyTexture(areaMaterial, texture, width / texture_unit * 100, height / texture_unit * 100);
|
|
141
|
-
var area = new
|
|
132
|
+
var area = new Mesh(shapeGeometry, areaMaterial);
|
|
142
133
|
area.rotation.x -= Math.PI / 2;
|
|
143
134
|
area.receiveShadow = true;
|
|
144
135
|
area.name = 'floor';
|
|
145
136
|
// This mesh is use for creating ceiling mesh
|
|
146
137
|
|
|
147
138
|
var shapeGeometry2 = new Three.ShapeGeometry(shape);
|
|
148
|
-
var area2 = new
|
|
139
|
+
var area2 = new Mesh(shapeGeometry2, new MeshBasicMaterial({
|
|
149
140
|
transparent: true,
|
|
150
141
|
opacity: 0.0
|
|
151
142
|
}));
|
|
@@ -157,7 +148,7 @@ function createArea(element, layer, scene, textures) {
|
|
|
157
148
|
area.userData.floorSupport = floorSupport;
|
|
158
149
|
return Promise.resolve(area);
|
|
159
150
|
}
|
|
160
|
-
function updatedArea(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
151
|
+
export function updatedArea(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
161
152
|
var noPerf = function noPerf() {
|
|
162
153
|
selfDestroy();
|
|
163
154
|
return selfBuild();
|
|
@@ -181,7 +172,7 @@ function updatedArea(element, layer, scene, textures, mesh, oldElement, differen
|
|
|
181
172
|
* @returns {Shape}
|
|
182
173
|
*/
|
|
183
174
|
var createShape = function createShape(shapeCoords) {
|
|
184
|
-
var shape = new
|
|
175
|
+
var shape = new Shape();
|
|
185
176
|
shape.moveTo(shapeCoords[0][0], shapeCoords[0][1]);
|
|
186
177
|
for (var i = 1; i < shapeCoords.length; i++) {
|
|
187
178
|
shape.lineTo(shapeCoords[i][0], shapeCoords[i][1]);
|
|
@@ -1,21 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = AreaFactory;
|
|
9
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
-
var _react = _interopRequireDefault(require("react"));
|
|
11
|
-
var _areaFactory3d = require("./area-factory-3d");
|
|
12
|
-
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
13
|
-
var _translator = _interopRequireDefault(require("../../translator/translator"));
|
|
14
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
1
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
15
2
|
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; }
|
|
16
|
-
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) { (
|
|
17
|
-
|
|
18
|
-
|
|
3
|
+
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; }
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import { createArea, updatedArea } from "./area-factory-3d";
|
|
6
|
+
import * as SharedStyle from "../../shared-style";
|
|
7
|
+
import Translator from "../../translator/translator";
|
|
8
|
+
var translator = new Translator();
|
|
9
|
+
export default function AreaFactory(name, info, textures) {
|
|
19
10
|
var areaElement = {
|
|
20
11
|
name: name,
|
|
21
12
|
prototype: 'areas',
|
|
@@ -57,16 +48,16 @@ function AreaFactory(name, info, textures) {
|
|
|
57
48
|
});
|
|
58
49
|
});
|
|
59
50
|
var fill = element.selected ? SharedStyle.AREA_MESH_COLOR.selected : SharedStyle.AREA_MESH_COLOR.unselected;
|
|
60
|
-
return /*#__PURE__*/
|
|
51
|
+
return /*#__PURE__*/React.createElement("path", {
|
|
61
52
|
d: path,
|
|
62
53
|
fill: fill
|
|
63
54
|
});
|
|
64
55
|
},
|
|
65
56
|
render3D: function render3D(element, layer, scene) {
|
|
66
|
-
return
|
|
57
|
+
return createArea(element, layer, scene, textures);
|
|
67
58
|
},
|
|
68
59
|
updateRender3D: function updateRender3D(element, layer, scene, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
69
|
-
return
|
|
60
|
+
return updatedArea(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild);
|
|
70
61
|
}
|
|
71
62
|
};
|
|
72
63
|
if (textures && textures !== {}) {
|
|
@@ -1,25 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
Object.defineProperty(exports, "AreaFactory", {
|
|
8
|
-
enumerable: true,
|
|
9
|
-
get: function get() {
|
|
10
|
-
return _areaFactory["default"];
|
|
11
|
-
}
|
|
12
|
-
});
|
|
13
|
-
Object.defineProperty(exports, "WallFactory", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: function get() {
|
|
16
|
-
return _wallFactory["default"];
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
exports["default"] = void 0;
|
|
20
|
-
var _wallFactory = _interopRequireDefault(require("./wall-factory"));
|
|
21
|
-
var _areaFactory = _interopRequireDefault(require("./area-factory"));
|
|
22
|
-
var _default = exports["default"] = {
|
|
23
|
-
WallFactory: _wallFactory["default"],
|
|
24
|
-
AreaFactory: _areaFactory["default"]
|
|
1
|
+
import WallFactory from "./wall-factory";
|
|
2
|
+
import AreaFactory from "./area-factory";
|
|
3
|
+
export { WallFactory, AreaFactory };
|
|
4
|
+
export default {
|
|
5
|
+
WallFactory: WallFactory,
|
|
6
|
+
AreaFactory: AreaFactory
|
|
25
7
|
};
|
|
@@ -1,21 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
exports.updatedWall = updatedWall;
|
|
10
|
-
var _three = _interopRequireWildcard(require("three"));
|
|
11
|
-
var Three = _three;
|
|
12
|
-
var _geometry = require("../../utils/geometry");
|
|
13
|
-
var _helper = require("../../utils/helper");
|
|
14
|
-
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
15
|
-
var _constants = require("../../constants");
|
|
16
|
-
var _convertUnitsLite = require("../../utils/convert-units-lite");
|
|
17
|
-
var _threeCSG = _interopRequireDefault(require("../../utils/threeCSG.es6"));
|
|
18
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
1
|
+
import * as Three from 'three';
|
|
2
|
+
import { BoxGeometry, Group, Mesh, MeshBasicMaterial, MeshStandardMaterial, RepeatWrapping, TextureLoader, Vector2 } from 'three';
|
|
3
|
+
import { verticesDistance } from "../../utils/geometry";
|
|
4
|
+
import { isElevationView } from "../../utils/helper";
|
|
5
|
+
import * as SharedStyle from "../../shared-style";
|
|
6
|
+
import { LINE_THICKNESS, UNIT_CENTIMETER } from "../../constants";
|
|
7
|
+
import { convert } from "../../utils/convert-units-lite";
|
|
8
|
+
import ThreeBSP from "../../utils/threeCSG.es6";
|
|
19
9
|
var params = {
|
|
20
10
|
envMap: 'HDR',
|
|
21
11
|
roughness: 0.1,
|
|
@@ -33,23 +23,23 @@ var halfPI = Math.PI / 2;
|
|
|
33
23
|
* @param height: The height of the face
|
|
34
24
|
*/
|
|
35
25
|
var applyTexture = function applyTexture(material, texture, length, height) {
|
|
36
|
-
var loader = new
|
|
26
|
+
var loader = new TextureLoader();
|
|
37
27
|
if (texture) {
|
|
38
28
|
material.map = loader.load(texture.uri["default"]);
|
|
39
29
|
material.map.colorSpace = Three.SRGBColorSpace, material.needsUpdate = true;
|
|
40
|
-
material.map.wrapS =
|
|
41
|
-
material.map.wrapT =
|
|
30
|
+
material.map.wrapS = RepeatWrapping;
|
|
31
|
+
material.map.wrapT = RepeatWrapping;
|
|
42
32
|
material.map.repeat.set(length * texture.lengthRepeatScale, height * texture.heightRepeatScale);
|
|
43
33
|
if (texture.normal) {
|
|
44
34
|
material.normalMap = loader.load(texture.normal.uri["default"]);
|
|
45
|
-
material.normalScale = new
|
|
46
|
-
material.normalMap.wrapS =
|
|
47
|
-
material.normalMap.wrapT =
|
|
35
|
+
material.normalScale = new Vector2(texture.normal.normalScaleX, texture.normal.normalScaleY);
|
|
36
|
+
material.normalMap.wrapS = RepeatWrapping;
|
|
37
|
+
material.normalMap.wrapT = RepeatWrapping;
|
|
48
38
|
material.normalMap.repeat.set(length * texture.normal.lengthRepeatScale, height * texture.normal.heightRepeatScale);
|
|
49
39
|
}
|
|
50
40
|
}
|
|
51
41
|
};
|
|
52
|
-
function buildWall(element, layer, scene, textures, mode) {
|
|
42
|
+
export function buildWall(element, layer, scene, textures, mode) {
|
|
53
43
|
// Get the two vertices of the wall
|
|
54
44
|
var vetName0 = element.vertices.get(0);
|
|
55
45
|
var vetName1 = element.vertices.get(1);
|
|
@@ -69,9 +59,9 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
69
59
|
// Get height and thickness of the wall converting them into the current scene units
|
|
70
60
|
// let height = element.properties.getIn(['height', 'length']);
|
|
71
61
|
// let thickness = element.properties.getIn(['thickness', 'length']);
|
|
72
|
-
var height =
|
|
62
|
+
var height = convert(layer.ceilHeight).from(layer.unit).to(UNIT_CENTIMETER);
|
|
73
63
|
var thickness = 2.0;
|
|
74
|
-
var distance =
|
|
64
|
+
var distance = verticesDistance(vertex0, vertex1);
|
|
75
65
|
var soulMaterial = new Three.MeshPhongMaterial({
|
|
76
66
|
color: new Three.Color(wallColor).convertLinearToSRGB()
|
|
77
67
|
}); //element.selected ? SharedStyle.MESH_SELECTED : 0xD3D3D3
|
|
@@ -81,7 +71,7 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
81
71
|
soulVertices.push(new Three.Vector2(distance / 2, -height / 2));
|
|
82
72
|
soulVertices.push(new Three.Vector2(-distance / 2, -height / 2));
|
|
83
73
|
var soulShape = new Three.Shape(soulVertices);
|
|
84
|
-
var soulMesh = new
|
|
74
|
+
var soulMesh = new Mesh(new BoxGeometry(distance, height, thickness), soulMaterial);
|
|
85
75
|
if (element.userData.stateMode !== 'MODE_DRAWING_HOLE_3D') {
|
|
86
76
|
element.holes.forEach(function (holeID) {
|
|
87
77
|
var holeData = layer.holes.get(holeID);
|
|
@@ -104,14 +94,14 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
104
94
|
}
|
|
105
95
|
var shapeHole = new Three.Shape(holeVertices);
|
|
106
96
|
soulShape.holes.push(shapeHole);
|
|
107
|
-
var holeGeometry = new
|
|
108
|
-
var holeMesh = new
|
|
97
|
+
var holeGeometry = new BoxGeometry(holeWidth, holeHeight, thickness);
|
|
98
|
+
var holeMesh = new Mesh(holeGeometry);
|
|
109
99
|
holeMesh.position.x += holeWidth / 2;
|
|
110
100
|
holeMesh.position.y += holeHeight / 2;
|
|
111
101
|
holeMesh.position.x += holeDistance - distance / 2 - holeWidth / 2;
|
|
112
102
|
holeMesh.position.y -= height / 2 - holeAltitude;
|
|
113
|
-
var wallBSP = new
|
|
114
|
-
var holeBSP = new
|
|
103
|
+
var wallBSP = new ThreeBSP(soulMesh);
|
|
104
|
+
var holeBSP = new ThreeBSP(holeMesh);
|
|
115
105
|
var wallWithHoleBSP = wallBSP.subtract(holeBSP);
|
|
116
106
|
soulMesh = wallWithHoleBSP.toMesh(soulMaterial);
|
|
117
107
|
}
|
|
@@ -119,7 +109,7 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
119
109
|
}
|
|
120
110
|
var cAlpha = new Three.Vector2(vertex0.x - vertex1.x, vertex0.y - vertex1.y).angle();
|
|
121
111
|
var soulGeometry = new Three.ShapeGeometry(soulShape);
|
|
122
|
-
var soul = new
|
|
112
|
+
var soul = new Mesh(soulGeometry, soulMaterial);
|
|
123
113
|
soul.receiveShadow = true;
|
|
124
114
|
soul.castShadow = true;
|
|
125
115
|
soul.position.y += height / 2;
|
|
@@ -129,13 +119,13 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
129
119
|
soulMesh.rotation.y = cAlpha + Math.PI;
|
|
130
120
|
soulMesh.name = 'soul';
|
|
131
121
|
soulMesh.castShadow = true;
|
|
132
|
-
var frontMaterial = new
|
|
122
|
+
var frontMaterial = new MeshStandardMaterial({
|
|
133
123
|
color: new Three.Color(wallColor).convertLinearToSRGB(),
|
|
134
124
|
metalness: 0.1,
|
|
135
125
|
roughness: 0.9
|
|
136
126
|
// envMap: textureCube,
|
|
137
127
|
});
|
|
138
|
-
var backMaterial = new
|
|
128
|
+
var backMaterial = new MeshStandardMaterial({
|
|
139
129
|
color: new Three.Color(wallColor).convertLinearToSRGB(),
|
|
140
130
|
metalness: 0.1,
|
|
141
131
|
roughness: 0.9
|
|
@@ -147,11 +137,11 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
147
137
|
frontFace.material = frontMaterial;
|
|
148
138
|
frontFace.name = 'frontFace';
|
|
149
139
|
soulMesh.material = frontMaterial;
|
|
150
|
-
var merged = new
|
|
140
|
+
var merged = new Group();
|
|
151
141
|
merged.add(frontFace, soulMesh);
|
|
152
142
|
|
|
153
143
|
// if this wall is front of camera, show/hide
|
|
154
|
-
if (!
|
|
144
|
+
if (!isElevationView(mode)) {
|
|
155
145
|
frontFace.onBeforeRender = function (renderer, scene, camera, geometry, material, group) {
|
|
156
146
|
var soulMesh = this.parent.getObjectByName('soul');
|
|
157
147
|
if (geometry.attributes.normal === undefined) return soulMesh.visible = false;
|
|
@@ -170,7 +160,7 @@ function buildWall(element, layer, scene, textures, mode) {
|
|
|
170
160
|
}
|
|
171
161
|
return Promise.resolve(merged);
|
|
172
162
|
}
|
|
173
|
-
function updatedWall(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
163
|
+
export function updatedWall(element, layer, scene, textures, mesh, oldElement, differences, selfDestroy, selfBuild) {
|
|
174
164
|
var noPerf = function noPerf() {
|
|
175
165
|
selfDestroy();
|
|
176
166
|
return selfBuild();
|
|
@@ -181,7 +171,7 @@ function updatedWall(element, layer, scene, textures, mesh, oldElement, differen
|
|
|
181
171
|
if (differences[0] == 'selected') {
|
|
182
172
|
if (soul !== undefined) {
|
|
183
173
|
if (element.selected) {
|
|
184
|
-
soul.material = new
|
|
174
|
+
soul.material = new MeshBasicMaterial({
|
|
185
175
|
color: new Three.Color(SharedStyle.MESH_SELECTED).convertLinearToSRGB()
|
|
186
176
|
});
|
|
187
177
|
} else {
|
|
@@ -191,8 +181,8 @@ function updatedWall(element, layer, scene, textures, mesh, oldElement, differen
|
|
|
191
181
|
}
|
|
192
182
|
} else if (differences[0] == 'properties') {
|
|
193
183
|
if (differences[1] == 'thickness') {
|
|
194
|
-
var newThickness =
|
|
195
|
-
var oldThickness =
|
|
184
|
+
var newThickness = LINE_THICKNESS / 2;
|
|
185
|
+
var oldThickness = LINE_THICKNESS / 2;
|
|
196
186
|
// let newThickness = element.getIn(['properties', 'thickness', 'length']);
|
|
197
187
|
// let oldThickness = oldElement.getIn(['properties', 'thickness', 'length']);
|
|
198
188
|
var halfNewThickness = newThickness / 2;
|