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,32 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = Viewer2D;
|
|
9
|
-
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
14
|
-
var _reactSvgPanZoom = require("react-svg-pan-zoom");
|
|
15
|
-
var _constants = _interopRequireWildcard(require("../../constants"));
|
|
16
|
-
var constants = _constants;
|
|
17
|
-
var _state = _interopRequireDefault(require("./state"));
|
|
18
|
-
var SharedStyle = _interopRequireWildcard(require("../../shared-style"));
|
|
19
|
-
var _export = require("./export");
|
|
20
|
-
var _export2 = require("../../utils/export");
|
|
21
|
-
var _formNumberInput = _interopRequireDefault(require("../style/form-number-input"));
|
|
22
|
-
var _convertUnitsLite = require("../../utils/convert-units-lite");
|
|
23
|
-
var _immutable = require("immutable");
|
|
24
|
-
var _math = require("../../utils/math");
|
|
25
|
-
var _helper = require("../../utils/helper");
|
|
26
|
-
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 _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
27
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; }
|
|
28
|
-
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) { (
|
|
29
|
-
|
|
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
|
|
30
20
|
|
|
31
21
|
// variables
|
|
32
22
|
var pinFlag = false;
|
|
@@ -46,19 +36,19 @@ var allArea;
|
|
|
46
36
|
// /////////
|
|
47
37
|
function mode2Tool(mode) {
|
|
48
38
|
if (pinFlag) {
|
|
49
|
-
return
|
|
39
|
+
return TOOL_NONE;
|
|
50
40
|
}
|
|
51
41
|
switch (mode) {
|
|
52
42
|
case constants.MODE_2D_PAN:
|
|
53
|
-
return
|
|
43
|
+
return TOOL_PAN;
|
|
54
44
|
case constants.MODE_2D_ZOOM_IN:
|
|
55
|
-
return
|
|
45
|
+
return TOOL_ZOOM_IN;
|
|
56
46
|
case constants.MODE_2D_ZOOM_OUT:
|
|
57
|
-
return
|
|
47
|
+
return TOOL_ZOOM_OUT;
|
|
58
48
|
case constants.MODE_IDLE:
|
|
59
|
-
return
|
|
49
|
+
return TOOL_AUTO;
|
|
60
50
|
default:
|
|
61
|
-
return
|
|
51
|
+
return TOOL_NONE;
|
|
62
52
|
}
|
|
63
53
|
}
|
|
64
54
|
function mode2PointerEvents(mode) {
|
|
@@ -130,7 +120,7 @@ function extractElementData(node) {
|
|
|
130
120
|
direct: node.attributes.getNamedItem('data-direct') ? node.attributes.getNamedItem('data-direct').value : 0
|
|
131
121
|
};
|
|
132
122
|
}
|
|
133
|
-
function Viewer2D(_ref, _ref2) {
|
|
123
|
+
export default function Viewer2D(_ref, _ref2) {
|
|
134
124
|
var state = _ref.state,
|
|
135
125
|
width = _ref.width,
|
|
136
126
|
height = _ref.height,
|
|
@@ -144,29 +134,29 @@ function Viewer2D(_ref, _ref2) {
|
|
|
144
134
|
areaActions = _ref2.areaActions,
|
|
145
135
|
projectActions = _ref2.projectActions,
|
|
146
136
|
catalog = _ref2.catalog;
|
|
147
|
-
var _useState =
|
|
148
|
-
_useState2 = (
|
|
137
|
+
var _useState = useState(null),
|
|
138
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
149
139
|
rulerEdit = _useState2[0],
|
|
150
140
|
setRulerEdit = _useState2[1];
|
|
151
|
-
var _useState3 =
|
|
152
|
-
_useState4 = (
|
|
141
|
+
var _useState3 = useState(null),
|
|
142
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
153
143
|
rulerEditID = _useState4[0],
|
|
154
144
|
setRulerEditID = _useState4[1];
|
|
155
|
-
var Viewer =
|
|
145
|
+
var Viewer = useRef(null);
|
|
156
146
|
var viewer2D = state.viewer2D,
|
|
157
147
|
mode = state.mode,
|
|
158
148
|
scene = state.scene;
|
|
159
149
|
|
|
160
150
|
// let relatedLines = [];
|
|
161
|
-
var _useState5 =
|
|
162
|
-
_useState6 = (
|
|
151
|
+
var _useState5 = useState([]),
|
|
152
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
163
153
|
relatedLines = _useState6[0],
|
|
164
154
|
setRelatedLines = _useState6[1];
|
|
165
|
-
var _useState7 =
|
|
166
|
-
_useState8 = (
|
|
155
|
+
var _useState7 = useState(false),
|
|
156
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
167
157
|
drawStart = _useState8[0],
|
|
168
158
|
setdrawStart = _useState8[1];
|
|
169
|
-
|
|
159
|
+
useEffect(function () {
|
|
170
160
|
// move viewer point to center
|
|
171
161
|
var selectedLayer = state.scene.layers.get(state.scene.selectedLayer);
|
|
172
162
|
var vertices = selectedLayer.vertices;
|
|
@@ -188,7 +178,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
188
178
|
Viewer.current.setPointOnViewerCenter(moveX, moveY, viewer2D.get('a'));
|
|
189
179
|
}, []);
|
|
190
180
|
var layerID = scene.selectedLayer;
|
|
191
|
-
var wall_thickness =
|
|
181
|
+
var wall_thickness = LINE_THICKNESS / 2;
|
|
192
182
|
var layer = scene.getIn(['layers', layerID]);
|
|
193
183
|
var mapCursorPosition = function mapCursorPosition(_ref3) {
|
|
194
184
|
var x = _ref3.x,
|
|
@@ -205,15 +195,15 @@ function Viewer2D(_ref, _ref2) {
|
|
|
205
195
|
var prepareSnap = function prepareSnap() {
|
|
206
196
|
var layerID = scene.selectedLayer;
|
|
207
197
|
var layer = scene.layers.get(layerID);
|
|
208
|
-
allLines =
|
|
209
|
-
allLineRects =
|
|
210
|
-
allItemRect =
|
|
211
|
-
allItemSnap =
|
|
212
|
-
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);
|
|
213
203
|
allRect = allItemRect.others.concat(allLineRects);
|
|
214
|
-
allItemSnap =
|
|
215
|
-
allLineSnap =
|
|
216
|
-
allArea =
|
|
204
|
+
allItemSnap = GeometryUtils.validateSnaps(allItemSnap, allRect);
|
|
205
|
+
allLineSnap = GeometryUtils.validateSnaps(allLineSnap, allRect);
|
|
206
|
+
allArea = GeometryUtils.getAllArea(layer);
|
|
217
207
|
};
|
|
218
208
|
var updateRulerDistAttribute = function updateRulerDistAttribute(elementData, value) {
|
|
219
209
|
var newVal = value.get('length');
|
|
@@ -256,11 +246,11 @@ function Viewer2D(_ref, _ref2) {
|
|
|
256
246
|
var selectedLine = scene.getIn(['layers', elementData.layer, 'lines', elementData.id]).toJS();
|
|
257
247
|
var v_0 = scene.getIn(['layers', elementData.layer, 'vertices', selectedLine.vertices[0]]);
|
|
258
248
|
var v_1 = scene.getIn(['layers', elementData.layer, 'vertices', selectedLine.vertices[1]]);
|
|
259
|
-
var _GeometryUtils$orderV =
|
|
260
|
-
_GeometryUtils$orderV2 = (
|
|
249
|
+
var _GeometryUtils$orderV = GeometryUtils.orderVertices([v_0, v_1]),
|
|
250
|
+
_GeometryUtils$orderV2 = _slicedToArray(_GeometryUtils$orderV, 2),
|
|
261
251
|
v_a = _GeometryUtils$orderV2[0],
|
|
262
252
|
v_b = _GeometryUtils$orderV2[1];
|
|
263
|
-
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);
|
|
264
254
|
|
|
265
255
|
// Blocked function that as wall changed, opposite wall should changed together.
|
|
266
256
|
// let layer = scene.getIn(['layers', elementData.layer]);
|
|
@@ -292,7 +282,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
292
282
|
vertexTwo: v_a
|
|
293
283
|
});
|
|
294
284
|
}
|
|
295
|
-
var attributesFormData = new
|
|
285
|
+
var attributesFormData = new Map(_objectSpread({}, attributesData));
|
|
296
286
|
setRulerEdit(null);
|
|
297
287
|
projectActions.setLinesAttributes(attributesFormData, true, {
|
|
298
288
|
layerID: elementData.layer,
|
|
@@ -376,7 +366,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
376
366
|
};
|
|
377
367
|
var getEndPoint = function getEndPoint(vertices, x, y, mode) {
|
|
378
368
|
var selLineID = state.getIn(['scene', 'layers', layerID, 'selected', 'lines']).first();
|
|
379
|
-
if (
|
|
369
|
+
if (isEmpty(selLineID)) {
|
|
380
370
|
return {
|
|
381
371
|
isEndDrag: true,
|
|
382
372
|
x: x,
|
|
@@ -386,7 +376,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
386
376
|
var draggingLine = state.getIn(['scene', 'layers', layerID, 'lines', selLineID]).toJS();
|
|
387
377
|
var allLines = state.getIn(['scene', 'layers', layerID, 'lines']).toJS();
|
|
388
378
|
var dragVertexId = state.getIn(['draggingSupport', 'vertexID']);
|
|
389
|
-
dragVertexId = !
|
|
379
|
+
dragVertexId = !isEmpty(dragVertexId) ? dragVertexId : draggingLine.vertices[1];
|
|
390
380
|
var vtx, vty;
|
|
391
381
|
var stepUnit = false;
|
|
392
382
|
vtx = vertices[dragVertexId].x;
|
|
@@ -397,7 +387,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
397
387
|
stepUnit = true;
|
|
398
388
|
}
|
|
399
389
|
var endDrag = [];
|
|
400
|
-
if (!
|
|
390
|
+
if (!isEmpty(relatedLines) && mode !== 'DRAGGING_LINE') {
|
|
401
391
|
vertices[dragVertexId].x = x;
|
|
402
392
|
vertices[dragVertexId].y = y;
|
|
403
393
|
}
|
|
@@ -405,17 +395,17 @@ function Viewer2D(_ref, _ref2) {
|
|
|
405
395
|
if (draggingLine.vertices[0] !== draggingLine.vertices[1]) {
|
|
406
396
|
for (var i = 0; i < relatedLines.length; i++) {
|
|
407
397
|
var line = relatedLines[i];
|
|
408
|
-
lineAngle =
|
|
398
|
+
lineAngle = GeometryUtils.angleBetweenTwoLines(line, draggingLine, vertices);
|
|
409
399
|
absAngle = Math.abs(lineAngle);
|
|
410
400
|
var tmpRelated = [];
|
|
411
|
-
|
|
401
|
+
GeometryUtils.getRelatedLines(tmpRelated, line, vertices, allLines, draggingLine.id);
|
|
412
402
|
for (var j = 0; j < tmpRelated.length; j++) {
|
|
413
|
-
var tmpAngle = Math.abs(
|
|
414
|
-
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) {
|
|
415
405
|
endDrag.push(false);
|
|
416
406
|
} else endDrag.push(true);
|
|
417
407
|
}
|
|
418
|
-
if (absAngle <
|
|
408
|
+
if (absAngle < MIN_ANGLE_DISALLOW_DRAW_WALL || absAngle > 360 - MIN_ANGLE_DISALLOW_DRAW_WALL) {
|
|
419
409
|
endDrag.push(false);
|
|
420
410
|
} else endDrag.push(true);
|
|
421
411
|
}
|
|
@@ -426,7 +416,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
426
416
|
vtx = x;
|
|
427
417
|
vty = y;
|
|
428
418
|
} else {
|
|
429
|
-
var rest =
|
|
419
|
+
var rest = MIN_ANGLE_DISALLOW_DRAW_WALL - absAngle;
|
|
430
420
|
// the origin point of rotation(snapping)
|
|
431
421
|
var originVerId = draggingLine.vertices.findIndex(function (vertice) {
|
|
432
422
|
return vertice !== dragVertexId;
|
|
@@ -438,7 +428,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
438
428
|
// determine the direction of rotation.
|
|
439
429
|
rest = lineAngle > 0 ? -rest : rest;
|
|
440
430
|
// rotate the current point to last point around the first point of drawing line.
|
|
441
|
-
var res =
|
|
431
|
+
var res = GeometryUtils.rotatePointAroundPoint(x, y, ox, oy, rest);
|
|
442
432
|
vtx = res.x;
|
|
443
433
|
vty = res.y;
|
|
444
434
|
}
|
|
@@ -447,8 +437,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
447
437
|
// angle snapping as a value of UNIT_ANGLE
|
|
448
438
|
if (!endDrag.some(function (flag) {
|
|
449
439
|
return flag === false;
|
|
450
|
-
}) && !
|
|
451
|
-
var _result =
|
|
440
|
+
}) && !isEmpty(absAngle) && absAngle % UNIT_ANGLE !== 0 && stepUnit) {
|
|
441
|
+
var _result = GeometryUtils.snapAngleByUnit(lineAngle, vertices, draggingLine, vtx, vty, dragVertexId);
|
|
452
442
|
vtx = _result.x;
|
|
453
443
|
vty = _result.y;
|
|
454
444
|
}
|
|
@@ -464,7 +454,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
464
454
|
if (!(item !== null && item !== void 0 && (_item$properties = item.properties) !== null && _item$properties !== void 0 && _item$properties.getIn)) return 0;
|
|
465
455
|
var length = item.properties.getIn([property, '_length']);
|
|
466
456
|
var unit = item.properties.getIn([property, '_unit']);
|
|
467
|
-
return length && unit ?
|
|
457
|
+
return length && unit ? convert(length).from(unit).to('cm') : 0;
|
|
468
458
|
};
|
|
469
459
|
var point = function point(x, y) {
|
|
470
460
|
return {
|
|
@@ -479,32 +469,32 @@ function Viewer2D(_ref, _ref2) {
|
|
|
479
469
|
var pointArray = [];
|
|
480
470
|
curItemInfo.rectCenterPoint.forEach(function (centerpoint) {
|
|
481
471
|
if (!Array.isArray(centerpoint) || centerpoint.length < 2) return;
|
|
482
|
-
var _centerpoint = (
|
|
472
|
+
var _centerpoint = _slicedToArray(centerpoint, 2),
|
|
483
473
|
pt = _centerpoint[0],
|
|
484
474
|
angle = _centerpoint[1];
|
|
485
475
|
if (!pt) return;
|
|
486
476
|
|
|
487
477
|
// line through centerpoint and reference center
|
|
488
|
-
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);
|
|
489
479
|
if (!rectLine) return;
|
|
490
480
|
var minDist;
|
|
491
481
|
allRect.forEach(function (linerect) {
|
|
492
482
|
if (!(linerect !== null && linerect !== void 0 && linerect.rect) || linerect.rect.length < 4) return;
|
|
493
|
-
var p0 =
|
|
494
|
-
var p1 =
|
|
483
|
+
var p0 = GeometryUtils.clone_point(linerect.rect[2]);
|
|
484
|
+
var p1 = GeometryUtils.clone_point(linerect.rect[3]);
|
|
495
485
|
if (!p0 || !p1 || p0.x === p1.x && p0.y === p1.y) return;
|
|
496
|
-
var lineFn =
|
|
486
|
+
var lineFn = GeometryUtils.linePassingThroughTwoPoints(p0.x, p0.y, p1.x, p1.y);
|
|
497
487
|
if (!lineFn) return;
|
|
498
|
-
var ip =
|
|
488
|
+
var ip = GeometryUtils.twoLinesIntersection(lineFn.a, lineFn.b, lineFn.c, rectLine.a, rectLine.b, rectLine.c);
|
|
499
489
|
if (!ip) return;
|
|
500
490
|
|
|
501
491
|
// intersection must lie within line segment
|
|
502
|
-
var segLen =
|
|
503
|
-
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;
|
|
504
494
|
|
|
505
495
|
// ensure intersection is farther than pt→center
|
|
506
|
-
var distToCenter =
|
|
507
|
-
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);
|
|
508
498
|
if (distToCenter <= baseDist) return;
|
|
509
499
|
var candidate = baseDist;
|
|
510
500
|
minDist = minDist !== undefined ? Math.min(minDist, candidate) : candidate;
|
|
@@ -561,12 +551,12 @@ function Viewer2D(_ref, _ref2) {
|
|
|
561
551
|
};
|
|
562
552
|
|
|
563
553
|
// collect geometry
|
|
564
|
-
var _allLines =
|
|
565
|
-
var _allLineRects =
|
|
566
|
-
var _allItemRect =
|
|
554
|
+
var _allLines = GeometryUtils.getAllLines(layer) || [];
|
|
555
|
+
var _allLineRects = GeometryUtils.buildRectFromLines(layer, _allLines) || [];
|
|
556
|
+
var _allItemRect = GeometryUtils.getAllItems(scene, catalog, _allLineRects) || {
|
|
567
557
|
others: []
|
|
568
558
|
};
|
|
569
|
-
var _allRect = [].concat((
|
|
559
|
+
var _allRect = [].concat(_toConsumableArray(_allItemRect.others || []), _toConsumableArray(_allLineRects));
|
|
570
560
|
|
|
571
561
|
// current item
|
|
572
562
|
var curItemInfo = getCalcRectFromItem(val);
|
|
@@ -643,7 +633,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
643
633
|
endPoint.y = y;
|
|
644
634
|
} else {
|
|
645
635
|
prepareSnap();
|
|
646
|
-
var _GeometryUtils$calcSn =
|
|
636
|
+
var _GeometryUtils$calcSn = GeometryUtils.calcSnap(allItemRect, allItemSnap, allLineRects, allLineSnap, allRect, x, y, allArea),
|
|
647
637
|
nx = _GeometryUtils$calcSn.nx,
|
|
648
638
|
ny = _GeometryUtils$calcSn.ny,
|
|
649
639
|
rot = _GeometryUtils$calcSn.rot,
|
|
@@ -658,10 +648,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
658
648
|
layoutpos: allItemRect.cur && allItemRect.cur.layoutpos,
|
|
659
649
|
is_corner: allItemRect.cur && allItemRect.cur.is_corner
|
|
660
650
|
};
|
|
661
|
-
var _GeometryUtils$getAll =
|
|
651
|
+
var _GeometryUtils$getAll = GeometryUtils.getAllHoleRect(scene, _val),
|
|
662
652
|
_isSect = _GeometryUtils$getAll.isSect,
|
|
663
653
|
_snap = _GeometryUtils$getAll.snap;
|
|
664
|
-
if (!
|
|
654
|
+
if (!isEmpty(_snap) && _isSect) {
|
|
665
655
|
if (_snap.length == 1) _val.pos = {
|
|
666
656
|
x: _snap[0].x,
|
|
667
657
|
y: _snap[0].y
|
|
@@ -674,7 +664,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
674
664
|
y: _snap[1].y
|
|
675
665
|
};
|
|
676
666
|
}
|
|
677
|
-
var interSect =
|
|
667
|
+
var interSect = GeometryUtils.validInterSect(allItemRect.others, _val);
|
|
678
668
|
if (interSect) {
|
|
679
669
|
nx = _val.pos.x;
|
|
680
670
|
ny = _val.pos.y;
|
|
@@ -684,7 +674,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
684
674
|
x: nx,
|
|
685
675
|
y: ny
|
|
686
676
|
};
|
|
687
|
-
var _isrectSect =
|
|
677
|
+
var _isrectSect = GeometryUtils.validInterSect(allItemRect.others, _val);
|
|
688
678
|
if (_isrectSect && _isSect) {
|
|
689
679
|
itemsActions.updateDraggingItemChanged(nx, ny, layerID, current_sel_obj_id);
|
|
690
680
|
itemsActions.updateRotatingItemChanged(rot, layerID, current_sel_obj_id);
|
|
@@ -719,7 +709,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
719
709
|
case constants.MODE_DRAGGING_ITEM:
|
|
720
710
|
calcDistanceArray();
|
|
721
711
|
prepareSnap();
|
|
722
|
-
var _GeometryUtils$calcSn2 =
|
|
712
|
+
var _GeometryUtils$calcSn2 = GeometryUtils.calcSnap(allItemRect, allItemSnap, allLineRects, allLineSnap, allRect, x, y, allArea),
|
|
723
713
|
nx = _GeometryUtils$calcSn2.nx,
|
|
724
714
|
ny = _GeometryUtils$calcSn2.ny,
|
|
725
715
|
rot = _GeometryUtils$calcSn2.rot,
|
|
@@ -734,10 +724,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
734
724
|
layoutpos: allItemRect.cur && allItemRect.cur.layoutpos,
|
|
735
725
|
is_corner: allItemRect.cur && allItemRect.cur.is_corner
|
|
736
726
|
};
|
|
737
|
-
var _GeometryUtils$getAll2 =
|
|
727
|
+
var _GeometryUtils$getAll2 = GeometryUtils.getAllHoleRect(scene, val),
|
|
738
728
|
isSect = _GeometryUtils$getAll2.isSect,
|
|
739
729
|
snap = _GeometryUtils$getAll2.snap;
|
|
740
|
-
if (!
|
|
730
|
+
if (!isEmpty(snap) && isSect) {
|
|
741
731
|
if (snap.length == 1) val.pos = {
|
|
742
732
|
x: snap[0].x,
|
|
743
733
|
y: snap[0].y
|
|
@@ -750,7 +740,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
750
740
|
y: snap[1].y
|
|
751
741
|
};
|
|
752
742
|
}
|
|
753
|
-
var _interSect =
|
|
743
|
+
var _interSect = GeometryUtils.validInterSect(allItemRect.others, val);
|
|
754
744
|
if (_interSect) {
|
|
755
745
|
nx = val.pos.x;
|
|
756
746
|
ny = val.pos.y;
|
|
@@ -760,7 +750,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
760
750
|
x: nx,
|
|
761
751
|
y: ny
|
|
762
752
|
};
|
|
763
|
-
var isrectSect =
|
|
753
|
+
var isrectSect = GeometryUtils.validInterSect(allItemRect.others, val);
|
|
764
754
|
if (isrectSect && isSect) {
|
|
765
755
|
itemsActions.updateDraggingItemChanged(nx, ny, layerID, current_sel_obj_id);
|
|
766
756
|
itemsActions.updateRotatingItemChanged(rot, layerID, current_sel_obj_id);
|
|
@@ -880,7 +870,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
880
870
|
break;
|
|
881
871
|
} else if (elementData.part === 'elevation') {
|
|
882
872
|
// handle action when click elevation about selected line
|
|
883
|
-
var _mode =
|
|
873
|
+
var _mode = MODE_ELEVATION_VIEW;
|
|
884
874
|
projectActions.setMode(_mode);
|
|
885
875
|
break;
|
|
886
876
|
} else {
|
|
@@ -915,9 +905,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
915
905
|
break;
|
|
916
906
|
}
|
|
917
907
|
case 'rulerDist':
|
|
918
|
-
var _length1 =
|
|
919
|
-
var distanceText1 = "".concat(
|
|
920
|
-
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", {
|
|
921
911
|
id: "ruler_numberInput",
|
|
922
912
|
style: {
|
|
923
913
|
position: 'absolute',
|
|
@@ -925,7 +915,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
925
915
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
926
916
|
zIndex: 1000
|
|
927
917
|
}
|
|
928
|
-
}, /*#__PURE__*/
|
|
918
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
929
919
|
style: {
|
|
930
920
|
width: 150,
|
|
931
921
|
height: 50,
|
|
@@ -937,8 +927,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
937
927
|
},
|
|
938
928
|
value: distanceText1,
|
|
939
929
|
onChange: function onChange(event) {
|
|
940
|
-
var value = new
|
|
941
|
-
length:
|
|
930
|
+
var value = new Map({
|
|
931
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
942
932
|
_length: event.target.value,
|
|
943
933
|
_unit: scene.rulerUnit
|
|
944
934
|
});
|
|
@@ -950,8 +940,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
950
940
|
projectActions.unselectAll();
|
|
951
941
|
break;
|
|
952
942
|
case 'ruler':
|
|
953
|
-
var _length =
|
|
954
|
-
var numberInput = /*#__PURE__*/
|
|
943
|
+
var _length = convert(elementData.length).from(scene.unit).to(selectedLayer.unit);
|
|
944
|
+
var numberInput = /*#__PURE__*/React.createElement("div", {
|
|
955
945
|
id: "ruler_numberInput",
|
|
956
946
|
style: {
|
|
957
947
|
position: 'absolute',
|
|
@@ -959,7 +949,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
959
949
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
960
950
|
zIndex: 1000
|
|
961
951
|
}
|
|
962
|
-
}, /*#__PURE__*/
|
|
952
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
963
953
|
style: {
|
|
964
954
|
width: 150,
|
|
965
955
|
height: 50,
|
|
@@ -969,10 +959,10 @@ function Viewer2D(_ref, _ref2) {
|
|
|
969
959
|
lineHeight: '22px',
|
|
970
960
|
fontWeight: 600
|
|
971
961
|
},
|
|
972
|
-
value:
|
|
962
|
+
value: formatNumber(_length, DECIMAL_PLACES_2),
|
|
973
963
|
onChange: function onChange(event) {
|
|
974
|
-
var value = new
|
|
975
|
-
length:
|
|
964
|
+
var value = new Map({
|
|
965
|
+
length: convert(event.target.value).from(selectedLayer.unit).to(scene.unit),
|
|
976
966
|
_length: event.target.value,
|
|
977
967
|
_unit: selectedLayer.unit
|
|
978
968
|
});
|
|
@@ -984,9 +974,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
984
974
|
projectActions.unselectAll();
|
|
985
975
|
break;
|
|
986
976
|
case 'twoHoleRuler':
|
|
987
|
-
var _lengthTwoHoleRuler =
|
|
988
|
-
var distanceTextTwoHoleRuler = "".concat(
|
|
989
|
-
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", {
|
|
990
980
|
id: "ruler_numberInput",
|
|
991
981
|
style: {
|
|
992
982
|
position: 'absolute',
|
|
@@ -994,7 +984,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
994
984
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
995
985
|
zIndex: 1000
|
|
996
986
|
}
|
|
997
|
-
}, /*#__PURE__*/
|
|
987
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
998
988
|
style: {
|
|
999
989
|
width: 150,
|
|
1000
990
|
height: 50,
|
|
@@ -1006,8 +996,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1006
996
|
},
|
|
1007
997
|
value: distanceTextTwoHoleRuler,
|
|
1008
998
|
onChange: function onChange(event) {
|
|
1009
|
-
var value = new
|
|
1010
|
-
length:
|
|
999
|
+
var value = new Map({
|
|
1000
|
+
length: convert(event.target.value / 2).from(scene.rulerUnit).to(scene.unit),
|
|
1011
1001
|
_length: event.target.value / 2,
|
|
1012
1002
|
_unit: scene.rulerUnit
|
|
1013
1003
|
});
|
|
@@ -1019,9 +1009,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1019
1009
|
projectActions.unselectAll();
|
|
1020
1010
|
break;
|
|
1021
1011
|
case 'leftHoleRuler':
|
|
1022
|
-
var _lengthLeftHoleRuler =
|
|
1012
|
+
var _lengthLeftHoleRuler = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
1023
1013
|
var distanceTextLeftHoleRuler = "".concat(_lengthLeftHoleRuler.toFixed(2));
|
|
1024
|
-
var numberInputLeftHoleRuler = /*#__PURE__*/
|
|
1014
|
+
var numberInputLeftHoleRuler = /*#__PURE__*/React.createElement("div", {
|
|
1025
1015
|
id: "ruler_numberInput",
|
|
1026
1016
|
style: {
|
|
1027
1017
|
position: 'absolute',
|
|
@@ -1029,7 +1019,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1029
1019
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1030
1020
|
zIndex: 1000
|
|
1031
1021
|
}
|
|
1032
|
-
}, /*#__PURE__*/
|
|
1022
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1033
1023
|
style: {
|
|
1034
1024
|
width: 150,
|
|
1035
1025
|
height: 50,
|
|
@@ -1041,8 +1031,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1041
1031
|
},
|
|
1042
1032
|
value: distanceTextLeftHoleRuler,
|
|
1043
1033
|
onChange: function onChange(event) {
|
|
1044
|
-
var value = new
|
|
1045
|
-
length:
|
|
1034
|
+
var value = new Map({
|
|
1035
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1046
1036
|
_length: event.target.value,
|
|
1047
1037
|
_unit: scene.rulerUnit
|
|
1048
1038
|
});
|
|
@@ -1054,9 +1044,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1054
1044
|
projectActions.unselectAll();
|
|
1055
1045
|
break;
|
|
1056
1046
|
case 'rulerHole':
|
|
1057
|
-
var _lengthRulerHole =
|
|
1058
|
-
var distanceTextRulerHole = "".concat(
|
|
1059
|
-
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", {
|
|
1060
1050
|
id: "ruler_numberInput",
|
|
1061
1051
|
style: {
|
|
1062
1052
|
position: 'absolute',
|
|
@@ -1064,7 +1054,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1064
1054
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1065
1055
|
zIndex: 1000
|
|
1066
1056
|
}
|
|
1067
|
-
}, /*#__PURE__*/
|
|
1057
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1068
1058
|
style: {
|
|
1069
1059
|
width: 150,
|
|
1070
1060
|
height: 50,
|
|
@@ -1076,8 +1066,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1076
1066
|
},
|
|
1077
1067
|
value: distanceTextRulerHole,
|
|
1078
1068
|
onChange: function onChange(event) {
|
|
1079
|
-
var value = new
|
|
1080
|
-
length:
|
|
1069
|
+
var value = new Map({
|
|
1070
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1081
1071
|
_length: event.target.value,
|
|
1082
1072
|
_unit: scene.rulerUnit
|
|
1083
1073
|
});
|
|
@@ -1089,9 +1079,9 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1089
1079
|
projectActions.unselectAll();
|
|
1090
1080
|
break;
|
|
1091
1081
|
case 'rightHoleRuler':
|
|
1092
|
-
var _lengthRightHoleRuler =
|
|
1082
|
+
var _lengthRightHoleRuler = convert(elementData.length).from(scene.unit).to(scene.rulerUnit);
|
|
1093
1083
|
var distanceTextRightHoleRuler = "".concat(_lengthRightHoleRuler.toFixed(2));
|
|
1094
|
-
var numberInputRightHoleRuler = /*#__PURE__*/
|
|
1084
|
+
var numberInputRightHoleRuler = /*#__PURE__*/React.createElement("div", {
|
|
1095
1085
|
id: "ruler_numberInput",
|
|
1096
1086
|
style: {
|
|
1097
1087
|
position: 'absolute',
|
|
@@ -1099,7 +1089,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1099
1089
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1100
1090
|
zIndex: 1000
|
|
1101
1091
|
}
|
|
1102
|
-
}, /*#__PURE__*/
|
|
1092
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1103
1093
|
style: {
|
|
1104
1094
|
width: 150,
|
|
1105
1095
|
height: 50,
|
|
@@ -1111,8 +1101,8 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1111
1101
|
},
|
|
1112
1102
|
value: distanceTextRightHoleRuler,
|
|
1113
1103
|
onChange: function onChange(event) {
|
|
1114
|
-
var value = new
|
|
1115
|
-
length:
|
|
1104
|
+
var value = new Map({
|
|
1105
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1116
1106
|
_length: event.target.value,
|
|
1117
1107
|
_unit: scene.rulerUnit
|
|
1118
1108
|
});
|
|
@@ -1125,7 +1115,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1125
1115
|
break;
|
|
1126
1116
|
case 'angleChange':
|
|
1127
1117
|
var _length2 = elementData.length;
|
|
1128
|
-
var numberInput2 = /*#__PURE__*/
|
|
1118
|
+
var numberInput2 = /*#__PURE__*/React.createElement("div", {
|
|
1129
1119
|
id: "ruler_numberInput",
|
|
1130
1120
|
style: {
|
|
1131
1121
|
position: 'absolute',
|
|
@@ -1133,15 +1123,15 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1133
1123
|
top: bbox.top - (50 - bbox.height) / 2,
|
|
1134
1124
|
zIndex: 1000
|
|
1135
1125
|
}
|
|
1136
|
-
}, /*#__PURE__*/
|
|
1126
|
+
}, /*#__PURE__*/React.createElement(FormNumberInput, {
|
|
1137
1127
|
style: {
|
|
1138
1128
|
width: 50,
|
|
1139
1129
|
height: 50
|
|
1140
1130
|
},
|
|
1141
1131
|
value: _length2,
|
|
1142
1132
|
onChange: function onChange(event) {
|
|
1143
|
-
var value = new
|
|
1144
|
-
length:
|
|
1133
|
+
var value = new Map({
|
|
1134
|
+
length: convert(event.target.value).from(scene.rulerUnit).to(scene.unit),
|
|
1145
1135
|
_length: event.target.value,
|
|
1146
1136
|
_unit: scene.rulerUnit
|
|
1147
1137
|
});
|
|
@@ -1195,7 +1185,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1195
1185
|
break;
|
|
1196
1186
|
case constants.MODE_DRAGGING_ITEM:
|
|
1197
1187
|
itemsActions.updateMolding();
|
|
1198
|
-
projectActions.setMode(
|
|
1188
|
+
projectActions.setMode(MODE_IDLE);
|
|
1199
1189
|
break;
|
|
1200
1190
|
case constants.MODE_DRAGGING_HOLE:
|
|
1201
1191
|
holesActions.endDraggingHole(x, y);
|
|
@@ -1240,16 +1230,16 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1240
1230
|
};
|
|
1241
1231
|
var onChangeTool = function onChangeTool(tool) {
|
|
1242
1232
|
switch (tool) {
|
|
1243
|
-
case
|
|
1233
|
+
case TOOL_NONE:
|
|
1244
1234
|
projectActions.selectToolEdit();
|
|
1245
1235
|
break;
|
|
1246
|
-
case
|
|
1236
|
+
case TOOL_PAN:
|
|
1247
1237
|
viewer2DActions.selectToolPan();
|
|
1248
1238
|
break;
|
|
1249
|
-
case
|
|
1239
|
+
case TOOL_ZOOM_IN:
|
|
1250
1240
|
viewer2DActions.selectToolZoomIn();
|
|
1251
1241
|
break;
|
|
1252
|
-
case
|
|
1242
|
+
case TOOL_ZOOM_OUT:
|
|
1253
1243
|
viewer2DActions.selectToolZoomOut();
|
|
1254
1244
|
break;
|
|
1255
1245
|
}
|
|
@@ -1277,7 +1267,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1277
1267
|
var rulerYElements = Math.ceil(sceneHeight / rulerUnitPixelSize) + 1;
|
|
1278
1268
|
console.log('---render viewer2d');
|
|
1279
1269
|
console.log(viewer2D.isEmpty());
|
|
1280
|
-
return /*#__PURE__*/
|
|
1270
|
+
return /*#__PURE__*/React.createElement("div", null, rulerEdit, /*#__PURE__*/React.createElement("div", {
|
|
1281
1271
|
style: {
|
|
1282
1272
|
margin: 0,
|
|
1283
1273
|
padding: 0,
|
|
@@ -1288,13 +1278,13 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1288
1278
|
gridTemplateRows: "".concat(rulerSize, "px ").concat(height - rulerSize, "px"),
|
|
1289
1279
|
position: 'relative'
|
|
1290
1280
|
}
|
|
1291
|
-
}, /*#__PURE__*/
|
|
1281
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
1292
1282
|
style: {
|
|
1293
1283
|
gridColumn: 1,
|
|
1294
1284
|
gridRow: 1,
|
|
1295
1285
|
backgroundColor: rulerBgColor
|
|
1296
1286
|
}
|
|
1297
|
-
}), /*#__PURE__*/
|
|
1287
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
1298
1288
|
style: {
|
|
1299
1289
|
gridRow: 1,
|
|
1300
1290
|
gridColumn: 2,
|
|
@@ -1302,7 +1292,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1302
1292
|
overflow: 'hidden'
|
|
1303
1293
|
},
|
|
1304
1294
|
id: "rulerX"
|
|
1305
|
-
}, sceneWidth ? /*#__PURE__*/
|
|
1295
|
+
}, sceneWidth ? /*#__PURE__*/React.createElement(RulerX, {
|
|
1306
1296
|
unitPixelSize: rulerUnitPixelSize,
|
|
1307
1297
|
zoom: sceneZoom,
|
|
1308
1298
|
mouseX: state.mouse.get('x'),
|
|
@@ -1313,7 +1303,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1313
1303
|
markerColor: rulerMkColor,
|
|
1314
1304
|
positiveUnitsNumber: rulerXElements,
|
|
1315
1305
|
negativeUnitsNumber: 0
|
|
1316
|
-
}) : null), /*#__PURE__*/
|
|
1306
|
+
}) : null), /*#__PURE__*/React.createElement("div", {
|
|
1317
1307
|
style: {
|
|
1318
1308
|
gridColumn: 1,
|
|
1319
1309
|
gridRow: 2,
|
|
@@ -1321,7 +1311,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1321
1311
|
overflow: 'hidden'
|
|
1322
1312
|
},
|
|
1323
1313
|
id: "rulerY"
|
|
1324
|
-
}, sceneHeight ? /*#__PURE__*/
|
|
1314
|
+
}, sceneHeight ? /*#__PURE__*/React.createElement(RulerY, {
|
|
1325
1315
|
unitPixelSize: rulerUnitPixelSize,
|
|
1326
1316
|
zoom: sceneZoom,
|
|
1327
1317
|
mouseY: state.mouse.get('y'),
|
|
@@ -1332,7 +1322,7 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1332
1322
|
markerColor: rulerMkColor,
|
|
1333
1323
|
positiveUnitsNumber: rulerYElements,
|
|
1334
1324
|
negativeUnitsNumber: 0
|
|
1335
|
-
}) : null), /*#__PURE__*/
|
|
1325
|
+
}) : null), /*#__PURE__*/React.createElement(ReactSVGPanZoom, {
|
|
1336
1326
|
style: {
|
|
1337
1327
|
gridColumn: 2,
|
|
1338
1328
|
gridRow: 2
|
|
@@ -1356,30 +1346,30 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1356
1346
|
detectPinchGesture: false,
|
|
1357
1347
|
disableDoubleClickZoomWithToolAuto: true,
|
|
1358
1348
|
ref: Viewer
|
|
1359
|
-
}, /*#__PURE__*/
|
|
1349
|
+
}, /*#__PURE__*/React.createElement("svg", {
|
|
1360
1350
|
width: scene.width,
|
|
1361
1351
|
height: scene.height
|
|
1362
|
-
}, /*#__PURE__*/
|
|
1352
|
+
}, /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("pattern", {
|
|
1363
1353
|
id: "diagonalFill",
|
|
1364
1354
|
patternUnits: "userSpaceOnUse",
|
|
1365
1355
|
width: "4",
|
|
1366
1356
|
height: "4",
|
|
1367
1357
|
fill: "#FFF"
|
|
1368
|
-
}, /*#__PURE__*/
|
|
1358
|
+
}, /*#__PURE__*/React.createElement("rect", {
|
|
1369
1359
|
x: "0",
|
|
1370
1360
|
y: "0",
|
|
1371
1361
|
width: "4",
|
|
1372
1362
|
height: "4",
|
|
1373
1363
|
fill: "#FFF"
|
|
1374
|
-
}), /*#__PURE__*/
|
|
1364
|
+
}), /*#__PURE__*/React.createElement("path", {
|
|
1375
1365
|
d: "M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2",
|
|
1376
1366
|
style: {
|
|
1377
1367
|
stroke: '#8E9BA2',
|
|
1378
1368
|
strokeWidth: 1
|
|
1379
1369
|
}
|
|
1380
|
-
}))), /*#__PURE__*/
|
|
1370
|
+
}))), /*#__PURE__*/React.createElement("g", {
|
|
1381
1371
|
style: Object.assign(mode2Cursor(mode), mode2PointerEvents(mode))
|
|
1382
|
-
}, /*#__PURE__*/
|
|
1372
|
+
}, /*#__PURE__*/React.createElement(State, {
|
|
1383
1373
|
state: state,
|
|
1384
1374
|
catalog: catalog,
|
|
1385
1375
|
viewer2DActions: viewer2DActions,
|
|
@@ -1387,17 +1377,17 @@ function Viewer2D(_ref, _ref2) {
|
|
|
1387
1377
|
}))))));
|
|
1388
1378
|
}
|
|
1389
1379
|
Viewer2D.propTypes = {
|
|
1390
|
-
state:
|
|
1391
|
-
width:
|
|
1392
|
-
height:
|
|
1380
|
+
state: PropTypes.object.isRequired,
|
|
1381
|
+
width: PropTypes.number.isRequired,
|
|
1382
|
+
height: PropTypes.number.isRequired
|
|
1393
1383
|
};
|
|
1394
1384
|
Viewer2D.contextTypes = {
|
|
1395
|
-
viewer2DActions:
|
|
1396
|
-
linesActions:
|
|
1397
|
-
holesActions:
|
|
1398
|
-
verticesActions:
|
|
1399
|
-
itemsActions:
|
|
1400
|
-
areaActions:
|
|
1401
|
-
projectActions:
|
|
1402
|
-
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
|
|
1403
1393
|
};
|