kitchen-simulator 1.1.1-test.72 → 1.1.1-test.73
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 -5
- package/es/AppContext.js +3 -6
- package/es/KitchenConfigurator.js +86 -86
- package/es/KitchenConfiguratorApp.js +134 -128
- package/es/actions/area-actions.js +5 -8
- package/es/actions/export.js +12 -24
- package/es/actions/groups-actions.js +27 -41
- package/es/actions/holes-actions.js +34 -51
- package/es/actions/items-actions.js +94 -141
- package/es/actions/lines-actions.js +21 -32
- package/es/actions/project-actions.js +94 -141
- package/es/actions/scene-actions.js +11 -17
- package/es/actions/vertices-actions.js +7 -11
- package/es/actions/viewer2d-actions.js +21 -32
- package/es/actions/viewer3d-actions.js +9 -14
- package/es/catalog/areas/area/planner-element.js +2 -5
- package/es/catalog/catalog.js +15 -17
- package/es/catalog/factories/area-factory-3d.js +22 -26
- package/es/catalog/factories/area-factory.js +13 -15
- package/es/catalog/factories/export.js +6 -10
- package/es/catalog/factories/wall-factory-3d.js +31 -36
- package/es/catalog/factories/wall-factory.js +21 -26
- package/es/catalog/holes/door-closet/planner-element.js +15 -19
- package/es/catalog/holes/door-double/planner-element.js +15 -19
- package/es/catalog/holes/door-exterior/planner-element.js +16 -20
- package/es/catalog/holes/door-interior/planner-element.js +16 -20
- package/es/catalog/holes/door-panic/planner-element.js +7 -11
- package/es/catalog/holes/door-panic-double/planner-element.js +15 -19
- package/es/catalog/holes/door-sliding/planner-element.js +17 -21
- package/es/catalog/holes/doorway-framed/planner-element.js +11 -15
- package/es/catalog/holes/doorway-frameless/planner-element.js +7 -11
- package/es/catalog/holes/export.js +13 -29
- package/es/catalog/holes/window-clear/planner-element.js +10 -14
- package/es/catalog/holes/window-cross/planner-element.js +10 -14
- package/es/catalog/holes/window-double-hung/planner-element.js +10 -14
- package/es/catalog/holes/window-vertical/planner-element.js +10 -14
- package/es/catalog/lines/wall/planner-element.js +2 -5
- package/es/catalog/molding/molding-dcm/planner-element.js +5 -9
- package/es/catalog/molding/molding-fbm/planner-element.js +5 -9
- package/es/catalog/molding/molding-lrm/planner-element.js +5 -9
- package/es/catalog/properties/export.js +20 -31
- package/es/catalog/properties/property-checkbox.js +28 -29
- package/es/catalog/properties/property-color.js +16 -19
- package/es/catalog/properties/property-enum.js +24 -27
- package/es/catalog/properties/property-hidden.js +9 -12
- package/es/catalog/properties/property-lenght-measure.js +38 -41
- package/es/catalog/properties/property-length-measure.js +36 -39
- package/es/catalog/properties/property-length-measure_hole.js +38 -41
- package/es/catalog/properties/property-number.js +17 -20
- package/es/catalog/properties/property-read-only.js +16 -19
- package/es/catalog/properties/property-string.js +16 -19
- package/es/catalog/properties/property-toggle.js +16 -19
- package/es/catalog/properties/shared-property-style.js +1 -3
- package/es/catalog/utils/FuseUtils.js +12 -13
- package/es/catalog/utils/exporter.js +10 -11
- package/es/catalog/utils/geom-utils.js +13 -24
- package/es/catalog/utils/item-loader.js +86 -92
- package/es/catalog/utils/load-obj.js +20 -24
- package/es/catalog/utils/mtl-loader.js +3 -4
- package/es/catalog/utils/obj-loader.js +3 -4
- package/es/class/FuseUtils.js +12 -13
- package/es/class/area.js +24 -24
- package/es/class/export.js +23 -36
- package/es/class/group.js +53 -55
- package/es/class/guide.js +15 -17
- package/es/class/hole.js +83 -85
- package/es/class/item.js +155 -155
- package/es/class/layer.js +59 -61
- package/es/class/line.js +135 -138
- package/es/class/project.js +93 -94
- package/es/class/vertex.js +29 -31
- package/es/components/content.js +19 -23
- package/es/components/disclaimer/disclaimer.js +10 -13
- package/es/components/export.js +8 -13
- package/es/components/style/button.js +25 -25
- package/es/components/style/cancel-button.js +7 -10
- package/es/components/style/content-container.js +11 -12
- package/es/components/style/content-title.js +13 -15
- package/es/components/style/delete-button.js +8 -12
- package/es/components/style/export.js +30 -46
- package/es/components/style/form-block.js +10 -11
- package/es/components/style/form-color-input.js +7 -10
- package/es/components/style/form-label.js +10 -11
- package/es/components/style/form-number-input.js +45 -43
- package/es/components/style/form-number-input_2.js +41 -39
- package/es/components/style/form-select.js +19 -20
- package/es/components/style/form-slider.js +10 -13
- package/es/components/style/form-submit-button.js +8 -12
- package/es/components/style/form-text-input.js +30 -28
- package/es/components/viewer2d/area.js +17 -20
- package/es/components/viewer2d/export.js +30 -46
- package/es/components/viewer2d/grids/grid-horizontal-streak.js +10 -13
- package/es/components/viewer2d/grids/grid-streak.js +10 -13
- package/es/components/viewer2d/grids/grid-vertical-streak.js +10 -13
- package/es/components/viewer2d/grids/grids.js +10 -14
- package/es/components/viewer2d/group.js +15 -19
- package/es/components/viewer2d/item.js +61 -65
- package/es/components/viewer2d/layer.js +23 -26
- package/es/components/viewer2d/line.js +101 -106
- package/es/components/viewer2d/ruler.js +22 -25
- package/es/components/viewer2d/rulerDist.js +21 -24
- package/es/components/viewer2d/rulerX.js +46 -44
- package/es/components/viewer2d/rulerY.js +44 -42
- package/es/components/viewer2d/scene.js +34 -34
- package/es/components/viewer2d/snap.js +13 -17
- package/es/components/viewer2d/state.js +18 -22
- package/es/components/viewer2d/utils.js +24 -33
- package/es/components/viewer2d/vertex.js +8 -12
- package/es/components/viewer2d/viewer2d.js +156 -159
- package/es/components/viewer3d/camera-controls-module/camera-controls.module.js +21 -19
- package/es/components/viewer3d/dcm.js +1 -3
- package/es/components/viewer3d/fbm.js +1 -3
- package/es/components/viewer3d/front3D.js +12 -16
- package/es/components/viewer3d/grid-creator.js +8 -12
- package/es/components/viewer3d/grids/grid-horizontal-streak.js +6 -9
- package/es/components/viewer3d/grids/grid-streak.js +5 -8
- package/es/components/viewer3d/grids/grid-vertical-streak.js +6 -9
- package/es/components/viewer3d/libs/first-person-controls.js +2 -5
- package/es/components/viewer3d/libs/helvetiker_regular.typeface.js +1 -3
- package/es/components/viewer3d/libs/mtl-loader.js +1 -3
- package/es/components/viewer3d/libs/obj-loader.js +1 -3
- package/es/components/viewer3d/libs/orbit-controls.js +2 -4
- package/es/components/viewer3d/libs/pointer-lock-controls.js +2 -4
- package/es/components/viewer3d/lrm.js +1 -3
- package/es/components/viewer3d/model.js +1 -3
- package/es/components/viewer3d/pointer-lock-navigation.js +3 -6
- package/es/components/viewer3d/ruler-utils/itemRect.js +18 -21
- package/es/components/viewer3d/ruler-utils/layer3D.js +59 -62
- package/es/components/viewer3d/ruler-utils/ruler3D.js +42 -43
- package/es/components/viewer3d/ruler-utils/scene3D.js +9 -13
- package/es/components/viewer3d/ruler-utils/state3D.js +4 -7
- package/es/components/viewer3d/scene-creator.js +197 -223
- package/es/components/viewer3d/three-memory-cleaner.js +3 -7
- package/es/components/viewer3d/viewer3d-first-person.js +42 -42
- package/es/components/viewer3d/viewer3d.js +200 -198
- package/es/constants.js +349 -354
- package/es/index.js +7 -11
- package/es/models.js +193 -191
- package/es/plugins/SVGLoader.js +48 -49
- package/es/plugins/autosave.js +3 -5
- package/es/plugins/console-debugger.js +6 -7
- package/es/plugins/export.js +8 -13
- package/es/plugins/keyboard.js +29 -31
- package/es/reducers/areas-reducer.js +7 -9
- package/es/reducers/export.js +24 -37
- package/es/reducers/groups-reducer.js +31 -33
- package/es/reducers/holes-reducer.js +43 -45
- package/es/reducers/items-reducer.js +106 -108
- package/es/reducers/lines-reducer.js +28 -30
- package/es/reducers/project-reducer.js +105 -107
- package/es/reducers/reducer.js +16 -19
- package/es/reducers/scene-reducer.js +15 -17
- package/es/reducers/user-reducer.js +5 -7
- package/es/reducers/vertices-reducer.js +11 -13
- package/es/reducers/viewer2d-reducer.js +18 -20
- package/es/reducers/viewer3d-reducer.js +16 -18
- package/es/shared-style.js +10 -12
- package/es/styles/export.js +3 -6
- package/es/translator/en.js +1 -3
- package/es/translator/it.js +1 -3
- package/es/translator/ru.js +1 -3
- package/es/translator/translator.js +13 -15
- package/es/utils/browser.js +2 -5
- package/es/utils/convert-units-lite.js +1 -3
- package/es/utils/email-validator.js +1 -3
- package/es/utils/export.js +15 -29
- package/es/utils/geometry.js +190 -280
- package/es/utils/get-edges-of-subgraphs.js +2 -5
- package/es/utils/graph-cycles.js +8 -7
- package/es/utils/graph-inner-cycles.js +10 -14
- package/es/utils/graph.js +9 -13
- package/es/utils/helper.js +41 -58
- package/es/utils/history.js +8 -11
- package/es/utils/id-broker.js +8 -11
- package/es/utils/logger.js +1 -3
- package/es/utils/math.js +5 -8
- package/es/utils/molding.js +130 -146
- package/es/utils/name-generator.js +7 -9
- package/es/utils/objects-utils.js +7 -14
- package/es/utils/phone-validator.js +1 -3
- package/es/utils/process-black-list.js +5 -6
- package/es/utils/react-if.js +7 -9
- package/es/utils/snap-scene.js +27 -30
- package/es/utils/snap.js +53 -57
- package/es/utils/summarizeCart.js +1 -3
- package/es/utils/threeCSG.es6.js +13 -17
- package/es/version.js +1 -3
- package/package.json +1 -1
|
@@ -1,25 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var _math = require("../../utils/math");
|
|
21
|
-
var _helper = require("../../utils/helper");
|
|
22
|
-
// variables
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
4
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
5
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
6
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
7
|
+
import PropTypes from 'prop-types';
|
|
8
|
+
import { ReactSVGPanZoom, TOOL_AUTO, TOOL_NONE, TOOL_PAN, TOOL_ZOOM_IN, TOOL_ZOOM_OUT, zoom } from 'react-svg-pan-zoom';
|
|
9
|
+
import * as constants from "../../constants";
|
|
10
|
+
import State from "./state";
|
|
11
|
+
import * as SharedStyle from "../../shared-style";
|
|
12
|
+
import { RulerX, RulerY } from "./export";
|
|
13
|
+
import { DECIMAL_PLACES_2, LINE_THICKNESS, MIN_ANGLE_DISALLOW_DRAW_WALL, MODE_ELEVATION_VIEW, MODE_IDLE, UNIT_ANGLE } from "../../constants";
|
|
14
|
+
import { GeometryUtils } from "../../utils/export";
|
|
15
|
+
import FormNumberInput from "../style/form-number-input";
|
|
16
|
+
import { convert } from "../../utils/convert-units-lite";
|
|
17
|
+
import { Map } from 'immutable';
|
|
18
|
+
import { formatNumber } from "../../utils/math";
|
|
19
|
+
import { isEmpty } from "../../utils/helper"; // variables
|
|
23
20
|
|
|
24
21
|
// variables
|
|
25
22
|
var pinFlag = false;
|
|
@@ -39,19 +36,19 @@ var allArea;
|
|
|
39
36
|
// /////////
|
|
40
37
|
function mode2Tool(mode) {
|
|
41
38
|
if (pinFlag) {
|
|
42
|
-
return
|
|
39
|
+
return TOOL_NONE;
|
|
43
40
|
}
|
|
44
41
|
switch (mode) {
|
|
45
42
|
case constants.MODE_2D_PAN:
|
|
46
|
-
return
|
|
43
|
+
return TOOL_PAN;
|
|
47
44
|
case constants.MODE_2D_ZOOM_IN:
|
|
48
|
-
return
|
|
45
|
+
return TOOL_ZOOM_IN;
|
|
49
46
|
case constants.MODE_2D_ZOOM_OUT:
|
|
50
|
-
return
|
|
47
|
+
return TOOL_ZOOM_OUT;
|
|
51
48
|
case constants.MODE_IDLE:
|
|
52
|
-
return
|
|
49
|
+
return TOOL_AUTO;
|
|
53
50
|
default:
|
|
54
|
-
return
|
|
51
|
+
return TOOL_NONE;
|
|
55
52
|
}
|
|
56
53
|
}
|
|
57
54
|
function mode2PointerEvents(mode) {
|
|
@@ -123,7 +120,7 @@ function extractElementData(node) {
|
|
|
123
120
|
direct: node.attributes.getNamedItem('data-direct') ? node.attributes.getNamedItem('data-direct').value : 0
|
|
124
121
|
};
|
|
125
122
|
}
|
|
126
|
-
function Viewer2D(_ref, _ref2) {
|
|
123
|
+
export default function Viewer2D(_ref, _ref2) {
|
|
127
124
|
var state = _ref.state,
|
|
128
125
|
width = _ref.width,
|
|
129
126
|
height = _ref.height,
|
|
@@ -137,29 +134,29 @@ function Viewer2D(_ref, _ref2) {
|
|
|
137
134
|
areaActions = _ref2.areaActions,
|
|
138
135
|
projectActions = _ref2.projectActions,
|
|
139
136
|
catalog = _ref2.catalog;
|
|
140
|
-
var _useState =
|
|
141
|
-
_useState2 = (
|
|
137
|
+
var _useState = useState(null),
|
|
138
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
142
139
|
rulerEdit = _useState2[0],
|
|
143
140
|
setRulerEdit = _useState2[1];
|
|
144
|
-
var _useState3 =
|
|
145
|
-
_useState4 = (
|
|
141
|
+
var _useState3 = useState(null),
|
|
142
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
146
143
|
rulerEditID = _useState4[0],
|
|
147
144
|
setRulerEditID = _useState4[1];
|
|
148
|
-
var Viewer =
|
|
145
|
+
var Viewer = useRef(null);
|
|
149
146
|
var viewer2D = state.viewer2D,
|
|
150
147
|
mode = state.mode,
|
|
151
148
|
scene = state.scene;
|
|
152
149
|
|
|
153
150
|
// let relatedLines = [];
|
|
154
|
-
var _useState5 =
|
|
155
|
-
_useState6 = (
|
|
151
|
+
var _useState5 = useState([]),
|
|
152
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
156
153
|
relatedLines = _useState6[0],
|
|
157
154
|
setRelatedLines = _useState6[1];
|
|
158
|
-
var _useState7 =
|
|
159
|
-
_useState8 = (
|
|
155
|
+
var _useState7 = useState(false),
|
|
156
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
160
157
|
drawStart = _useState8[0],
|
|
161
158
|
setdrawStart = _useState8[1];
|
|
162
|
-
|
|
159
|
+
useEffect(function () {
|
|
163
160
|
// move viewer point to center
|
|
164
161
|
var selectedLayer = state.scene.layers.get(state.scene.selectedLayer);
|
|
165
162
|
var vertices = selectedLayer.vertices;
|
|
@@ -181,7 +178,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
181
178
|
Viewer.current.setPointOnViewerCenter(moveX, moveY, viewer2D.get('a'));
|
|
182
179
|
}, []);
|
|
183
180
|
var layerID = scene.selectedLayer;
|
|
184
|
-
var wall_thickness =
|
|
181
|
+
var wall_thickness = LINE_THICKNESS / 2;
|
|
185
182
|
var layer = scene.getIn(['layers', layerID]);
|
|
186
183
|
var mapCursorPosition = function mapCursorPosition(_ref3) {
|
|
187
184
|
var x = _ref3.x,
|
|
@@ -198,15 +195,15 @@ function Viewer2D(_ref, _ref2) {
|
|
|
198
195
|
var prepareSnap = function prepareSnap() {
|
|
199
196
|
var layerID = scene.selectedLayer;
|
|
200
197
|
var layer = scene.layers.get(layerID);
|
|
201
|
-
allLines =
|
|
202
|
-
allLineRects =
|
|
203
|
-
allItemRect =
|
|
204
|
-
allItemSnap =
|
|
205
|
-
allLineSnap =
|
|
198
|
+
allLines = GeometryUtils.getAllLines(layer);
|
|
199
|
+
allLineRects = GeometryUtils.buildRectFromLines(layer, allLines);
|
|
200
|
+
allItemRect = GeometryUtils.getAllItems(scene, catalog, allLineRects);
|
|
201
|
+
allItemSnap = GeometryUtils.getAllItemSnap(allItemRect);
|
|
202
|
+
allLineSnap = GeometryUtils.getAllLineSnap(allLineRects, allItemRect.cur);
|
|
206
203
|
allRect = allItemRect.others.concat(allLineRects);
|
|
207
|
-
allItemSnap =
|
|
208
|
-
allLineSnap =
|
|
209
|
-
allArea =
|
|
204
|
+
allItemSnap = GeometryUtils.validateSnaps(allItemSnap, allRect);
|
|
205
|
+
allLineSnap = GeometryUtils.validateSnaps(allLineSnap, allRect);
|
|
206
|
+
allArea = GeometryUtils.getAllArea(layer);
|
|
210
207
|
};
|
|
211
208
|
var updateRulerDistAttribute = function updateRulerDistAttribute(elementData, value) {
|
|
212
209
|
var newVal = value.get('length');
|
|
@@ -249,11 +246,11 @@ function Viewer2D(_ref, _ref2) {
|
|
|
249
246
|
var selectedLine = scene.getIn(['layers', elementData.layer, 'lines', elementData.id]).toJS();
|
|
250
247
|
var v_0 = scene.getIn(['layers', elementData.layer, 'vertices', selectedLine.vertices[0]]);
|
|
251
248
|
var v_1 = scene.getIn(['layers', elementData.layer, 'vertices', selectedLine.vertices[1]]);
|
|
252
|
-
var _GeometryUtils$orderV =
|
|
253
|
-
_GeometryUtils$orderV2 = (
|
|
249
|
+
var _GeometryUtils$orderV = GeometryUtils.orderVertices([v_0, v_1]),
|
|
250
|
+
_GeometryUtils$orderV2 = _slicedToArray(_GeometryUtils$orderV, 2),
|
|
254
251
|
v_a = _GeometryUtils$orderV2[0],
|
|
255
252
|
v_b = _GeometryUtils$orderV2[1];
|
|
256
|
-
var v_b_new =
|
|
253
|
+
var v_b_new = GeometryUtils.extendLine(v_a.x, v_a.y, v_b.x, v_b.y, value.get('length'), 2);
|
|
257
254
|
|
|
258
255
|
// Blocked function that as wall changed, opposite wall should changed together.
|
|
259
256
|
// let layer = scene.getIn(['layers', elementData.layer]);
|
|
@@ -275,17 +272,17 @@ function Viewer2D(_ref, _ref2) {
|
|
|
275
272
|
lineLength: value
|
|
276
273
|
};
|
|
277
274
|
if (v_0 === v_a) {
|
|
278
|
-
attributesData = (
|
|
275
|
+
attributesData = _objectSpread(_objectSpread({}, attributesData), {}, {
|
|
279
276
|
vertexTwo: v_b.merge(v_b_new),
|
|
280
277
|
vertexOne: v_a
|
|
281
278
|
});
|
|
282
279
|
} else {
|
|
283
|
-
attributesData = (
|
|
280
|
+
attributesData = _objectSpread(_objectSpread({}, attributesData), {}, {
|
|
284
281
|
vertexOne: v_b.merge(v_b_new),
|
|
285
282
|
vertexTwo: v_a
|
|
286
283
|
});
|
|
287
284
|
}
|
|
288
|
-
var attributesFormData = new
|
|
285
|
+
var attributesFormData = new Map(_objectSpread({}, attributesData));
|
|
289
286
|
setRulerEdit(null);
|
|
290
287
|
projectActions.setLinesAttributes(attributesFormData, true, {
|
|
291
288
|
layerID: elementData.layer,
|
|
@@ -369,7 +366,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
369
366
|
};
|
|
370
367
|
var getEndPoint = function getEndPoint(vertices, x, y, mode) {
|
|
371
368
|
var selLineID = state.getIn(['scene', 'layers', layerID, 'selected', 'lines']).first();
|
|
372
|
-
if (
|
|
369
|
+
if (isEmpty(selLineID)) {
|
|
373
370
|
return {
|
|
374
371
|
isEndDrag: true,
|
|
375
372
|
x: x,
|
|
@@ -379,7 +376,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
379
376
|
var draggingLine = state.getIn(['scene', 'layers', layerID, 'lines', selLineID]).toJS();
|
|
380
377
|
var allLines = state.getIn(['scene', 'layers', layerID, 'lines']).toJS();
|
|
381
378
|
var dragVertexId = state.getIn(['draggingSupport', 'vertexID']);
|
|
382
|
-
dragVertexId = !
|
|
379
|
+
dragVertexId = !isEmpty(dragVertexId) ? dragVertexId : draggingLine.vertices[1];
|
|
383
380
|
var vtx, vty;
|
|
384
381
|
var stepUnit = false;
|
|
385
382
|
vtx = vertices[dragVertexId].x;
|
|
@@ -390,7 +387,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
390
387
|
stepUnit = true;
|
|
391
388
|
}
|
|
392
389
|
var endDrag = [];
|
|
393
|
-
if (!
|
|
390
|
+
if (!isEmpty(relatedLines) && mode !== 'DRAGGING_LINE') {
|
|
394
391
|
vertices[dragVertexId].x = x;
|
|
395
392
|
vertices[dragVertexId].y = y;
|
|
396
393
|
}
|
|
@@ -398,17 +395,17 @@ function Viewer2D(_ref, _ref2) {
|
|
|
398
395
|
if (draggingLine.vertices[0] !== draggingLine.vertices[1]) {
|
|
399
396
|
for (var i = 0; i < relatedLines.length; i++) {
|
|
400
397
|
var line = relatedLines[i];
|
|
401
|
-
lineAngle =
|
|
398
|
+
lineAngle = GeometryUtils.angleBetweenTwoLines(line, draggingLine, vertices);
|
|
402
399
|
absAngle = Math.abs(lineAngle);
|
|
403
400
|
var tmpRelated = [];
|
|
404
|
-
|
|
401
|
+
GeometryUtils.getRelatedLines(tmpRelated, line, vertices, allLines, draggingLine.id);
|
|
405
402
|
for (var j = 0; j < tmpRelated.length; j++) {
|
|
406
|
-
var tmpAngle = Math.abs(
|
|
407
|
-
if (tmpAngle <
|
|
403
|
+
var tmpAngle = Math.abs(GeometryUtils.angleBetweenTwoLines(tmpRelated[j], line, vertices));
|
|
404
|
+
if (tmpAngle < MIN_ANGLE_DISALLOW_DRAW_WALL || tmpAngle > 360 - MIN_ANGLE_DISALLOW_DRAW_WALL) {
|
|
408
405
|
endDrag.push(false);
|
|
409
406
|
} else endDrag.push(true);
|
|
410
407
|
}
|
|
411
|
-
if (absAngle <
|
|
408
|
+
if (absAngle < MIN_ANGLE_DISALLOW_DRAW_WALL || absAngle > 360 - MIN_ANGLE_DISALLOW_DRAW_WALL) {
|
|
412
409
|
endDrag.push(false);
|
|
413
410
|
} else endDrag.push(true);
|
|
414
411
|
}
|
|
@@ -419,7 +416,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
419
416
|
vtx = x;
|
|
420
417
|
vty = y;
|
|
421
418
|
} else {
|
|
422
|
-
var rest =
|
|
419
|
+
var rest = MIN_ANGLE_DISALLOW_DRAW_WALL - absAngle;
|
|
423
420
|
// the origin point of rotation(snapping)
|
|
424
421
|
var originVerId = draggingLine.vertices.findIndex(function (vertice) {
|
|
425
422
|
return vertice !== dragVertexId;
|
|
@@ -431,7 +428,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
431
428
|
// determine the direction of rotation.
|
|
432
429
|
rest = lineAngle > 0 ? -rest : rest;
|
|
433
430
|
// rotate the current point to last point around the first point of drawing line.
|
|
434
|
-
var res =
|
|
431
|
+
var res = GeometryUtils.rotatePointAroundPoint(x, y, ox, oy, rest);
|
|
435
432
|
vtx = res.x;
|
|
436
433
|
vty = res.y;
|
|
437
434
|
}
|
|
@@ -440,8 +437,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
440
437
|
// angle snapping as a value of UNIT_ANGLE
|
|
441
438
|
if (!endDrag.some(function (flag) {
|
|
442
439
|
return flag === false;
|
|
443
|
-
}) && !
|
|
444
|
-
var _result =
|
|
440
|
+
}) && !isEmpty(absAngle) && absAngle % UNIT_ANGLE !== 0 && stepUnit) {
|
|
441
|
+
var _result = GeometryUtils.snapAngleByUnit(lineAngle, vertices, draggingLine, vtx, vty, dragVertexId);
|
|
445
442
|
vtx = _result.x;
|
|
446
443
|
vty = _result.y;
|
|
447
444
|
}
|
|
@@ -457,7 +454,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
457
454
|
if (!(item !== null && item !== void 0 && (_item$properties = item.properties) !== null && _item$properties !== void 0 && _item$properties.getIn)) return 0;
|
|
458
455
|
var length = item.properties.getIn([property, '_length']);
|
|
459
456
|
var unit = item.properties.getIn([property, '_unit']);
|
|
460
|
-
return length && unit ?
|
|
457
|
+
return length && unit ? convert(length).from(unit).to('cm') : 0;
|
|
461
458
|
};
|
|
462
459
|
var point = function point(x, y) {
|
|
463
460
|
return {
|
|
@@ -472,32 +469,32 @@ function Viewer2D(_ref, _ref2) {
|
|
|
472
469
|
var pointArray = [];
|
|
473
470
|
curItemInfo.rectCenterPoint.forEach(function (centerpoint) {
|
|
474
471
|
if (!Array.isArray(centerpoint) || centerpoint.length < 2) return;
|
|
475
|
-
var _centerpoint = (
|
|
472
|
+
var _centerpoint = _slicedToArray(centerpoint, 2),
|
|
476
473
|
pt = _centerpoint[0],
|
|
477
474
|
angle = _centerpoint[1];
|
|
478
475
|
if (!pt) return;
|
|
479
476
|
|
|
480
477
|
// line through centerpoint and reference center
|
|
481
|
-
var rectLine = angle === 180 || angle === 0 ?
|
|
478
|
+
var rectLine = angle === 180 || angle === 0 ? GeometryUtils.linePassingThroughTwoPoints(pt.x, pt.y, center_x1, center_y1) : GeometryUtils.linePassingThroughTwoPoints(pt.x, pt.y, x, y);
|
|
482
479
|
if (!rectLine) return;
|
|
483
480
|
var minDist;
|
|
484
481
|
allRect.forEach(function (linerect) {
|
|
485
482
|
if (!(linerect !== null && linerect !== void 0 && linerect.rect) || linerect.rect.length < 4) return;
|
|
486
|
-
var p0 =
|
|
487
|
-
var p1 =
|
|
483
|
+
var p0 = GeometryUtils.clone_point(linerect.rect[2]);
|
|
484
|
+
var p1 = GeometryUtils.clone_point(linerect.rect[3]);
|
|
488
485
|
if (!p0 || !p1 || p0.x === p1.x && p0.y === p1.y) return;
|
|
489
|
-
var lineFn =
|
|
486
|
+
var lineFn = GeometryUtils.linePassingThroughTwoPoints(p0.x, p0.y, p1.x, p1.y);
|
|
490
487
|
if (!lineFn) return;
|
|
491
|
-
var ip =
|
|
488
|
+
var ip = GeometryUtils.twoLinesIntersection(lineFn.a, lineFn.b, lineFn.c, rectLine.a, rectLine.b, rectLine.c);
|
|
492
489
|
if (!ip) return;
|
|
493
490
|
|
|
494
491
|
// intersection must lie within line segment
|
|
495
|
-
var segLen =
|
|
496
|
-
if (segLen <=
|
|
492
|
+
var segLen = GeometryUtils.pointsDistance(p0.x, p0.y, p1.x, p1.y);
|
|
493
|
+
if (segLen <= GeometryUtils.pointsDistance(p0.x, p0.y, ip.x, ip.y) || segLen <= GeometryUtils.pointsDistance(p1.x, p1.y, ip.x, ip.y)) return;
|
|
497
494
|
|
|
498
495
|
// ensure intersection is farther than pt→center
|
|
499
|
-
var distToCenter =
|
|
500
|
-
var baseDist =
|
|
496
|
+
var distToCenter = GeometryUtils.pointsDistance(ip.x, ip.y, x, y);
|
|
497
|
+
var baseDist = GeometryUtils.pointsDistance(pt.x, pt.y, ip.x, ip.y);
|
|
501
498
|
if (distToCenter <= baseDist) return;
|
|
502
499
|
var candidate = baseDist;
|
|
503
500
|
minDist = minDist !== undefined ? Math.min(minDist, candidate) : candidate;
|
|
@@ -554,12 +551,12 @@ function Viewer2D(_ref, _ref2) {
|
|
|
554
551
|
};
|
|
555
552
|
|
|
556
553
|
// collect geometry
|
|
557
|
-
var _allLines =
|
|
558
|
-
var _allLineRects =
|
|
559
|
-
var _allItemRect =
|
|
554
|
+
var _allLines = GeometryUtils.getAllLines(layer) || [];
|
|
555
|
+
var _allLineRects = GeometryUtils.buildRectFromLines(layer, _allLines) || [];
|
|
556
|
+
var _allItemRect = GeometryUtils.getAllItems(scene, catalog, _allLineRects) || {
|
|
560
557
|
others: []
|
|
561
558
|
};
|
|
562
|
-
var _allRect = [].concat((
|
|
559
|
+
var _allRect = [].concat(_toConsumableArray(_allItemRect.others || []), _toConsumableArray(_allLineRects));
|
|
563
560
|
|
|
564
561
|
// current item
|
|
565
562
|
var curItemInfo = getCalcRectFromItem(val);
|
|
@@ -636,7 +633,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
636
633
|
endPoint.y = y;
|
|
637
634
|
} else {
|
|
638
635
|
prepareSnap();
|
|
639
|
-
var _GeometryUtils$calcSn =
|
|
636
|
+
var _GeometryUtils$calcSn = GeometryUtils.calcSnap(allItemRect, allItemSnap, allLineRects, allLineSnap, allRect, x, y, allArea),
|
|
640
637
|
nx = _GeometryUtils$calcSn.nx,
|
|
641
638
|
ny = _GeometryUtils$calcSn.ny,
|
|
642
639
|
rot = _GeometryUtils$calcSn.rot,
|
|
@@ -651,10 +648,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
651
648
|
layoutpos: allItemRect.cur && allItemRect.cur.layoutpos,
|
|
652
649
|
is_corner: allItemRect.cur && allItemRect.cur.is_corner
|
|
653
650
|
};
|
|
654
|
-
var _GeometryUtils$getAll =
|
|
651
|
+
var _GeometryUtils$getAll = GeometryUtils.getAllHoleRect(scene, _val),
|
|
655
652
|
_isSect = _GeometryUtils$getAll.isSect,
|
|
656
653
|
_snap = _GeometryUtils$getAll.snap;
|
|
657
|
-
if (!
|
|
654
|
+
if (!isEmpty(_snap) && _isSect) {
|
|
658
655
|
if (_snap.length == 1) _val.pos = {
|
|
659
656
|
x: _snap[0].x,
|
|
660
657
|
y: _snap[0].y
|
|
@@ -667,7 +664,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
667
664
|
y: _snap[1].y
|
|
668
665
|
};
|
|
669
666
|
}
|
|
670
|
-
var interSect =
|
|
667
|
+
var interSect = GeometryUtils.validInterSect(allItemRect.others, _val);
|
|
671
668
|
if (interSect) {
|
|
672
669
|
nx = _val.pos.x;
|
|
673
670
|
ny = _val.pos.y;
|
|
@@ -677,7 +674,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
677
674
|
x: nx,
|
|
678
675
|
y: ny
|
|
679
676
|
};
|
|
680
|
-
var _isrectSect =
|
|
677
|
+
var _isrectSect = GeometryUtils.validInterSect(allItemRect.others, _val);
|
|
681
678
|
if (_isrectSect && _isSect) {
|
|
682
679
|
itemsActions.updateDraggingItemChanged(nx, ny, layerID, current_sel_obj_id);
|
|
683
680
|
itemsActions.updateRotatingItemChanged(rot, layerID, current_sel_obj_id);
|
|
@@ -712,7 +709,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
712
709
|
case constants.MODE_DRAGGING_ITEM:
|
|
713
710
|
calcDistanceArray();
|
|
714
711
|
prepareSnap();
|
|
715
|
-
var _GeometryUtils$calcSn2 =
|
|
712
|
+
var _GeometryUtils$calcSn2 = GeometryUtils.calcSnap(allItemRect, allItemSnap, allLineRects, allLineSnap, allRect, x, y, allArea),
|
|
716
713
|
nx = _GeometryUtils$calcSn2.nx,
|
|
717
714
|
ny = _GeometryUtils$calcSn2.ny,
|
|
718
715
|
rot = _GeometryUtils$calcSn2.rot,
|
|
@@ -727,10 +724,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
727
724
|
layoutpos: allItemRect.cur && allItemRect.cur.layoutpos,
|
|
728
725
|
is_corner: allItemRect.cur && allItemRect.cur.is_corner
|
|
729
726
|
};
|
|
730
|
-
var _GeometryUtils$getAll2 =
|
|
727
|
+
var _GeometryUtils$getAll2 = GeometryUtils.getAllHoleRect(scene, val),
|
|
731
728
|
isSect = _GeometryUtils$getAll2.isSect,
|
|
732
729
|
snap = _GeometryUtils$getAll2.snap;
|
|
733
|
-
if (!
|
|
730
|
+
if (!isEmpty(snap) && isSect) {
|
|
734
731
|
if (snap.length == 1) val.pos = {
|
|
735
732
|
x: snap[0].x,
|
|
736
733
|
y: snap[0].y
|
|
@@ -743,7 +740,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
743
740
|
y: snap[1].y
|
|
744
741
|
};
|
|
745
742
|
}
|
|
746
|
-
var _interSect =
|
|
743
|
+
var _interSect = GeometryUtils.validInterSect(allItemRect.others, val);
|
|
747
744
|
if (_interSect) {
|
|
748
745
|
nx = val.pos.x;
|
|
749
746
|
ny = val.pos.y;
|
|
@@ -753,7 +750,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
753
750
|
x: nx,
|
|
754
751
|
y: ny
|
|
755
752
|
};
|
|
756
|
-
var isrectSect =
|
|
753
|
+
var isrectSect = GeometryUtils.validInterSect(allItemRect.others, val);
|
|
757
754
|
if (isrectSect && isSect) {
|
|
758
755
|
itemsActions.updateDraggingItemChanged(nx, ny, layerID, current_sel_obj_id);
|
|
759
756
|
itemsActions.updateRotatingItemChanged(rot, layerID, current_sel_obj_id);
|
|
@@ -873,7 +870,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
873
870
|
break;
|
|
874
871
|
} else if (elementData.part === 'elevation') {
|
|
875
872
|
// handle action when click elevation about selected line
|
|
876
|
-
var _mode =
|
|
873
|
+
var _mode = MODE_ELEVATION_VIEW;
|
|
877
874
|
projectActions.setMode(_mode);
|
|
878
875
|
break;
|
|
879
876
|
} else {
|
|
@@ -908,9 +905,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
908
905
|
break;
|
|
909
906
|
}
|
|
910
907
|
case 'rulerDist':
|
|
911
|
-
var _length1 =
|
|
912
|
-
var distanceText1 = "".concat(
|
|
913
|
-
var numberInput1 = /*#__PURE__*/
|
|
908
|
+
var _length1 = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
909
|
+
var distanceText1 = "".concat(formatNumber(_length1, DECIMAL_PLACES_2));
|
|
910
|
+
var numberInput1 = /*#__PURE__*/React.createElement("div", {
|
|
914
911
|
id: "ruler_numberInput",
|
|
915
912
|
style: {
|
|
916
913
|
position: 'absolute',
|
|
@@ -918,7 +915,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
918
915
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
919
916
|
zIndex: 1000
|
|
920
917
|
}
|
|
921
|
-
}, /*#__PURE__*/
|
|
918
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
922
919
|
style: {
|
|
923
920
|
width: 150,
|
|
924
921
|
height: 50,
|
|
@@ -930,8 +927,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
930
927
|
},
|
|
931
928
|
value: distanceText1,
|
|
932
929
|
onChange: function onChange(event) {
|
|
933
|
-
var value = new
|
|
934
|
-
length:
|
|
930
|
+
var value = new Map({
|
|
931
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
935
932
|
_length: event.target.value,
|
|
936
933
|
_unit: scene.rulerUnit
|
|
937
934
|
});
|
|
@@ -943,8 +940,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
943
940
|
projectActions.unselectAll();
|
|
944
941
|
break;
|
|
945
942
|
case 'ruler':
|
|
946
|
-
var _length =
|
|
947
|
-
var numberInput = /*#__PURE__*/
|
|
943
|
+
var _length = convert(elementData.length).from(scene.unit).to(selectedLayer.unit);
|
|
944
|
+
var numberInput = /*#__PURE__*/React.createElement("div", {
|
|
948
945
|
id: "ruler_numberInput",
|
|
949
946
|
style: {
|
|
950
947
|
position: 'absolute',
|
|
@@ -952,7 +949,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
952
949
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
953
950
|
zIndex: 1000
|
|
954
951
|
}
|
|
955
|
-
}, /*#__PURE__*/
|
|
952
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
956
953
|
style: {
|
|
957
954
|
width: 150,
|
|
958
955
|
height: 50,
|
|
@@ -962,10 +959,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
962
959
|
lineHeight: '22px',
|
|
963
960
|
fontWeight: 600
|
|
964
961
|
},
|
|
965
|
-
value:
|
|
962
|
+
value: formatNumber(_length, DECIMAL_PLACES_2),
|
|
966
963
|
onChange: function onChange(event) {
|
|
967
|
-
var value = new
|
|
968
|
-
length:
|
|
964
|
+
var value = new Map({
|
|
965
|
+
length: convert(event.target.value).from(selectedLayer.unit).to(scene.unit),
|
|
969
966
|
_length: event.target.value,
|
|
970
967
|
_unit: selectedLayer.unit
|
|
971
968
|
});
|
|
@@ -977,9 +974,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
977
974
|
projectActions.unselectAll();
|
|
978
975
|
break;
|
|
979
976
|
case 'twoHoleRuler':
|
|
980
|
-
var _lengthTwoHoleRuler =
|
|
981
|
-
var distanceTextTwoHoleRuler = "".concat(
|
|
982
|
-
var numberInputTwoHoleRuler = /*#__PURE__*/
|
|
977
|
+
var _lengthTwoHoleRuler = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
978
|
+
var distanceTextTwoHoleRuler = "".concat(formatNumber(_lengthTwoHoleRuler, DECIMAL_PLACES_2));
|
|
979
|
+
var numberInputTwoHoleRuler = /*#__PURE__*/React.createElement("div", {
|
|
983
980
|
id: "ruler_numberInput",
|
|
984
981
|
style: {
|
|
985
982
|
position: 'absolute',
|
|
@@ -987,7 +984,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
987
984
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
988
985
|
zIndex: 1000
|
|
989
986
|
}
|
|
990
|
-
}, /*#__PURE__*/
|
|
987
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
991
988
|
style: {
|
|
992
989
|
width: 150,
|
|
993
990
|
height: 50,
|
|
@@ -999,8 +996,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
999
996
|
},
|
|
1000
997
|
value: distanceTextTwoHoleRuler,
|
|
1001
998
|
onChange: function onChange(event) {
|
|
1002
|
-
var value = new
|
|
1003
|
-
length:
|
|
999
|
+
var value = new Map({
|
|
1000
|
+
length: convert(event.target.value / 2).from(scene.rulerUnit).to(scene.unit),
|
|
1004
1001
|
_length: event.target.value / 2,
|
|
1005
1002
|
_unit: scene.rulerUnit
|
|
1006
1003
|
});
|
|
@@ -1012,9 +1009,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1012
1009
|
projectActions.unselectAll();
|
|
1013
1010
|
break;
|
|
1014
1011
|
case 'leftHoleRuler':
|
|
1015
|
-
var _lengthLeftHoleRuler =
|
|
1012
|
+
var _lengthLeftHoleRuler = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
1016
1013
|
var distanceTextLeftHoleRuler = "".concat(_lengthLeftHoleRuler.toFixed(2));
|
|
1017
|
-
var numberInputLeftHoleRuler = /*#__PURE__*/
|
|
1014
|
+
var numberInputLeftHoleRuler = /*#__PURE__*/React.createElement("div", {
|
|
1018
1015
|
id: "ruler_numberInput",
|
|
1019
1016
|
style: {
|
|
1020
1017
|
position: 'absolute',
|
|
@@ -1022,7 +1019,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1022
1019
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1023
1020
|
zIndex: 1000
|
|
1024
1021
|
}
|
|
1025
|
-
}, /*#__PURE__*/
|
|
1022
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1026
1023
|
style: {
|
|
1027
1024
|
width: 150,
|
|
1028
1025
|
height: 50,
|
|
@@ -1034,8 +1031,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1034
1031
|
},
|
|
1035
1032
|
value: distanceTextLeftHoleRuler,
|
|
1036
1033
|
onChange: function onChange(event) {
|
|
1037
|
-
var value = new
|
|
1038
|
-
length:
|
|
1034
|
+
var value = new Map({
|
|
1035
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1039
1036
|
_length: event.target.value,
|
|
1040
1037
|
_unit: scene.rulerUnit
|
|
1041
1038
|
});
|
|
@@ -1047,9 +1044,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1047
1044
|
projectActions.unselectAll();
|
|
1048
1045
|
break;
|
|
1049
1046
|
case 'rulerHole':
|
|
1050
|
-
var _lengthRulerHole =
|
|
1051
|
-
var distanceTextRulerHole = "".concat(
|
|
1052
|
-
var numberInputRulerHole = /*#__PURE__*/
|
|
1047
|
+
var _lengthRulerHole = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
1048
|
+
var distanceTextRulerHole = "".concat(formatNumber(_lengthRulerHole, DECIMAL_PLACES_2));
|
|
1049
|
+
var numberInputRulerHole = /*#__PURE__*/React.createElement("div", {
|
|
1053
1050
|
id: "ruler_numberInput",
|
|
1054
1051
|
style: {
|
|
1055
1052
|
position: 'absolute',
|
|
@@ -1057,7 +1054,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1057
1054
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1058
1055
|
zIndex: 1000
|
|
1059
1056
|
}
|
|
1060
|
-
}, /*#__PURE__*/
|
|
1057
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1061
1058
|
style: {
|
|
1062
1059
|
width: 150,
|
|
1063
1060
|
height: 50,
|
|
@@ -1069,8 +1066,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1069
1066
|
},
|
|
1070
1067
|
value: distanceTextRulerHole,
|
|
1071
1068
|
onChange: function onChange(event) {
|
|
1072
|
-
var value = new
|
|
1073
|
-
length:
|
|
1069
|
+
var value = new Map({
|
|
1070
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1074
1071
|
_length: event.target.value,
|
|
1075
1072
|
_unit: scene.rulerUnit
|
|
1076
1073
|
});
|
|
@@ -1082,9 +1079,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1082
1079
|
projectActions.unselectAll();
|
|
1083
1080
|
break;
|
|
1084
1081
|
case 'rightHoleRuler':
|
|
1085
|
-
var _lengthRightHoleRuler =
|
|
1082
|
+
var _lengthRightHoleRuler = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
1086
1083
|
var distanceTextRightHoleRuler = "".concat(_lengthRightHoleRuler.toFixed(2));
|
|
1087
|
-
var numberInputRightHoleRuler = /*#__PURE__*/
|
|
1084
|
+
var numberInputRightHoleRuler = /*#__PURE__*/React.createElement("div", {
|
|
1088
1085
|
id: "ruler_numberInput",
|
|
1089
1086
|
style: {
|
|
1090
1087
|
position: 'absolute',
|
|
@@ -1092,7 +1089,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1092
1089
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1093
1090
|
zIndex: 1000
|
|
1094
1091
|
}
|
|
1095
|
-
}, /*#__PURE__*/
|
|
1092
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1096
1093
|
style: {
|
|
1097
1094
|
width: 150,
|
|
1098
1095
|
height: 50,
|
|
@@ -1104,8 +1101,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1104
1101
|
},
|
|
1105
1102
|
value: distanceTextRightHoleRuler,
|
|
1106
1103
|
onChange: function onChange(event) {
|
|
1107
|
-
var value = new
|
|
1108
|
-
length:
|
|
1104
|
+
var value = new Map({
|
|
1105
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1109
1106
|
_length: event.target.value,
|
|
1110
1107
|
_unit: scene.rulerUnit
|
|
1111
1108
|
});
|
|
@@ -1118,7 +1115,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1118
1115
|
break;
|
|
1119
1116
|
case 'angleChange':
|
|
1120
1117
|
var _length2 = elementData.length;
|
|
1121
|
-
var numberInput2 = /*#__PURE__*/
|
|
1118
|
+
var numberInput2 = /*#__PURE__*/React.createElement("div", {
|
|
1122
1119
|
id: "ruler_numberInput",
|
|
1123
1120
|
style: {
|
|
1124
1121
|
position: 'absolute',
|
|
@@ -1126,15 +1123,15 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1126
1123
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1127
1124
|
zIndex: 1000
|
|
1128
1125
|
}
|
|
1129
|
-
}, /*#__PURE__*/
|
|
1126
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1130
1127
|
style: {
|
|
1131
1128
|
width: 50,
|
|
1132
1129
|
height: 50
|
|
1133
1130
|
},
|
|
1134
1131
|
value: _length2,
|
|
1135
1132
|
onChange: function onChange(event) {
|
|
1136
|
-
var value = new
|
|
1137
|
-
length:
|
|
1133
|
+
var value = new Map({
|
|
1134
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1138
1135
|
_length: event.target.value,
|
|
1139
1136
|
_unit: scene.rulerUnit
|
|
1140
1137
|
});
|
|
@@ -1188,7 +1185,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1188
1185
|
break;
|
|
1189
1186
|
case constants.MODE_DRAGGING_ITEM:
|
|
1190
1187
|
itemsActions.updateMolding();
|
|
1191
|
-
projectActions.setMode(
|
|
1188
|
+
projectActions.setMode(MODE_IDLE);
|
|
1192
1189
|
break;
|
|
1193
1190
|
case constants.MODE_DRAGGING_HOLE:
|
|
1194
1191
|
holesActions.endDraggingHole(x, y);
|
|
@@ -1233,16 +1230,16 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1233
1230
|
};
|
|
1234
1231
|
var onChangeTool = function onChangeTool(tool) {
|
|
1235
1232
|
switch (tool) {
|
|
1236
|
-
case
|
|
1233
|
+
case TOOL_NONE:
|
|
1237
1234
|
projectActions.selectToolEdit();
|
|
1238
1235
|
break;
|
|
1239
|
-
case
|
|
1236
|
+
case TOOL_PAN:
|
|
1240
1237
|
viewer2DActions.selectToolPan();
|
|
1241
1238
|
break;
|
|
1242
|
-
case
|
|
1239
|
+
case TOOL_ZOOM_IN:
|
|
1243
1240
|
viewer2DActions.selectToolZoomIn();
|
|
1244
1241
|
break;
|
|
1245
|
-
case
|
|
1242
|
+
case TOOL_ZOOM_OUT:
|
|
1246
1243
|
viewer2DActions.selectToolZoomOut();
|
|
1247
1244
|
break;
|
|
1248
1245
|
}
|
|
@@ -1270,7 +1267,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1270
1267
|
var rulerYElements = Math.ceil(sceneHeight / rulerUnitPixelSize) + 1;
|
|
1271
1268
|
console.log('---render viewer2d');
|
|
1272
1269
|
console.log(viewer2D.isEmpty());
|
|
1273
|
-
return /*#__PURE__*/
|
|
1270
|
+
return /*#__PURE__*/React.createElement("div", null, rulerEdit, /*#__PURE__*/React.createElement("div", {
|
|
1274
1271
|
style: {
|
|
1275
1272
|
margin: 0,
|
|
1276
1273
|
padding: 0,
|
|
@@ -1281,13 +1278,13 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1281
1278
|
gridTemplateRows: "".concat(rulerSize, "px ").concat(height - rulerSize, "px"),
|
|
1282
1279
|
position: 'relative'
|
|
1283
1280
|
}
|
|
1284
|
-
}, /*#__PURE__*/
|
|
1281
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
1285
1282
|
style: {
|
|
1286
1283
|
gridColumn: 1,
|
|
1287
1284
|
gridRow: 1,
|
|
1288
1285
|
backgroundColor: rulerBgColor
|
|
1289
1286
|
}
|
|
1290
|
-
}), /*#__PURE__*/
|
|
1287
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
1291
1288
|
style: {
|
|
1292
1289
|
gridRow: 1,
|
|
1293
1290
|
gridColumn: 2,
|
|
@@ -1295,7 +1292,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1295
1292
|
overflow: 'hidden'
|
|
1296
1293
|
},
|
|
1297
1294
|
id: "rulerX"
|
|
1298
|
-
}, sceneWidth ? /*#__PURE__*/
|
|
1295
|
+
}, sceneWidth ? /*#__PURE__*/React.createElement(RulerX, {
|
|
1299
1296
|
unitPixelSize: rulerUnitPixelSize,
|
|
1300
1297
|
zoom: sceneZoom,
|
|
1301
1298
|
mouseX: state.mouse.get('x'),
|
|
@@ -1306,7 +1303,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1306
1303
|
markerColor: rulerMkColor,
|
|
1307
1304
|
positiveUnitsNumber: rulerXElements,
|
|
1308
1305
|
negativeUnitsNumber: 0
|
|
1309
|
-
}) : null), /*#__PURE__*/
|
|
1306
|
+
}) : null), /*#__PURE__*/React.createElement("div", {
|
|
1310
1307
|
style: {
|
|
1311
1308
|
gridColumn: 1,
|
|
1312
1309
|
gridRow: 2,
|
|
@@ -1314,7 +1311,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1314
1311
|
overflow: 'hidden'
|
|
1315
1312
|
},
|
|
1316
1313
|
id: "rulerY"
|
|
1317
|
-
}, sceneHeight ? /*#__PURE__*/
|
|
1314
|
+
}, sceneHeight ? /*#__PURE__*/React.createElement(RulerY, {
|
|
1318
1315
|
unitPixelSize: rulerUnitPixelSize,
|
|
1319
1316
|
zoom: sceneZoom,
|
|
1320
1317
|
mouseY: state.mouse.get('y'),
|
|
@@ -1325,7 +1322,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1325
1322
|
markerColor: rulerMkColor,
|
|
1326
1323
|
positiveUnitsNumber: rulerYElements,
|
|
1327
1324
|
negativeUnitsNumber: 0
|
|
1328
|
-
}) : null), /*#__PURE__*/
|
|
1325
|
+
}) : null), /*#__PURE__*/React.createElement(ReactSVGPanZoom, {
|
|
1329
1326
|
style: {
|
|
1330
1327
|
gridColumn: 2,
|
|
1331
1328
|
gridRow: 2
|
|
@@ -1349,30 +1346,30 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1349
1346
|
detectPinchGesture: false,
|
|
1350
1347
|
disableDoubleClickZoomWithToolAuto: true,
|
|
1351
1348
|
ref: Viewer
|
|
1352
|
-
}, /*#__PURE__*/
|
|
1349
|
+
}, /*#__PURE__*/React.createElement("svg", {
|
|
1353
1350
|
width: scene.width,
|
|
1354
1351
|
height: scene.height
|
|
1355
|
-
}, /*#__PURE__*/
|
|
1352
|
+
}, /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("pattern", {
|
|
1356
1353
|
id: "diagonalFill",
|
|
1357
1354
|
patternUnits: "userSpaceOnUse",
|
|
1358
1355
|
width: "4",
|
|
1359
1356
|
height: "4",
|
|
1360
1357
|
fill: "#FFF"
|
|
1361
|
-
}, /*#__PURE__*/
|
|
1358
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
1362
1359
|
x: "0",
|
|
1363
1360
|
y: "0",
|
|
1364
1361
|
width: "4",
|
|
1365
1362
|
height: "4",
|
|
1366
1363
|
fill: "#FFF"
|
|
1367
|
-
}), /*#__PURE__*/
|
|
1364
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
1368
1365
|
d: "M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2",
|
|
1369
1366
|
style: {
|
|
1370
1367
|
stroke: '#8E9BA2',
|
|
1371
1368
|
strokeWidth: 1
|
|
1372
1369
|
}
|
|
1373
|
-
}))), /*#__PURE__*/
|
|
1370
|
+
}))), /*#__PURE__*/React.createElement("g", {
|
|
1374
1371
|
style: Object.assign(mode2Cursor(mode), mode2PointerEvents(mode))
|
|
1375
|
-
}, /*#__PURE__*/
|
|
1372
|
+
}, /*#__PURE__*/React.createElement(State, {
|
|
1376
1373
|
state: state,
|
|
1377
1374
|
catalog: catalog,
|
|
1378
1375
|
viewer2DActions: viewer2DActions,
|
|
@@ -1380,17 +1377,17 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1380
1377
|
}))))));
|
|
1381
1378
|
}
|
|
1382
1379
|
Viewer2D.propTypes = {
|
|
1383
|
-
state:
|
|
1384
|
-
width:
|
|
1385
|
-
height:
|
|
1380
|
+
state: PropTypes.object.isRequired,
|
|
1381
|
+
width: PropTypes.number.isRequired,
|
|
1382
|
+
height: PropTypes.number.isRequired
|
|
1386
1383
|
};
|
|
1387
1384
|
Viewer2D.contextTypes = {
|
|
1388
|
-
viewer2DActions:
|
|
1389
|
-
linesActions:
|
|
1390
|
-
holesActions:
|
|
1391
|
-
verticesActions:
|
|
1392
|
-
itemsActions:
|
|
1393
|
-
areaActions:
|
|
1394
|
-
projectActions:
|
|
1395
|
-
catalog:
|
|
1385
|
+
viewer2DActions: PropTypes.object.isRequired,
|
|
1386
|
+
linesActions: PropTypes.object.isRequired,
|
|
1387
|
+
holesActions: PropTypes.object.isRequired,
|
|
1388
|
+
verticesActions: PropTypes.object.isRequired,
|
|
1389
|
+
itemsActions: PropTypes.object.isRequired,
|
|
1390
|
+
areaActions: PropTypes.object.isRequired,
|
|
1391
|
+
projectActions: PropTypes.object.isRequired,
|
|
1392
|
+
catalog: PropTypes.object.isRequired
|
|
1396
1393
|
};
|