@buerli.io/react-cad 0.11.0 → 0.12.0
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/build/components/graphics/CompositeCurveObj.d.ts +11 -0
- package/build/index.cjs.js +1446 -923
- package/build/index.d.ts +3 -1
- package/build/index.js +1439 -918
- package/build/plugins/CompositeCurve/Root.d.ts +6 -0
- package/build/plugins/CompositeCurve/View.d.ts +6 -0
- package/build/plugins/CompositeCurve/index.d.ts +5 -0
- package/build/plugins/Extrusion/View.d.ts +6 -0
- package/build/plugins/Extrusion/index.d.ts +7 -1
- package/build/plugins/Sketch/View/graphics/IconGroups.d.ts +7 -0
- package/build/plugins/Sketch/View/graphics/Regions.d.ts +5 -0
- package/build/plugins/Sketch/View/graphics/hooks.d.ts +1 -5
- package/build/plugins/Sketch/View/handlers/HandlersConstructors.d.ts +2 -0
- package/build/plugins/Sketch/View/handlers/SSelect.d.ts +3 -0
- package/build/plugins/Sketch/description.d.ts +0 -2
- package/build/plugins/Sketch/types.d.ts +8 -7
- package/build/plugins/Sketch/utils/getEntities.d.ts +2 -0
- package/build/plugins/Sketch/utils/useSketchRegions.d.ts +2 -0
- package/build/plugins/Twist/View.d.ts +6 -0
- package/build/plugins/Twist/index.d.ts +7 -1
- package/build/utils/helpers.d.ts +2 -0
- package/build/utils/selection/filters.d.ts +1 -0
- package/package.json +6 -6
- package/build/plugins/Sketch/utils/getConstrEntities.d.ts +0 -2
package/build/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { useDrawing, CameraHelper, useBuerli, usePlugin, GlobalTransform, BuerliGeometry, usePluginExists, useFeaturePluginDef } from '@buerli.io/react';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import React__default, { useMemo, forwardRef,
|
|
3
|
+
import React__default, { useState, useMemo, forwardRef, useCallback, useEffect, useRef, memo, useContext, useReducer } from 'react';
|
|
4
4
|
import { ccUtils, CCClasses, ccAPI, ReorientedType, FlipType, BooleanOperationType, ExtrusionType, ChamferType, WorkAxisType, WorkPlaneType, WorkPointType, WorkCoordSystemType, DataType } from '@buerli.io/classcad';
|
|
5
5
|
import * as THREE from 'three';
|
|
6
6
|
import { Matrix4 } from 'three';
|
|
7
|
-
import { getDrawing, createGraphicItem, MemberType, MathUtils, api, showMessage, createInfo, getPlugin, BuerliScope, GraphicType, solidFilter, edgeFilter, loopFilter, planeFilter, EntityTypes, Measure, MeasureResultType, pointFilter, lineFilter, arcFilter, circleFilter, arcCircleFilter
|
|
7
|
+
import { getDrawing, createGraphicItem, MemberType, MathUtils, api, showMessage, createInfo, getPlugin, BuerliScope, GraphicType, solidFilter, edgeFilter, meshFilter, loopFilter, planeFilter, EntityTypes, Measure, MeasureResultType, pointFilter, lineFilter, arcFilter, circleFilter, arcCircleFilter } from '@buerli.io/core';
|
|
8
8
|
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
9
9
|
import _extends from '@babel/runtime/helpers/esm/extends';
|
|
10
10
|
import { useFrame, useThree, createPortal, extend } from '@react-three/fiber';
|
|
@@ -17,6 +17,7 @@ import { ArrowUpOutlined, CheckOutlined, QuestionCircleFilled, DownOutlined, Rig
|
|
|
17
17
|
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
18
18
|
import { findDOMNode } from 'react-dom';
|
|
19
19
|
import { Tooltip, Input as Input$1, Typography, Tag, Space, Tabs as Tabs$1, Divider as Divider$1, Button, Badge, Modal, Dropdown as Dropdown$1, Skeleton as Skeleton$1 } from 'antd';
|
|
20
|
+
import { LineGeometry } from 'three/examples/jsm/lines/LineGeometry';
|
|
20
21
|
import TabsImpl from 'antd/lib/tabs';
|
|
21
22
|
import RadioGroupImpl from 'antd/lib/radio/group';
|
|
22
23
|
import RadioButtonImpl from 'antd/lib/radio/radioButton';
|
|
@@ -38,8 +39,8 @@ import { CSS } from '@dnd-kit/utilities';
|
|
|
38
39
|
import Tooltip$1 from 'antd/lib/tooltip';
|
|
39
40
|
import * as deepmerge from 'deepmerge';
|
|
40
41
|
|
|
41
|
-
function ownKeys$
|
|
42
|
-
function _objectSpread$
|
|
42
|
+
function ownKeys$x(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
43
|
+
function _objectSpread$x(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$x(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$x(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
43
44
|
function getGraphicId(tree, refOrObjId) {
|
|
44
45
|
const res = {
|
|
45
46
|
graphicId: refOrObjId,
|
|
@@ -102,7 +103,7 @@ function useSelectedItems(drawingId, refOrObjIds) {
|
|
|
102
103
|
window.console.error('Product is not a CC_Part. Assembly is not supported now');
|
|
103
104
|
}
|
|
104
105
|
const createSelItem = React__default.useCallback(element => {
|
|
105
|
-
return createGraphicItem(prodId, _objectSpread$
|
|
106
|
+
return createGraphicItem(prodId, _objectSpread$x(_objectSpread$x({}, element), {}, {
|
|
106
107
|
productId: prodId
|
|
107
108
|
}));
|
|
108
109
|
}, [prodId]);
|
|
@@ -127,7 +128,7 @@ function useSelectedItems(drawingId, refOrObjIds) {
|
|
|
127
128
|
if (grIds && grIds.length > 0) {
|
|
128
129
|
const elem = cont.map[Number(grIds[0])];
|
|
129
130
|
if (elem) {
|
|
130
|
-
elems.push(_objectSpread$
|
|
131
|
+
elems.push(_objectSpread$x(_objectSpread$x({}, elem), {}, {
|
|
131
132
|
graphicId: contId,
|
|
132
133
|
type: cont.type
|
|
133
134
|
}));
|
|
@@ -163,8 +164,12 @@ function useSelectedItems(drawingId, refOrObjIds) {
|
|
|
163
164
|
return selectedItems;
|
|
164
165
|
}
|
|
165
166
|
|
|
166
|
-
|
|
167
|
-
|
|
167
|
+
const EMPTYARRAY = [];
|
|
168
|
+
const NOCCID = Number.MIN_SAFE_INTEGER;
|
|
169
|
+
const EMPTYSTR = '';
|
|
170
|
+
|
|
171
|
+
function ownKeys$w(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
172
|
+
function _objectSpread$w(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$w(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$w(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
168
173
|
function addMembers(drawingId, ccObjId) {
|
|
169
174
|
const drawingState = getDrawing(drawingId);
|
|
170
175
|
const objInTree = drawingState.structure.tree[ccObjId];
|
|
@@ -175,7 +180,7 @@ function addMembers(drawingId, ccObjId) {
|
|
|
175
180
|
const members = {};
|
|
176
181
|
Object.keys(curMembers).forEach(memberName => {
|
|
177
182
|
const curMember = curMembers[memberName];
|
|
178
|
-
members[memberName] = _objectSpread$
|
|
183
|
+
members[memberName] = _objectSpread$w(_objectSpread$w({}, curMember), {}, {
|
|
179
184
|
name: memberName
|
|
180
185
|
});
|
|
181
186
|
if (curMember.type === MemberType.POINT && Array.isArray(curMember.value)) {
|
|
@@ -299,6 +304,13 @@ const is2DConstraint = arg => {
|
|
|
299
304
|
const objClass = typeof arg === 'string' ? arg : arg.class;
|
|
300
305
|
return Boolean(objClass.match(/CC_2D.+Constraint/)) || ccUtils.base.isA(objClass, CCClasses.CCRigidSet);
|
|
301
306
|
};
|
|
307
|
+
const isSketchRegion = arg => {
|
|
308
|
+
if (arg === undefined) {
|
|
309
|
+
return false;
|
|
310
|
+
}
|
|
311
|
+
const objClass = typeof arg === 'string' ? arg : arg.class;
|
|
312
|
+
return ccUtils.base.isA(objClass, CCClasses.CCSketchRegion);
|
|
313
|
+
};
|
|
302
314
|
const degreesToRadians = degrees => {
|
|
303
315
|
return degrees * Math.PI / 180;
|
|
304
316
|
};
|
|
@@ -442,10 +454,37 @@ const solveQuartic = (a, b, c, d, e) => {
|
|
|
442
454
|
});
|
|
443
455
|
return res;
|
|
444
456
|
};
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
457
|
+
function getRegionCoordSys(drawingId, regionObj) {
|
|
458
|
+
let originPos = new THREE.Vector3(0, 0, 0);
|
|
459
|
+
let xAxis = new THREE.Vector3(1, 0, 0);
|
|
460
|
+
let yAxis = new THREE.Vector3(0, 1, 0);
|
|
461
|
+
if (ccUtils.base.isA(regionObj.class, CCClasses.CCCompositeCurve)) {
|
|
462
|
+
var _regionObj$members;
|
|
463
|
+
const refCSys = ((_regionObj$members = regionObj.members) == null ? void 0 : _regionObj$members.refCSys).members.map(member => member.value);
|
|
464
|
+
if (refCSys) {
|
|
465
|
+
const [origin_, xAxis_, yAxis_] = refCSys;
|
|
466
|
+
originPos = origin_ ? new THREE.Vector3(origin_.x, origin_.y, origin_.z) : originPos;
|
|
467
|
+
xAxis = xAxis_ ? new THREE.Vector3(xAxis_.x, xAxis_.y, xAxis_.z) : xAxis;
|
|
468
|
+
yAxis = yAxis_ ? new THREE.Vector3(yAxis_.x, yAxis_.y, yAxis_.z) : yAxis;
|
|
469
|
+
}
|
|
470
|
+
} else {
|
|
471
|
+
let sketchId_ = NOCCID;
|
|
472
|
+
if (ccUtils.base.isA(regionObj.class, CCClasses.CCSketchRegion)) {
|
|
473
|
+
var _regionObj$members2;
|
|
474
|
+
sketchId_ = (_regionObj$members2 = regionObj.members) == null ? void 0 : _regionObj$members2.sketch.value;
|
|
475
|
+
} else {
|
|
476
|
+
sketchId_ = regionObj.parent || 0;
|
|
477
|
+
}
|
|
478
|
+
const sketch = sketchId_ && getDrawing(drawingId).structure.tree[sketchId_];
|
|
479
|
+
if (sketch && sketch.coordinateSystem) {
|
|
480
|
+
const [origin_, xAxis_, yAxis_] = sketch.coordinateSystem;
|
|
481
|
+
originPos = origin_ ? new THREE.Vector3(origin_[0], origin_[1], origin_[2]) : originPos;
|
|
482
|
+
xAxis = xAxis_ ? new THREE.Vector3(xAxis_[0], xAxis_[1], xAxis_[2]) : xAxis;
|
|
483
|
+
yAxis = yAxis_ ? new THREE.Vector3(yAxis_[0], yAxis_[1], yAxis_[2]) : yAxis;
|
|
484
|
+
}
|
|
485
|
+
}
|
|
486
|
+
return [originPos, xAxis, yAxis];
|
|
487
|
+
}
|
|
449
488
|
|
|
450
489
|
/**
|
|
451
490
|
* Wrapper around useDrawing which allows to avoid ReferenceErrors.
|
|
@@ -1124,8 +1163,8 @@ const isAngular = dim => ccUtils.base.isA(dim.class, CCClasses.CCAngularDimensio
|
|
|
1124
1163
|
const isRadial = dim => ccUtils.base.isA(dim.class, CCClasses.CCRadialDimension) && !ccUtils.base.isA(dim.class, CCClasses.CCDiameterDimension);
|
|
1125
1164
|
const isDiameter = dim => ccUtils.base.isA(dim.class, CCClasses.CCDiameterDimension);
|
|
1126
1165
|
|
|
1127
|
-
function ownKeys$
|
|
1128
|
-
function _objectSpread$
|
|
1166
|
+
function ownKeys$v(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
1167
|
+
function _objectSpread$v(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$v(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$v(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
1129
1168
|
const isFeatureActive = drawingId => {
|
|
1130
1169
|
const activePlugin = getDrawing(drawingId).plugin.active.feature;
|
|
1131
1170
|
if (activePlugin) {
|
|
@@ -1161,7 +1200,7 @@ const appApi = (set, get) => ({
|
|
|
1161
1200
|
const curInstance = api.getState().drawing.refs[drawingId].structure.currentInstance;
|
|
1162
1201
|
res = state.assemblyTree.prodStack;
|
|
1163
1202
|
curInstance && res.push(curInstance);
|
|
1164
|
-
return _objectSpread$
|
|
1203
|
+
return _objectSpread$v(_objectSpread$v({}, state), {}, {
|
|
1165
1204
|
assemblyTree: {
|
|
1166
1205
|
prodStack: [...res]
|
|
1167
1206
|
}
|
|
@@ -1178,7 +1217,7 @@ const appApi = (set, get) => ({
|
|
|
1178
1217
|
set(state => {
|
|
1179
1218
|
const res = state.assemblyTree.prodStack;
|
|
1180
1219
|
res.pop();
|
|
1181
|
-
return _objectSpread$
|
|
1220
|
+
return _objectSpread$v(_objectSpread$v({}, state), {}, {
|
|
1182
1221
|
assemblyTree: {
|
|
1183
1222
|
prodStack: [...res]
|
|
1184
1223
|
}
|
|
@@ -1187,7 +1226,7 @@ const appApi = (set, get) => ({
|
|
|
1187
1226
|
ccAPI.assemblyBuilder.setCurrentInstance(drawingId, prevProd).catch(console.warn);
|
|
1188
1227
|
},
|
|
1189
1228
|
clearProdStack: () => {
|
|
1190
|
-
set(state => _objectSpread$
|
|
1229
|
+
set(state => _objectSpread$v(_objectSpread$v({}, state), {}, {
|
|
1191
1230
|
assemblyTree: {
|
|
1192
1231
|
prodStack: []
|
|
1193
1232
|
}
|
|
@@ -1196,7 +1235,7 @@ const appApi = (set, get) => ({
|
|
|
1196
1235
|
},
|
|
1197
1236
|
blankDiv: {
|
|
1198
1237
|
show: callback => {
|
|
1199
|
-
set(state => _objectSpread$
|
|
1238
|
+
set(state => _objectSpread$v(_objectSpread$v({}, state), {}, {
|
|
1200
1239
|
blankDiv: {
|
|
1201
1240
|
isActive: true,
|
|
1202
1241
|
onClose: callback
|
|
@@ -1204,7 +1243,7 @@ const appApi = (set, get) => ({
|
|
|
1204
1243
|
}));
|
|
1205
1244
|
},
|
|
1206
1245
|
hide: () => {
|
|
1207
|
-
set(state => _objectSpread$
|
|
1246
|
+
set(state => _objectSpread$v(_objectSpread$v({}, state), {}, {
|
|
1208
1247
|
blankDiv: {
|
|
1209
1248
|
isActive: false,
|
|
1210
1249
|
onClose: undefined
|
|
@@ -2060,7 +2099,7 @@ class ErrorBoundary extends React__default.Component {
|
|
|
2060
2099
|
}
|
|
2061
2100
|
}
|
|
2062
2101
|
|
|
2063
|
-
function ViewImpl$
|
|
2102
|
+
function ViewImpl$j({
|
|
2064
2103
|
drawingId,
|
|
2065
2104
|
pluginId
|
|
2066
2105
|
}) {
|
|
@@ -2081,17 +2120,17 @@ function ViewImpl$g({
|
|
|
2081
2120
|
objectId: dimSetId
|
|
2082
2121
|
}) : null;
|
|
2083
2122
|
}
|
|
2084
|
-
function View$
|
|
2123
|
+
function View$j({
|
|
2085
2124
|
drawingId,
|
|
2086
2125
|
pluginId
|
|
2087
2126
|
}) {
|
|
2088
|
-
return /*#__PURE__*/React__default.createElement(ErrorBoundary, null, /*#__PURE__*/React__default.createElement(ViewImpl$
|
|
2127
|
+
return /*#__PURE__*/React__default.createElement(ErrorBoundary, null, /*#__PURE__*/React__default.createElement(ViewImpl$j, {
|
|
2089
2128
|
drawingId: drawingId,
|
|
2090
2129
|
pluginId: pluginId
|
|
2091
2130
|
}));
|
|
2092
2131
|
}
|
|
2093
2132
|
|
|
2094
|
-
function RootImpl$
|
|
2133
|
+
function RootImpl$D({
|
|
2095
2134
|
drawingId,
|
|
2096
2135
|
pluginId
|
|
2097
2136
|
}) {
|
|
@@ -2131,17 +2170,17 @@ function RootImpl$C({
|
|
|
2131
2170
|
})
|
|
2132
2171
|
})));
|
|
2133
2172
|
}
|
|
2134
|
-
const Root$
|
|
2173
|
+
const Root$D = ({
|
|
2135
2174
|
drawingId,
|
|
2136
2175
|
pluginId
|
|
2137
2176
|
}) => {
|
|
2138
|
-
return /*#__PURE__*/React__default.createElement(ErrorBoundary, null, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
2177
|
+
return /*#__PURE__*/React__default.createElement(ErrorBoundary, null, /*#__PURE__*/React__default.createElement(RootImpl$D, {
|
|
2139
2178
|
drawingId: drawingId,
|
|
2140
2179
|
pluginId: pluginId
|
|
2141
2180
|
}));
|
|
2142
2181
|
};
|
|
2143
2182
|
|
|
2144
|
-
const description$
|
|
2183
|
+
const description$D = {
|
|
2145
2184
|
name: 'Dimensions',
|
|
2146
2185
|
version: '1.0.0',
|
|
2147
2186
|
author: 'Ledas',
|
|
@@ -2152,11 +2191,11 @@ const description$C = {
|
|
|
2152
2191
|
}
|
|
2153
2192
|
};
|
|
2154
2193
|
|
|
2155
|
-
var index$
|
|
2194
|
+
var index$D = /*#__PURE__*/Object.freeze({
|
|
2156
2195
|
__proto__: null,
|
|
2157
|
-
Root: Root$
|
|
2158
|
-
View: View$
|
|
2159
|
-
description: description$
|
|
2196
|
+
Root: Root$D,
|
|
2197
|
+
View: View$j,
|
|
2198
|
+
description: description$D
|
|
2160
2199
|
});
|
|
2161
2200
|
|
|
2162
2201
|
function useIdParam(drawingId, objId, memberName) {
|
|
@@ -2246,8 +2285,8 @@ function useRefsParam(drawingId, objId, memberName) {
|
|
|
2246
2285
|
});
|
|
2247
2286
|
}
|
|
2248
2287
|
|
|
2249
|
-
function ownKeys$
|
|
2250
|
-
function _objectSpread$
|
|
2288
|
+
function ownKeys$u(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2289
|
+
function _objectSpread$u(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$u(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$u(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
2251
2290
|
/**
|
|
2252
2291
|
* Implies the following data structure:
|
|
2253
2292
|
* data: {
|
|
@@ -2472,7 +2511,7 @@ function useTreeObjInteraction(drawingId, objId) {
|
|
|
2472
2511
|
const isGSelected = useIsGSelected(drawingId, objId);
|
|
2473
2512
|
const isSHovered = useIsSHovered(drawingId, objId);
|
|
2474
2513
|
const isSSelected = useIsSSelected(drawingId, objId);
|
|
2475
|
-
const handlers = React__default.useMemo(() => _objectSpread$
|
|
2514
|
+
const handlers = React__default.useMemo(() => _objectSpread$u(_objectSpread$u({}, hHandlers), sHandlers), [hHandlers, sHandlers]);
|
|
2476
2515
|
return React__default.useMemo(() => {
|
|
2477
2516
|
// If the handlers are switched off immediately after the selection (workplane selection for the sketcher), then hovered would keep being equal to true, making the mesh color wrong.
|
|
2478
2517
|
// Thus, we don't want hovered and selected to be true if the object is not selectable.
|
|
@@ -2945,8 +2984,8 @@ const SelectionRestorer = ({
|
|
|
2945
2984
|
return null;
|
|
2946
2985
|
};
|
|
2947
2986
|
|
|
2948
|
-
function ownKeys$
|
|
2949
|
-
function _objectSpread$
|
|
2987
|
+
function ownKeys$t(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2988
|
+
function _objectSpread$t(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$t(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$t(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
2950
2989
|
|
|
2951
2990
|
/**
|
|
2952
2991
|
* Implies the following data structure:
|
|
@@ -3040,7 +3079,7 @@ function useMateSelection(drawingId, matePath, csysId) {
|
|
|
3040
3079
|
}));
|
|
3041
3080
|
const handlers = React__default.useMemo(() => {
|
|
3042
3081
|
if (isSelectable) {
|
|
3043
|
-
return _objectSpread$
|
|
3082
|
+
return _objectSpread$t(_objectSpread$t({}, hHandlers), sHandlers);
|
|
3044
3083
|
}
|
|
3045
3084
|
return {};
|
|
3046
3085
|
}, [isSelectable, hHandlers, sHandlers]);
|
|
@@ -3929,11 +3968,11 @@ const FtPluginValidator = ({
|
|
|
3929
3968
|
}, children);
|
|
3930
3969
|
};
|
|
3931
3970
|
|
|
3932
|
-
var Members$
|
|
3971
|
+
var Members$w;
|
|
3933
3972
|
(function (Members) {
|
|
3934
3973
|
Members["Body1"] = "Body1";
|
|
3935
3974
|
Members["Body2"] = "Body2";
|
|
3936
|
-
})(Members$
|
|
3975
|
+
})(Members$w || (Members$w = {}));
|
|
3937
3976
|
const typesCaptions$6 = {
|
|
3938
3977
|
[BooleanOperationType.INTERSECTION]: 'Intersection',
|
|
3939
3978
|
[BooleanOperationType.SUBTRACTION]: 'Subtraction',
|
|
@@ -3956,7 +3995,7 @@ function useBoolTypeStore(drawingId, objId) {
|
|
|
3956
3995
|
isChanged
|
|
3957
3996
|
});
|
|
3958
3997
|
}
|
|
3959
|
-
function RootImpl$
|
|
3998
|
+
function RootImpl$C({
|
|
3960
3999
|
drawingId,
|
|
3961
4000
|
pluginId
|
|
3962
4001
|
}) {
|
|
@@ -3964,8 +4003,8 @@ function RootImpl$B({
|
|
|
3964
4003
|
objectId
|
|
3965
4004
|
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
3966
4005
|
const type = useBoolTypeStore(drawingId, objectId);
|
|
3967
|
-
const body1 = useIdParam(drawingId, objectId, Members$
|
|
3968
|
-
const body2 = useRefsParam(drawingId, objectId, Members$
|
|
4006
|
+
const body1 = useIdParam(drawingId, objectId, Members$w.Body1);
|
|
4007
|
+
const body2 = useRefsParam(drawingId, objectId, Members$w.Body2);
|
|
3969
4008
|
const update = React__default.useCallback(() => {
|
|
3970
4009
|
return ccAPI.feature.updateBooleanOperation(drawingId, objectId, type.serverValue, [body1.serverValue, ...body2.serverValue]);
|
|
3971
4010
|
}, [drawingId, objectId, type, body1, body2]);
|
|
@@ -3999,20 +4038,20 @@ function RootImpl$B({
|
|
|
3999
4038
|
selectorsOrder: selOrder
|
|
4000
4039
|
}));
|
|
4001
4040
|
}
|
|
4002
|
-
const Root$
|
|
4041
|
+
const Root$C = ({
|
|
4003
4042
|
drawingId,
|
|
4004
4043
|
pluginId
|
|
4005
4044
|
}) => {
|
|
4006
4045
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
4007
4046
|
drawingId: drawingId,
|
|
4008
4047
|
pluginId: pluginId
|
|
4009
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
4048
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$C, {
|
|
4010
4049
|
drawingId: drawingId,
|
|
4011
4050
|
pluginId: pluginId
|
|
4012
4051
|
}));
|
|
4013
4052
|
};
|
|
4014
4053
|
|
|
4015
|
-
const description$
|
|
4054
|
+
const description$C = {
|
|
4016
4055
|
name: 'Boolean',
|
|
4017
4056
|
version: '1.0.0',
|
|
4018
4057
|
author: 'Ledas',
|
|
@@ -4029,14 +4068,14 @@ const description$B = {
|
|
|
4029
4068
|
}
|
|
4030
4069
|
};
|
|
4031
4070
|
|
|
4032
|
-
var index$
|
|
4071
|
+
var index$C = /*#__PURE__*/Object.freeze({
|
|
4033
4072
|
__proto__: null,
|
|
4034
|
-
Root: Root$
|
|
4035
|
-
description: description$
|
|
4073
|
+
Root: Root$C,
|
|
4074
|
+
description: description$C
|
|
4036
4075
|
});
|
|
4037
4076
|
|
|
4038
|
-
function ownKeys$
|
|
4039
|
-
function _objectSpread$
|
|
4077
|
+
function ownKeys$s(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4078
|
+
function _objectSpread$s(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$s(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$s(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4040
4079
|
function parseVal(val) {
|
|
4041
4080
|
const float = Number(val);
|
|
4042
4081
|
if (!isNaN(float)) {
|
|
@@ -4287,13 +4326,13 @@ const PointEditor = ({
|
|
|
4287
4326
|
newVals[i] = val;
|
|
4288
4327
|
}
|
|
4289
4328
|
});
|
|
4290
|
-
return _objectSpread$
|
|
4329
|
+
return _objectSpread$s(_objectSpread$s({}, state), {}, {
|
|
4291
4330
|
displayVals: newVals
|
|
4292
4331
|
});
|
|
4293
4332
|
})).catch();
|
|
4294
4333
|
} else {
|
|
4295
4334
|
const value = defaults.value;
|
|
4296
|
-
setDisplayState(state => _objectSpread$
|
|
4335
|
+
setDisplayState(state => _objectSpread$s(_objectSpread$s({}, state), {}, {
|
|
4297
4336
|
displayVals: [value.x, value.y, value.z]
|
|
4298
4337
|
}));
|
|
4299
4338
|
}
|
|
@@ -4309,7 +4348,7 @@ const PointEditor = ({
|
|
|
4309
4348
|
editMode: false,
|
|
4310
4349
|
displayVals: res_ !== null ? [res_.x, res_.y, res_.z] : [...state.displayVals]
|
|
4311
4350
|
}));
|
|
4312
|
-
}).catch(() => setDisplayState(state => _objectSpread$
|
|
4351
|
+
}).catch(() => setDisplayState(state => _objectSpread$s(_objectSpread$s({}, state), {}, {
|
|
4313
4352
|
editMode: false
|
|
4314
4353
|
})));
|
|
4315
4354
|
} else {
|
|
@@ -4331,7 +4370,7 @@ const PointEditor = ({
|
|
|
4331
4370
|
caption: caption,
|
|
4332
4371
|
highlighted: param.isChanged()
|
|
4333
4372
|
}, !editMode && /*#__PURE__*/React__default.createElement(DisplayBase, {
|
|
4334
|
-
onClick: () => setDisplayState(state => _objectSpread$
|
|
4373
|
+
onClick: () => setDisplayState(state => _objectSpread$s(_objectSpread$s({}, state), {}, {
|
|
4335
4374
|
editMode: true
|
|
4336
4375
|
}))
|
|
4337
4376
|
}, /*#__PURE__*/React__default.createElement(PluginTooltip, {
|
|
@@ -4414,11 +4453,11 @@ const PointEditor = ({
|
|
|
4414
4453
|
}, "\u2014")));
|
|
4415
4454
|
};
|
|
4416
4455
|
|
|
4417
|
-
function ownKeys$
|
|
4418
|
-
function _objectSpread$
|
|
4456
|
+
function ownKeys$r(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
4457
|
+
function _objectSpread$r(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$r(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$r(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
4419
4458
|
function createPointParam(member) {
|
|
4420
4459
|
const isExpr = member.expression.length > 0;
|
|
4421
|
-
const value = isExpr ? member.expression : _objectSpread$
|
|
4460
|
+
const value = isExpr ? member.expression : _objectSpread$r({}, member.value);
|
|
4422
4461
|
return {
|
|
4423
4462
|
value,
|
|
4424
4463
|
isExpr
|
|
@@ -4459,9 +4498,9 @@ function usePointParam(drawingId, objId, memberName, options = {
|
|
|
4459
4498
|
}, undefined, undefined, options_);
|
|
4460
4499
|
}
|
|
4461
4500
|
|
|
4462
|
-
var img$
|
|
4501
|
+
var img$18 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADcSURBVEhL3ZTbDcMgDEVJlsgonabfnanfmaajdIlSS0aU+lWEsaLmCCkhMfheB2fJOadI1nIN49wJlv0Jo0xGURPUrZ05wkskH1OuOl+3ctfQE3bERxaLbnyJ+2WFUSYMy4G9shO63lBqvDJQBVbtThNfi39qHDAhqyOqPSY+fcDV4b63xwunFTjsbTAPa7thXFonQidXdURaq4vEIBhJmnnQAf8l8Eoi3hJp+1bGE3ATAH/odQCACcOHKwHRK3qa4AARdwemJdCw+oCgabQJd3BEieby/yUKTpDSG4InWqXAb1/sAAAAAElFTkSuQmCC";
|
|
4463
4502
|
|
|
4464
|
-
var img$
|
|
4503
|
+
var img$17 = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADjSURBVEhL3ZbbDcIwDEXTLsEoTMM3M/HNNIzCEgRLDpbrRx1iRTyOIrVR09x7ncrqUmstM1nbdRq/LzB4Bsv13u621NOh3b344zOAIuBoc4fLcYXRJhYfShAa78cQELsnxdwShcXtRG5h+s2ECDzmQ9jv632HQ2xaBd8FNc63B04BaANaRi9DqGdkKxBiNDu0ya3xFkYhdBkpB18/nkCURVcJeVtAN2SBWJA6A3Lt2QdGBHZC6EepBAB437EPuF8Rx7TcuSybICT148VDeAczPUFKgFx79oFUiXr47hL1MFmglCeKs2HMN70YFwAAAABJRU5ErkJggg==";
|
|
4465
4504
|
|
|
4466
4505
|
const invert = (value, inverted) => {
|
|
4467
4506
|
return inverted ? 1 - value : value;
|
|
@@ -4477,7 +4516,7 @@ const BooleanEditor = ({
|
|
|
4477
4516
|
Checkbox
|
|
4478
4517
|
} = useBuerli(buerli => buerli.options.elements);
|
|
4479
4518
|
const icon_ = Array.isArray(icon) ? true : Boolean(icon);
|
|
4480
|
-
const icons = Array.isArray(icon) && icon.length == 2 ? icon : [img$
|
|
4519
|
+
const icons = Array.isArray(icon) && icon.length == 2 ? icon : [img$18, img$17];
|
|
4481
4520
|
const {
|
|
4482
4521
|
setUserValue,
|
|
4483
4522
|
userValue,
|
|
@@ -4530,7 +4569,7 @@ function useBoolParam(drawingId, objId, memberName) {
|
|
|
4530
4569
|
});
|
|
4531
4570
|
}
|
|
4532
4571
|
|
|
4533
|
-
var Members$
|
|
4572
|
+
var Members$v;
|
|
4534
4573
|
(function (Members) {
|
|
4535
4574
|
Members["Type"] = "extrudeType";
|
|
4536
4575
|
Members["Direction"] = "extrudeDir";
|
|
@@ -4538,10 +4577,10 @@ var Members$u;
|
|
|
4538
4577
|
Members["Limit2"] = "limit2";
|
|
4539
4578
|
Members["taperAngle"] = "taperAngle";
|
|
4540
4579
|
Members["capEnds"] = "capEnds";
|
|
4541
|
-
})(Members$
|
|
4580
|
+
})(Members$v || (Members$v = {}));
|
|
4542
4581
|
var RegionMembers$3;
|
|
4543
4582
|
(function (RegionMembers) {
|
|
4544
|
-
RegionMembers["
|
|
4583
|
+
RegionMembers["Selected"] = "selected";
|
|
4545
4584
|
})(RegionMembers$3 || (RegionMembers$3 = {}));
|
|
4546
4585
|
const typesCaptions$5 = {
|
|
4547
4586
|
[ExtrusionType.CUSTOM]: 'Custom',
|
|
@@ -4549,7 +4588,7 @@ const typesCaptions$5 = {
|
|
|
4549
4588
|
[ExtrusionType.SYMMETRIC]: 'Symmetric',
|
|
4550
4589
|
[ExtrusionType.UP]: 'Up'
|
|
4551
4590
|
};
|
|
4552
|
-
const RootImpl$
|
|
4591
|
+
const RootImpl$B = ({
|
|
4553
4592
|
drawingId,
|
|
4554
4593
|
pluginId
|
|
4555
4594
|
}) => {
|
|
@@ -4560,20 +4599,37 @@ const RootImpl$A = ({
|
|
|
4560
4599
|
var _drawing$structure$tr, _drawing$structure$tr2;
|
|
4561
4600
|
return (_drawing$structure$tr = drawing.structure.tree[objectId]) == null ? void 0 : (_drawing$structure$tr2 = _drawing$structure$tr.members) == null ? void 0 : _drawing$structure$tr2.region.value;
|
|
4562
4601
|
});
|
|
4563
|
-
const region = useRefsParam(drawingId, sketchRegionId, RegionMembers$3.
|
|
4564
|
-
const type = useTypeParam(drawingId, objectId, Members$
|
|
4565
|
-
const limit1 = useNumParam(drawingId, objectId, Members$
|
|
4566
|
-
const limit2 = useNumParam(drawingId, objectId, Members$
|
|
4567
|
-
const taperAngle = useNumParam(drawingId, objectId, Members$
|
|
4602
|
+
const region = useRefsParam(drawingId, sketchRegionId, RegionMembers$3.Selected);
|
|
4603
|
+
const type = useTypeParam(drawingId, objectId, Members$v.Type);
|
|
4604
|
+
const limit1 = useNumParam(drawingId, objectId, Members$v.Limit1);
|
|
4605
|
+
const limit2 = useNumParam(drawingId, objectId, Members$v.Limit2);
|
|
4606
|
+
const taperAngle = useNumParam(drawingId, objectId, Members$v.taperAngle, {
|
|
4568
4607
|
angle: true
|
|
4569
4608
|
});
|
|
4570
|
-
const direction = usePointParam(drawingId, objectId, Members$
|
|
4571
|
-
const capEnds = useBoolParam(drawingId, objectId, Members$
|
|
4609
|
+
const direction = usePointParam(drawingId, objectId, Members$v.Direction);
|
|
4610
|
+
const capEnds = useBoolParam(drawingId, objectId, Members$v.capEnds);
|
|
4572
4611
|
const sketchId = React__default.useRef(NOCCID);
|
|
4612
|
+
React__default.useEffect(() => {
|
|
4613
|
+
const {
|
|
4614
|
+
set
|
|
4615
|
+
} = getPlugin(drawingId, pluginId);
|
|
4616
|
+
if (region.userValue.length > 0) {
|
|
4617
|
+
const regionObj = getDrawing(drawingId).structure.tree[region.userValue[0]];
|
|
4618
|
+
const [originPos, xDir, yDir] = getRegionCoordSys(drawingId, regionObj);
|
|
4619
|
+
set({
|
|
4620
|
+
originPos,
|
|
4621
|
+
xDir,
|
|
4622
|
+
yDir
|
|
4623
|
+
});
|
|
4624
|
+
}
|
|
4625
|
+
}, [drawingId, pluginId, region]);
|
|
4573
4626
|
React__default.useEffect(() => {
|
|
4574
4627
|
var _tree$sketchGeometryI;
|
|
4575
4628
|
const tree = getDrawing(drawingId).structure.tree;
|
|
4576
|
-
const sketchGeometryId = region.userValue
|
|
4629
|
+
const sketchGeometryId = region.userValue.find(id => {
|
|
4630
|
+
var _tree$id;
|
|
4631
|
+
return ccUtils.base.isA((_tree$id = tree[id]) == null ? void 0 : _tree$id.class, CCClasses.CCCurve);
|
|
4632
|
+
}) || NOCCID;
|
|
4577
4633
|
const sketchWithSelectedRegion = ((_tree$sketchGeometryI = tree[sketchGeometryId]) == null ? void 0 : _tree$sketchGeometryI.parent) || NOCCID;
|
|
4578
4634
|
sketchId.current = sketchWithSelectedRegion;
|
|
4579
4635
|
}, [drawingId, region]);
|
|
@@ -4596,7 +4652,9 @@ const RootImpl$A = ({
|
|
|
4596
4652
|
isExpr: false
|
|
4597
4653
|
}, capEnds.serverValue);
|
|
4598
4654
|
}, [drawingId, objectId, region, type, limit1, limit2, taperAngle, direction, capEnds]);
|
|
4599
|
-
const filter = React__default.useCallback((scope, data) =>
|
|
4655
|
+
const filter = React__default.useCallback((scope, data) => {
|
|
4656
|
+
return scope === TreeObjScope && ((sketchId.current === NOCCID || data.object.parent === sketchId.current) && ccUtils.base.isA(data.object.class, CCClasses.CCCurve) || ccUtils.base.isA(data.object.class, CCClasses.CCSketchRegion) || ccUtils.base.isA(data.object.class, CCClasses.CCCompositeCurve));
|
|
4657
|
+
}, []);
|
|
4600
4658
|
return /*#__PURE__*/React__default.createElement(PluginForm, {
|
|
4601
4659
|
drawingId: drawingId,
|
|
4602
4660
|
pluginId: pluginId,
|
|
@@ -4651,108 +4709,379 @@ const RootImpl$A = ({
|
|
|
4651
4709
|
inverted: true
|
|
4652
4710
|
}));
|
|
4653
4711
|
};
|
|
4654
|
-
const Root$
|
|
4712
|
+
const Root$B = ({
|
|
4655
4713
|
drawingId,
|
|
4656
4714
|
pluginId
|
|
4657
4715
|
}) => {
|
|
4658
4716
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
4659
4717
|
drawingId: drawingId,
|
|
4660
4718
|
pluginId: pluginId
|
|
4661
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
4719
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$B, {
|
|
4662
4720
|
drawingId: drawingId,
|
|
4663
4721
|
pluginId: pluginId
|
|
4664
4722
|
}));
|
|
4665
4723
|
};
|
|
4666
4724
|
|
|
4667
|
-
const
|
|
4668
|
-
|
|
4669
|
-
|
|
4670
|
-
|
|
4671
|
-
|
|
4672
|
-
|
|
4673
|
-
|
|
4674
|
-
|
|
4725
|
+
const Point$2 = ({
|
|
4726
|
+
position,
|
|
4727
|
+
radius,
|
|
4728
|
+
color,
|
|
4729
|
+
opacity = 1,
|
|
4730
|
+
handlers,
|
|
4731
|
+
userData
|
|
4732
|
+
}) => {
|
|
4733
|
+
return /*#__PURE__*/React__default.createElement("mesh", _extends({
|
|
4734
|
+
position: position.clone(),
|
|
4735
|
+
userData: userData
|
|
4736
|
+
}, handlers), /*#__PURE__*/React__default.createElement("sphereGeometry", {
|
|
4737
|
+
attach: "geometry",
|
|
4738
|
+
args: [radius, 32, 16]
|
|
4739
|
+
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
4740
|
+
attach: "material",
|
|
4741
|
+
color: color,
|
|
4742
|
+
opacity: opacity,
|
|
4743
|
+
transparent: opacity < 1
|
|
4744
|
+
}));
|
|
4675
4745
|
};
|
|
4676
|
-
|
|
4677
|
-
|
|
4678
|
-
|
|
4679
|
-
|
|
4680
|
-
|
|
4681
|
-
|
|
4682
|
-
|
|
4683
|
-
|
|
4684
|
-
|
|
4685
|
-
|
|
4686
|
-
|
|
4687
|
-
|
|
4688
|
-
|
|
4689
|
-
|
|
4690
|
-
|
|
4691
|
-
|
|
4692
|
-
|
|
4693
|
-
|
|
4694
|
-
|
|
4695
|
-
|
|
4696
|
-
})
|
|
4697
|
-
|
|
4698
|
-
|
|
4699
|
-
|
|
4700
|
-
|
|
4701
|
-
|
|
4746
|
+
const Arrow = ({
|
|
4747
|
+
position,
|
|
4748
|
+
direction,
|
|
4749
|
+
length,
|
|
4750
|
+
width,
|
|
4751
|
+
color,
|
|
4752
|
+
opacity = 1,
|
|
4753
|
+
handlers,
|
|
4754
|
+
userData,
|
|
4755
|
+
withCone = true
|
|
4756
|
+
}) => {
|
|
4757
|
+
const cylinderWith = width;
|
|
4758
|
+
const coneWidth = cylinderWith * 1.5;
|
|
4759
|
+
const coneLength = Math.min(coneWidth / 0.12, length / 2.0);
|
|
4760
|
+
const cylinderLength = withCone ? length - coneLength : length;
|
|
4761
|
+
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
4762
|
+
position: position.clone(),
|
|
4763
|
+
quaternion: new THREE.Quaternion().setFromUnitVectors(new THREE.Vector3(0, 1, 0), direction.clone().normalize())
|
|
4764
|
+
}, handlers, {
|
|
4765
|
+
userData: userData
|
|
4766
|
+
}), /*#__PURE__*/React__default.createElement("mesh", {
|
|
4767
|
+
position: new THREE.Vector3(0, cylinderLength / 2.0, 0),
|
|
4768
|
+
renderOrder: 500,
|
|
4769
|
+
userData: userData
|
|
4770
|
+
}, /*#__PURE__*/React__default.createElement("cylinderGeometry", {
|
|
4771
|
+
attach: "geometry",
|
|
4772
|
+
args: [cylinderWith, cylinderWith, cylinderLength, 24, 1]
|
|
4773
|
+
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
4774
|
+
attach: "material",
|
|
4775
|
+
color: color,
|
|
4776
|
+
opacity: opacity,
|
|
4777
|
+
transparent: true
|
|
4778
|
+
})), withCone && /*#__PURE__*/React__default.createElement("mesh", {
|
|
4779
|
+
position: new THREE.Vector3(0, cylinderLength + coneLength / 2.0, 0),
|
|
4780
|
+
renderOrder: 500,
|
|
4781
|
+
userData: userData
|
|
4782
|
+
}, /*#__PURE__*/React__default.createElement("coneGeometry", {
|
|
4783
|
+
attach: "geometry",
|
|
4784
|
+
args: [coneWidth, coneLength, 24, 1]
|
|
4785
|
+
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
4786
|
+
attach: "material",
|
|
4787
|
+
color: color,
|
|
4788
|
+
opacity: opacity,
|
|
4789
|
+
transparent: opacity < 1
|
|
4790
|
+
})));
|
|
4702
4791
|
};
|
|
4703
|
-
const
|
|
4704
|
-
|
|
4705
|
-
|
|
4792
|
+
const OriginPoint = ({
|
|
4793
|
+
position,
|
|
4794
|
+
color,
|
|
4795
|
+
opacity = 1,
|
|
4796
|
+
handlers,
|
|
4797
|
+
userData
|
|
4706
4798
|
}) => {
|
|
4707
|
-
|
|
4708
|
-
|
|
4709
|
-
|
|
4710
|
-
|
|
4711
|
-
|
|
4712
|
-
|
|
4799
|
+
return /*#__PURE__*/React__default.createElement(Point$2, {
|
|
4800
|
+
position: position ? position.clone() : new THREE.Vector3(),
|
|
4801
|
+
radius: 2,
|
|
4802
|
+
color: color,
|
|
4803
|
+
opacity: opacity,
|
|
4804
|
+
handlers: handlers,
|
|
4805
|
+
userData: userData
|
|
4713
4806
|
});
|
|
4714
|
-
|
|
4715
|
-
|
|
4716
|
-
|
|
4717
|
-
|
|
4718
|
-
|
|
4719
|
-
|
|
4807
|
+
};
|
|
4808
|
+
const AxisArrow = ({
|
|
4809
|
+
position,
|
|
4810
|
+
direction,
|
|
4811
|
+
color,
|
|
4812
|
+
opacity = 1,
|
|
4813
|
+
handlers,
|
|
4814
|
+
userData,
|
|
4815
|
+
length,
|
|
4816
|
+
width,
|
|
4817
|
+
withCone = true
|
|
4818
|
+
}) => {
|
|
4819
|
+
return /*#__PURE__*/React__default.createElement(Arrow, {
|
|
4820
|
+
position: position ? position.clone() : new THREE.Vector3(),
|
|
4821
|
+
direction: direction.clone(),
|
|
4822
|
+
length: length || 21,
|
|
4823
|
+
width: width || 1,
|
|
4824
|
+
color: color,
|
|
4825
|
+
opacity: opacity,
|
|
4826
|
+
handlers: handlers,
|
|
4827
|
+
userData: userData,
|
|
4828
|
+
withCone: withCone
|
|
4720
4829
|
});
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
|
|
4724
|
-
|
|
4725
|
-
|
|
4726
|
-
|
|
4727
|
-
|
|
4728
|
-
|
|
4729
|
-
|
|
4730
|
-
|
|
4731
|
-
|
|
4732
|
-
const
|
|
4733
|
-
|
|
4734
|
-
|
|
4735
|
-
|
|
4736
|
-
|
|
4737
|
-
|
|
4738
|
-
|
|
4739
|
-
|
|
4740
|
-
|
|
4741
|
-
|
|
4742
|
-
|
|
4743
|
-
|
|
4744
|
-
|
|
4745
|
-
|
|
4746
|
-
|
|
4747
|
-
|
|
4748
|
-
|
|
4830
|
+
};
|
|
4831
|
+
|
|
4832
|
+
//TODO: don't use any
|
|
4833
|
+
const Csys = ({
|
|
4834
|
+
matrix,
|
|
4835
|
+
opacity,
|
|
4836
|
+
handlers,
|
|
4837
|
+
color,
|
|
4838
|
+
userData
|
|
4839
|
+
}) => {
|
|
4840
|
+
const position = new THREE.Vector3().setFromMatrixPosition(matrix);
|
|
4841
|
+
const ref = useScale$1(position.clone(), sf => [2 * sf, 2 * sf, 2 * sf]);
|
|
4842
|
+
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
4843
|
+
matrix: matrix,
|
|
4844
|
+
matrixAutoUpdate: false,
|
|
4845
|
+
userData: userData
|
|
4846
|
+
}, handlers), /*#__PURE__*/React__default.createElement("group", {
|
|
4847
|
+
ref: ref
|
|
4848
|
+
}, /*#__PURE__*/React__default.createElement(OriginPoint, {
|
|
4849
|
+
position: new THREE.Vector3(),
|
|
4850
|
+
color: color || 0x000000,
|
|
4851
|
+
opacity: opacity,
|
|
4852
|
+
userData: userData
|
|
4853
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4854
|
+
position: new THREE.Vector3(),
|
|
4855
|
+
direction: new THREE.Vector3(1, 0, 0),
|
|
4856
|
+
color: color || 0xd52828,
|
|
4857
|
+
opacity: opacity,
|
|
4858
|
+
userData: userData
|
|
4859
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4860
|
+
position: new THREE.Vector3(),
|
|
4861
|
+
direction: new THREE.Vector3(0, 1, 0),
|
|
4862
|
+
color: color || 0x28a628,
|
|
4863
|
+
opacity: opacity,
|
|
4864
|
+
userData: userData
|
|
4865
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4866
|
+
position: new THREE.Vector3(),
|
|
4867
|
+
direction: new THREE.Vector3(0, 0, 1),
|
|
4868
|
+
color: color || 0x2828d7,
|
|
4869
|
+
opacity: opacity,
|
|
4870
|
+
userData: userData
|
|
4871
|
+
})));
|
|
4872
|
+
};
|
|
4873
|
+
const SelectedCsys = ({
|
|
4874
|
+
matrix,
|
|
4875
|
+
opacity = 1.0,
|
|
4876
|
+
handlers,
|
|
4877
|
+
color,
|
|
4878
|
+
userData
|
|
4879
|
+
}) => {
|
|
4880
|
+
const position = new THREE.Vector3().setFromMatrixPosition(matrix);
|
|
4881
|
+
const ref = useScale$1(position.clone(), sf => [2 * sf, 2 * sf, 2 * sf]);
|
|
4882
|
+
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
4883
|
+
matrix: matrix,
|
|
4884
|
+
matrixAutoUpdate: false
|
|
4885
|
+
}, handlers), /*#__PURE__*/React__default.createElement("group", {
|
|
4886
|
+
ref: ref
|
|
4887
|
+
}, /*#__PURE__*/React__default.createElement(OriginPoint, {
|
|
4888
|
+
position: new THREE.Vector3(),
|
|
4889
|
+
color: color || 0x000000,
|
|
4890
|
+
opacity: opacity,
|
|
4891
|
+
userData: userData
|
|
4892
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4893
|
+
position: new THREE.Vector3(),
|
|
4894
|
+
direction: new THREE.Vector3(1, 0, 0),
|
|
4895
|
+
color: color || 0xd52828,
|
|
4896
|
+
opacity: opacity,
|
|
4897
|
+
userData: userData,
|
|
4898
|
+
withCone: false
|
|
4899
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4900
|
+
position: new THREE.Vector3(),
|
|
4901
|
+
direction: new THREE.Vector3(0, 1, 0),
|
|
4902
|
+
color: color || 0x28a628,
|
|
4903
|
+
opacity: opacity,
|
|
4904
|
+
userData: userData,
|
|
4905
|
+
withCone: false
|
|
4906
|
+
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
4907
|
+
position: new THREE.Vector3(),
|
|
4908
|
+
direction: new THREE.Vector3(0, 0, 1),
|
|
4909
|
+
width: 1.25,
|
|
4910
|
+
length: 45,
|
|
4911
|
+
color: color || 0x2828d7,
|
|
4912
|
+
opacity: opacity,
|
|
4913
|
+
userData: userData
|
|
4914
|
+
})));
|
|
4915
|
+
};
|
|
4916
|
+
|
|
4917
|
+
const virtualScene = new THREE.Scene();
|
|
4918
|
+
const HUD = ({
|
|
4919
|
+
children
|
|
4920
|
+
}) => {
|
|
4921
|
+
const {
|
|
4922
|
+
gl,
|
|
4923
|
+
camera
|
|
4924
|
+
} = useThree();
|
|
4925
|
+
useFrame(() => {
|
|
4926
|
+
gl.autoClear = false;
|
|
4927
|
+
gl.clearDepth();
|
|
4928
|
+
gl.render(virtualScene, camera);
|
|
4929
|
+
}, 3);
|
|
4930
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, createPortal( /*#__PURE__*/React__default.createElement("group", null, children), virtualScene));
|
|
4931
|
+
};
|
|
4932
|
+
|
|
4933
|
+
function ViewImpl$i({
|
|
4934
|
+
drawingId,
|
|
4935
|
+
pluginId
|
|
4936
|
+
}) {
|
|
4937
|
+
const {
|
|
4938
|
+
state
|
|
4939
|
+
} = usePlugin(drawingId, pluginId, pluginState => pluginState);
|
|
4940
|
+
const {
|
|
4941
|
+
originPos,
|
|
4942
|
+
xDir,
|
|
4943
|
+
yDir
|
|
4944
|
+
} = state;
|
|
4945
|
+
const isActive = useDrawing(drawingId, drawing => drawing.plugin.active.feature === pluginId);
|
|
4946
|
+
const previewMatrix = React__default.useMemo(() => {
|
|
4947
|
+
const originPos_ = originPos ? originPos : new THREE.Vector3(0.0, 0.0, 0.0);
|
|
4948
|
+
const xDir_ = xDir ? xDir : new THREE.Vector3(1.0, 0.0, 0.0);
|
|
4949
|
+
const yDir_ = yDir ? yDir : new THREE.Vector3(0.0, 1.0, 0.0);
|
|
4950
|
+
const nullVec = new THREE.Vector3(0.0, 0.0, 0.0);
|
|
4951
|
+
return MathUtils.calcluateTransform(originPos_, xDir_, yDir_, nullVec, nullVec, 0);
|
|
4952
|
+
}, [originPos, xDir, yDir]);
|
|
4953
|
+
return /*#__PURE__*/React__default.createElement(HUD, null, /*#__PURE__*/React__default.createElement("group", null, isActive && /*#__PURE__*/React__default.createElement(Csys, {
|
|
4954
|
+
matrix: previewMatrix,
|
|
4955
|
+
opacity: 0.5
|
|
4956
|
+
})));
|
|
4957
|
+
}
|
|
4958
|
+
const View$i = ({
|
|
4959
|
+
drawingId,
|
|
4960
|
+
pluginId
|
|
4961
|
+
}) => {
|
|
4962
|
+
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
4963
|
+
drawingId: drawingId,
|
|
4964
|
+
pluginId: pluginId,
|
|
4965
|
+
inCanvas: true
|
|
4966
|
+
}, /*#__PURE__*/React__default.createElement(ViewImpl$i, {
|
|
4967
|
+
drawingId: drawingId,
|
|
4968
|
+
pluginId: pluginId
|
|
4969
|
+
}));
|
|
4970
|
+
};
|
|
4971
|
+
|
|
4972
|
+
const description$B = {
|
|
4973
|
+
name: 'Extrusion',
|
|
4974
|
+
version: '1.0.0',
|
|
4975
|
+
author: 'Ledas',
|
|
4976
|
+
persistent: true,
|
|
4977
|
+
visible: false,
|
|
4978
|
+
global: false,
|
|
4979
|
+
initialState: {
|
|
4980
|
+
originPos: undefined,
|
|
4981
|
+
xDir: undefined,
|
|
4982
|
+
yDir: undefined
|
|
4983
|
+
}
|
|
4984
|
+
};
|
|
4985
|
+
|
|
4986
|
+
var index$B = /*#__PURE__*/Object.freeze({
|
|
4987
|
+
__proto__: null,
|
|
4988
|
+
Root: Root$B,
|
|
4989
|
+
View: View$i,
|
|
4990
|
+
description: description$B
|
|
4991
|
+
});
|
|
4992
|
+
|
|
4993
|
+
var Members$u;
|
|
4994
|
+
(function (Members) {
|
|
4995
|
+
Members["Type"] = "extrudeType";
|
|
4996
|
+
Members["Direction"] = "extrudeDir";
|
|
4997
|
+
Members["Limit1"] = "limit1";
|
|
4998
|
+
Members["Limit2"] = "limit2";
|
|
4999
|
+
Members["TwistAngle"] = "twistAngle";
|
|
5000
|
+
Members["TwistCenter"] = "twistCenter";
|
|
5001
|
+
Members["CapEnds"] = "capEnds";
|
|
5002
|
+
})(Members$u || (Members$u = {}));
|
|
5003
|
+
var RegionMembers$2;
|
|
5004
|
+
(function (RegionMembers) {
|
|
5005
|
+
RegionMembers["Selected"] = "selected";
|
|
5006
|
+
})(RegionMembers$2 || (RegionMembers$2 = {}));
|
|
5007
|
+
const typesCaptions$4 = {
|
|
5008
|
+
[ExtrusionType.CUSTOM]: 'Custom',
|
|
5009
|
+
[ExtrusionType.DOWN]: 'Down',
|
|
5010
|
+
[ExtrusionType.SYMMETRIC]: 'Symmetric',
|
|
5011
|
+
[ExtrusionType.UP]: 'Up'
|
|
5012
|
+
};
|
|
5013
|
+
const RootImpl$A = ({
|
|
5014
|
+
drawingId,
|
|
5015
|
+
pluginId
|
|
5016
|
+
}) => {
|
|
5017
|
+
const {
|
|
5018
|
+
objectId
|
|
5019
|
+
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
5020
|
+
const sketchRegionId = useDrawingCCId(drawingId, drawing => {
|
|
5021
|
+
var _drawing$structure$tr, _drawing$structure$tr2;
|
|
5022
|
+
return (_drawing$structure$tr = drawing.structure.tree[objectId]) == null ? void 0 : (_drawing$structure$tr2 = _drawing$structure$tr.members) == null ? void 0 : _drawing$structure$tr2.region.value;
|
|
5023
|
+
});
|
|
5024
|
+
const region = useRefsParam(drawingId, sketchRegionId, RegionMembers$2.Selected);
|
|
5025
|
+
const type = useTypeParam(drawingId, objectId, Members$u.Type);
|
|
5026
|
+
const limit1 = useNumParam(drawingId, objectId, Members$u.Limit1);
|
|
5027
|
+
const limit2 = useNumParam(drawingId, objectId, Members$u.Limit2);
|
|
5028
|
+
const twistAngle = useNumParam(drawingId, objectId, Members$u.TwistAngle, {
|
|
5029
|
+
angle: true
|
|
5030
|
+
});
|
|
5031
|
+
const twistCenter = usePointParam(drawingId, objectId, Members$u.TwistCenter);
|
|
5032
|
+
const direction = usePointParam(drawingId, objectId, Members$u.Direction);
|
|
5033
|
+
const capEnds = useBoolParam(drawingId, objectId, Members$u.CapEnds);
|
|
5034
|
+
const sketchId = React__default.useRef(NOCCID);
|
|
5035
|
+
React__default.useEffect(() => {
|
|
5036
|
+
const {
|
|
5037
|
+
set
|
|
5038
|
+
} = getPlugin(drawingId, pluginId);
|
|
5039
|
+
if (region.userValue.length > 0) {
|
|
5040
|
+
const regionObj = getDrawing(drawingId).structure.tree[region.userValue[0]];
|
|
5041
|
+
const [originPos, xDir, yDir] = getRegionCoordSys(drawingId, regionObj);
|
|
5042
|
+
set({
|
|
5043
|
+
originPos,
|
|
5044
|
+
xDir,
|
|
5045
|
+
yDir
|
|
5046
|
+
});
|
|
5047
|
+
}
|
|
5048
|
+
}, [drawingId, pluginId, region]);
|
|
5049
|
+
React__default.useEffect(() => {
|
|
5050
|
+
var _tree$sketchGeometryI;
|
|
5051
|
+
const tree = getDrawing(drawingId).structure.tree;
|
|
5052
|
+
const sketchGeometryId = region.userValue.find(id => {
|
|
5053
|
+
var _tree$id;
|
|
5054
|
+
return ccUtils.base.isA((_tree$id = tree[id]) == null ? void 0 : _tree$id.class, CCClasses.CCCurve);
|
|
5055
|
+
}) || NOCCID;
|
|
5056
|
+
const sketchWithSelectedRegion = ((_tree$sketchGeometryI = tree[sketchGeometryId]) == null ? void 0 : _tree$sketchGeometryI.parent) || NOCCID;
|
|
5057
|
+
sketchId.current = sketchWithSelectedRegion;
|
|
5058
|
+
}, [drawingId, region]);
|
|
5059
|
+
const updateAndClose = React__default.useCallback(() => {
|
|
5060
|
+
return ccAPI.feature.updateTwist(drawingId, objectId, region.serverValue, type.serverValue, type.serverValue === ExtrusionType.CUSTOM ? limit1.serverValue : {
|
|
5061
|
+
value: 0.0,
|
|
5062
|
+
isExpr: false
|
|
5063
|
+
}, limit2.serverValue, type.serverValue === ExtrusionType.CUSTOM ? direction.serverValue : {
|
|
5064
|
+
value: {
|
|
5065
|
+
x: 0.0,
|
|
5066
|
+
y: 0.0,
|
|
5067
|
+
z: 1.0
|
|
5068
|
+
},
|
|
5069
|
+
isExpr: false
|
|
5070
|
+
},
|
|
5071
|
+
// TODO: This is a workaround to prevent sending both non-zero taperAngle and direction values to the server;
|
|
5072
|
+
// this would result in crashing the extrusion functionality somehow
|
|
5073
|
+
twistAngle.serverValue, type.userValue === ExtrusionType.CUSTOM ? twistCenter.serverValue : {
|
|
5074
|
+
value: {
|
|
5075
|
+
x: 0.0,
|
|
4749
5076
|
y: 0.0,
|
|
4750
5077
|
z: 0.0
|
|
4751
5078
|
},
|
|
4752
5079
|
isExpr: false
|
|
4753
5080
|
}, capEnds.serverValue);
|
|
4754
5081
|
}, [drawingId, objectId, region, type, limit1, limit2, twistAngle, twistCenter, direction, capEnds]);
|
|
4755
|
-
const filter = React__default.useCallback((scope, data) =>
|
|
5082
|
+
const filter = React__default.useCallback((scope, data) => {
|
|
5083
|
+
return scope === TreeObjScope && ((sketchId.current === NOCCID || data.object.parent === sketchId.current) && ccUtils.base.isA(data.object.class, CCClasses.CCCurve) || ccUtils.base.isA(data.object.class, CCClasses.CCSketchRegion) || ccUtils.base.isA(data.object.class, CCClasses.CCCompositeCurve));
|
|
5084
|
+
}, []);
|
|
4756
5085
|
return /*#__PURE__*/React__default.createElement(PluginForm, {
|
|
4757
5086
|
drawingId: drawingId,
|
|
4758
5087
|
pluginId: pluginId,
|
|
@@ -4812,47 +5141,91 @@ const RootImpl$z = ({
|
|
|
4812
5141
|
inverted: true
|
|
4813
5142
|
}));
|
|
4814
5143
|
};
|
|
4815
|
-
const Root$
|
|
5144
|
+
const Root$A = ({
|
|
4816
5145
|
drawingId,
|
|
4817
5146
|
pluginId
|
|
4818
5147
|
}) => {
|
|
4819
5148
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
4820
5149
|
drawingId: drawingId,
|
|
4821
5150
|
pluginId: pluginId
|
|
4822
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
5151
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$A, {
|
|
4823
5152
|
drawingId: drawingId,
|
|
4824
5153
|
pluginId: pluginId
|
|
4825
5154
|
}));
|
|
4826
5155
|
};
|
|
4827
5156
|
|
|
4828
|
-
|
|
5157
|
+
function ViewImpl$h({
|
|
5158
|
+
drawingId,
|
|
5159
|
+
pluginId
|
|
5160
|
+
}) {
|
|
5161
|
+
const {
|
|
5162
|
+
state
|
|
5163
|
+
} = usePlugin(drawingId, pluginId, pluginState => pluginState);
|
|
5164
|
+
const {
|
|
5165
|
+
originPos,
|
|
5166
|
+
xDir,
|
|
5167
|
+
yDir
|
|
5168
|
+
} = state;
|
|
5169
|
+
const isActive = useDrawing(drawingId, drawing => drawing.plugin.active.feature === pluginId);
|
|
5170
|
+
const previewMatrix = React__default.useMemo(() => {
|
|
5171
|
+
const originPos_ = originPos ? originPos : new THREE.Vector3(0.0, 0.0, 0.0);
|
|
5172
|
+
const xDir_ = xDir ? xDir : new THREE.Vector3(1.0, 0.0, 0.0);
|
|
5173
|
+
const yDir_ = yDir ? yDir : new THREE.Vector3(0.0, 1.0, 0.0);
|
|
5174
|
+
const nullVec = new THREE.Vector3(0.0, 0.0, 0.0);
|
|
5175
|
+
return MathUtils.calcluateTransform(originPos_, xDir_, yDir_, nullVec, nullVec, 0);
|
|
5176
|
+
}, [originPos, xDir, yDir]);
|
|
5177
|
+
return /*#__PURE__*/React__default.createElement(HUD, null, /*#__PURE__*/React__default.createElement("group", null, isActive && /*#__PURE__*/React__default.createElement(Csys, {
|
|
5178
|
+
matrix: previewMatrix,
|
|
5179
|
+
opacity: 0.5
|
|
5180
|
+
})));
|
|
5181
|
+
}
|
|
5182
|
+
const View$h = ({
|
|
5183
|
+
drawingId,
|
|
5184
|
+
pluginId
|
|
5185
|
+
}) => {
|
|
5186
|
+
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5187
|
+
drawingId: drawingId,
|
|
5188
|
+
pluginId: pluginId,
|
|
5189
|
+
inCanvas: true
|
|
5190
|
+
}, /*#__PURE__*/React__default.createElement(ViewImpl$h, {
|
|
5191
|
+
drawingId: drawingId,
|
|
5192
|
+
pluginId: pluginId
|
|
5193
|
+
}));
|
|
5194
|
+
};
|
|
5195
|
+
|
|
5196
|
+
const description$A = {
|
|
4829
5197
|
name: 'Twist',
|
|
4830
5198
|
version: '1.0.0',
|
|
4831
5199
|
author: 'Ledas',
|
|
4832
5200
|
persistent: true,
|
|
4833
5201
|
visible: false,
|
|
4834
5202
|
global: false,
|
|
4835
|
-
initialState:
|
|
5203
|
+
initialState: {
|
|
5204
|
+
originPos: undefined,
|
|
5205
|
+
xDir: undefined,
|
|
5206
|
+
yDir: undefined
|
|
5207
|
+
}
|
|
4836
5208
|
};
|
|
4837
5209
|
|
|
4838
|
-
var index$
|
|
5210
|
+
var index$A = /*#__PURE__*/Object.freeze({
|
|
4839
5211
|
__proto__: null,
|
|
4840
|
-
Root: Root$
|
|
4841
|
-
|
|
5212
|
+
Root: Root$A,
|
|
5213
|
+
View: View$h,
|
|
5214
|
+
description: description$A
|
|
4842
5215
|
});
|
|
4843
5216
|
|
|
4844
|
-
var Members$
|
|
5217
|
+
var Members$t;
|
|
4845
5218
|
(function (Members) {
|
|
4846
5219
|
Members["Axis"] = "references";
|
|
4847
5220
|
Members["Inverted"] = "inverted";
|
|
4848
5221
|
Members["StartAngle"] = "startAngle";
|
|
4849
5222
|
Members["EndAngle"] = "endAngle";
|
|
4850
|
-
})(Members$
|
|
5223
|
+
})(Members$t || (Members$t = {}));
|
|
4851
5224
|
var RegionMembers$1;
|
|
4852
5225
|
(function (RegionMembers) {
|
|
4853
|
-
RegionMembers["
|
|
5226
|
+
RegionMembers["Selected"] = "selected";
|
|
4854
5227
|
})(RegionMembers$1 || (RegionMembers$1 = {}));
|
|
4855
|
-
const RootImpl$
|
|
5228
|
+
const RootImpl$z = ({
|
|
4856
5229
|
drawingId,
|
|
4857
5230
|
pluginId
|
|
4858
5231
|
}) => {
|
|
@@ -4863,27 +5236,32 @@ const RootImpl$y = ({
|
|
|
4863
5236
|
var _drawing$structure$tr, _drawing$structure$tr2;
|
|
4864
5237
|
return (_drawing$structure$tr = drawing.structure.tree[objectId]) == null ? void 0 : (_drawing$structure$tr2 = _drawing$structure$tr.members) == null ? void 0 : _drawing$structure$tr2.region.value;
|
|
4865
5238
|
});
|
|
4866
|
-
const region = useRefsParam(drawingId, sketchRegionId, RegionMembers$1.
|
|
4867
|
-
const axis = useRefsParam(drawingId, objectId, Members$
|
|
4868
|
-
const startAngle = useNumParam(drawingId, objectId, Members$
|
|
5239
|
+
const region = useRefsParam(drawingId, sketchRegionId, RegionMembers$1.Selected);
|
|
5240
|
+
const axis = useRefsParam(drawingId, objectId, Members$t.Axis);
|
|
5241
|
+
const startAngle = useNumParam(drawingId, objectId, Members$t.StartAngle, {
|
|
4869
5242
|
angle: true
|
|
4870
5243
|
});
|
|
4871
|
-
const endAngle = useNumParam(drawingId, objectId, Members$
|
|
5244
|
+
const endAngle = useNumParam(drawingId, objectId, Members$t.EndAngle, {
|
|
4872
5245
|
angle: true
|
|
4873
5246
|
});
|
|
4874
|
-
const inverted = useBoolParam(drawingId, objectId, Members$
|
|
5247
|
+
const inverted = useBoolParam(drawingId, objectId, Members$t.Inverted);
|
|
4875
5248
|
const sketchId = React__default.useRef(NOCCID);
|
|
4876
5249
|
React__default.useEffect(() => {
|
|
4877
5250
|
var _tree$sketchGeometryI;
|
|
4878
5251
|
const tree = getDrawing(drawingId).structure.tree;
|
|
4879
|
-
const sketchGeometryId = region.userValue
|
|
5252
|
+
const sketchGeometryId = region.userValue.find(id => {
|
|
5253
|
+
var _tree$id;
|
|
5254
|
+
return ccUtils.base.isA((_tree$id = tree[id]) == null ? void 0 : _tree$id.class, CCClasses.CCCurve);
|
|
5255
|
+
}) || NOCCID;
|
|
4880
5256
|
const sketchWithSelectedRegion = ((_tree$sketchGeometryI = tree[sketchGeometryId]) == null ? void 0 : _tree$sketchGeometryI.parent) || NOCCID;
|
|
4881
5257
|
sketchId.current = sketchWithSelectedRegion;
|
|
4882
5258
|
}, [drawingId, region]);
|
|
4883
5259
|
const updateAndClose = React__default.useCallback(() => {
|
|
4884
5260
|
return ccAPI.feature.updateRevolve(drawingId, objectId, region.serverValue, axis.serverValue, startAngle.serverValue, endAngle.serverValue, inverted.serverValue);
|
|
4885
5261
|
}, [drawingId, objectId, region, axis, startAngle, endAngle, inverted]);
|
|
4886
|
-
const
|
|
5262
|
+
const filter = React__default.useCallback((scope, data) => {
|
|
5263
|
+
return scope === TreeObjScope && ((sketchId.current === NOCCID || data.object.parent === sketchId.current) && ccUtils.base.isA(data.object.class, CCClasses.CCCurve) || ccUtils.base.isA(data.object.class, CCClasses.CCSketchRegion) || ccUtils.base.isA(data.object.class, CCClasses.CCCompositeCurve));
|
|
5264
|
+
}, []);
|
|
4887
5265
|
return /*#__PURE__*/React__default.createElement(PluginForm, {
|
|
4888
5266
|
drawingId: drawingId,
|
|
4889
5267
|
pluginId: pluginId,
|
|
@@ -4899,7 +5277,7 @@ const RootImpl$y = ({
|
|
|
4899
5277
|
drawingId: drawingId,
|
|
4900
5278
|
param: region,
|
|
4901
5279
|
caption: "Region",
|
|
4902
|
-
filter:
|
|
5280
|
+
filter: filter,
|
|
4903
5281
|
customIdPicker: pickObjId,
|
|
4904
5282
|
sketchLines: true
|
|
4905
5283
|
}), /*#__PURE__*/React__default.createElement(RefsEditor, {
|
|
@@ -4923,20 +5301,20 @@ const RootImpl$y = ({
|
|
|
4923
5301
|
icon: true
|
|
4924
5302
|
})));
|
|
4925
5303
|
};
|
|
4926
|
-
const Root$
|
|
5304
|
+
const Root$z = ({
|
|
4927
5305
|
drawingId,
|
|
4928
5306
|
pluginId
|
|
4929
5307
|
}) => {
|
|
4930
5308
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
4931
5309
|
drawingId: drawingId,
|
|
4932
5310
|
pluginId: pluginId
|
|
4933
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
5311
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$z, {
|
|
4934
5312
|
drawingId: drawingId,
|
|
4935
5313
|
pluginId: pluginId
|
|
4936
5314
|
}));
|
|
4937
5315
|
};
|
|
4938
5316
|
|
|
4939
|
-
const description$
|
|
5317
|
+
const description$z = {
|
|
4940
5318
|
name: 'Revolve',
|
|
4941
5319
|
version: '1.0.0',
|
|
4942
5320
|
author: 'Ledas',
|
|
@@ -4946,30 +5324,30 @@ const description$y = {
|
|
|
4946
5324
|
initialState: addMembers
|
|
4947
5325
|
};
|
|
4948
5326
|
|
|
4949
|
-
var index$
|
|
5327
|
+
var index$z = /*#__PURE__*/Object.freeze({
|
|
4950
5328
|
__proto__: null,
|
|
4951
|
-
Root: Root$
|
|
4952
|
-
description: description$
|
|
5329
|
+
Root: Root$z,
|
|
5330
|
+
description: description$z
|
|
4953
5331
|
});
|
|
4954
5332
|
|
|
4955
|
-
var Members$
|
|
5333
|
+
var Members$s;
|
|
4956
5334
|
(function (Members) {
|
|
4957
5335
|
Members["CSys"] = "references";
|
|
4958
5336
|
Members["Width"] = "width";
|
|
4959
5337
|
Members["Height"] = "height";
|
|
4960
5338
|
Members["Length"] = "length";
|
|
4961
|
-
})(Members$
|
|
4962
|
-
function RootImpl$
|
|
5339
|
+
})(Members$s || (Members$s = {}));
|
|
5340
|
+
function RootImpl$y({
|
|
4963
5341
|
drawingId,
|
|
4964
5342
|
pluginId
|
|
4965
5343
|
}) {
|
|
4966
5344
|
const {
|
|
4967
5345
|
objectId
|
|
4968
5346
|
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
4969
|
-
const csys = useRefsParam(drawingId, objectId, Members$
|
|
4970
|
-
const width = useNumParam(drawingId, objectId, Members$
|
|
4971
|
-
const height = useNumParam(drawingId, objectId, Members$
|
|
4972
|
-
const length = useNumParam(drawingId, objectId, Members$
|
|
5347
|
+
const csys = useRefsParam(drawingId, objectId, Members$s.CSys);
|
|
5348
|
+
const width = useNumParam(drawingId, objectId, Members$s.Width);
|
|
5349
|
+
const height = useNumParam(drawingId, objectId, Members$s.Height);
|
|
5350
|
+
const length = useNumParam(drawingId, objectId, Members$s.Length);
|
|
4973
5351
|
const update = React__default.useCallback(() => {
|
|
4974
5352
|
return ccAPI.feature.updateBox(drawingId, objectId, csys.serverValue, width.serverValue, length.serverValue, height.serverValue);
|
|
4975
5353
|
}, [drawingId, objectId, csys, width, height, length]);
|
|
@@ -5019,20 +5397,20 @@ function RootImpl$x({
|
|
|
5019
5397
|
allowExpr: true
|
|
5020
5398
|
}));
|
|
5021
5399
|
}
|
|
5022
|
-
const Root$
|
|
5400
|
+
const Root$y = ({
|
|
5023
5401
|
drawingId,
|
|
5024
5402
|
pluginId
|
|
5025
5403
|
}) => {
|
|
5026
5404
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5027
5405
|
drawingId: drawingId,
|
|
5028
5406
|
pluginId: pluginId
|
|
5029
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
5407
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$y, {
|
|
5030
5408
|
drawingId: drawingId,
|
|
5031
5409
|
pluginId: pluginId
|
|
5032
5410
|
}));
|
|
5033
5411
|
};
|
|
5034
5412
|
|
|
5035
|
-
const description$
|
|
5413
|
+
const description$y = {
|
|
5036
5414
|
name: 'Box',
|
|
5037
5415
|
version: '1.0.0',
|
|
5038
5416
|
author: 'Ledas',
|
|
@@ -5041,26 +5419,26 @@ const description$x = {
|
|
|
5041
5419
|
global: false
|
|
5042
5420
|
};
|
|
5043
5421
|
|
|
5044
|
-
var index$
|
|
5422
|
+
var index$y = /*#__PURE__*/Object.freeze({
|
|
5045
5423
|
__proto__: null,
|
|
5046
|
-
Root: Root$
|
|
5047
|
-
description: description$
|
|
5424
|
+
Root: Root$y,
|
|
5425
|
+
description: description$y
|
|
5048
5426
|
});
|
|
5049
5427
|
|
|
5050
|
-
var Members$
|
|
5428
|
+
var Members$r;
|
|
5051
5429
|
(function (Members) {
|
|
5052
5430
|
Members["CSys"] = "references";
|
|
5053
5431
|
Members["Radius"] = "radius";
|
|
5054
|
-
})(Members$
|
|
5055
|
-
function RootImpl$
|
|
5432
|
+
})(Members$r || (Members$r = {}));
|
|
5433
|
+
function RootImpl$x({
|
|
5056
5434
|
drawingId,
|
|
5057
5435
|
pluginId
|
|
5058
5436
|
}) {
|
|
5059
5437
|
const {
|
|
5060
5438
|
objectId
|
|
5061
5439
|
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
5062
|
-
const csys = useRefsParam(drawingId, objectId, Members$
|
|
5063
|
-
const radius = useNumParam(drawingId, objectId, Members$
|
|
5440
|
+
const csys = useRefsParam(drawingId, objectId, Members$r.CSys);
|
|
5441
|
+
const radius = useNumParam(drawingId, objectId, Members$r.Radius);
|
|
5064
5442
|
const update = React__default.useCallback(() => {
|
|
5065
5443
|
return ccAPI.feature.updateSphere(drawingId, objectId, csys.userValue, radius.userValue);
|
|
5066
5444
|
}, [drawingId, objectId, csys, radius]);
|
|
@@ -5090,20 +5468,20 @@ function RootImpl$w({
|
|
|
5090
5468
|
allowExpr: true
|
|
5091
5469
|
}));
|
|
5092
5470
|
}
|
|
5093
|
-
const Root$
|
|
5471
|
+
const Root$x = ({
|
|
5094
5472
|
drawingId,
|
|
5095
5473
|
pluginId
|
|
5096
5474
|
}) => {
|
|
5097
5475
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5098
5476
|
drawingId: drawingId,
|
|
5099
5477
|
pluginId: pluginId
|
|
5100
|
-
}, /*#__PURE__*/React__default.createElement(RootImpl$
|
|
5478
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$x, {
|
|
5101
5479
|
drawingId: drawingId,
|
|
5102
5480
|
pluginId: pluginId
|
|
5103
5481
|
}));
|
|
5104
5482
|
};
|
|
5105
5483
|
|
|
5106
|
-
const description$
|
|
5484
|
+
const description$x = {
|
|
5107
5485
|
name: 'Sphere',
|
|
5108
5486
|
version: '1.0.0',
|
|
5109
5487
|
author: 'Ledas',
|
|
@@ -5112,28 +5490,28 @@ const description$w = {
|
|
|
5112
5490
|
global: false
|
|
5113
5491
|
};
|
|
5114
5492
|
|
|
5115
|
-
var index$
|
|
5493
|
+
var index$x = /*#__PURE__*/Object.freeze({
|
|
5116
5494
|
__proto__: null,
|
|
5117
|
-
Root: Root$
|
|
5118
|
-
description: description$
|
|
5495
|
+
Root: Root$x,
|
|
5496
|
+
description: description$x
|
|
5119
5497
|
});
|
|
5120
5498
|
|
|
5121
|
-
var Members$
|
|
5499
|
+
var Members$q;
|
|
5122
5500
|
(function (Members) {
|
|
5123
5501
|
Members["CSys"] = "references";
|
|
5124
5502
|
Members["Diameter"] = "diameter";
|
|
5125
5503
|
Members["Height"] = "height";
|
|
5126
|
-
})(Members$
|
|
5127
|
-
function RootImpl$
|
|
5504
|
+
})(Members$q || (Members$q = {}));
|
|
5505
|
+
function RootImpl$w({
|
|
5128
5506
|
drawingId,
|
|
5129
5507
|
pluginId
|
|
5130
5508
|
}) {
|
|
5131
5509
|
const {
|
|
5132
5510
|
objectId
|
|
5133
5511
|
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
5134
|
-
const csys = useRefsParam(drawingId, objectId, Members$
|
|
5135
|
-
const diameter = useNumParam(drawingId, objectId, Members$
|
|
5136
|
-
const height = useNumParam(drawingId, objectId, Members$
|
|
5512
|
+
const csys = useRefsParam(drawingId, objectId, Members$q.CSys);
|
|
5513
|
+
const diameter = useNumParam(drawingId, objectId, Members$q.Diameter);
|
|
5514
|
+
const height = useNumParam(drawingId, objectId, Members$q.Height);
|
|
5137
5515
|
const update = React__default.useCallback(() => {
|
|
5138
5516
|
return ccAPI.feature.updateCylinder(drawingId, objectId, csys.serverValue, diameter.serverValue, height.serverValue);
|
|
5139
5517
|
}, [drawingId, objectId, csys, diameter, height]);
|
|
@@ -5164,40 +5542,237 @@ function RootImpl$v({
|
|
|
5164
5542
|
allowExpr: true
|
|
5165
5543
|
}), /*#__PURE__*/React__default.createElement(NumberEditor, {
|
|
5166
5544
|
drawingId: drawingId,
|
|
5167
|
-
caption: "Height",
|
|
5168
|
-
param: height,
|
|
5169
|
-
validator: acceptableRange({
|
|
5170
|
-
value: 0,
|
|
5171
|
-
isInclusive: false
|
|
5172
|
-
}, undefined),
|
|
5173
|
-
allowExpr: true
|
|
5545
|
+
caption: "Height",
|
|
5546
|
+
param: height,
|
|
5547
|
+
validator: acceptableRange({
|
|
5548
|
+
value: 0,
|
|
5549
|
+
isInclusive: false
|
|
5550
|
+
}, undefined),
|
|
5551
|
+
allowExpr: true
|
|
5552
|
+
}));
|
|
5553
|
+
}
|
|
5554
|
+
const Root$w = ({
|
|
5555
|
+
drawingId,
|
|
5556
|
+
pluginId
|
|
5557
|
+
}) => {
|
|
5558
|
+
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5559
|
+
drawingId: drawingId,
|
|
5560
|
+
pluginId: pluginId
|
|
5561
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$w, {
|
|
5562
|
+
drawingId: drawingId,
|
|
5563
|
+
pluginId: pluginId
|
|
5564
|
+
}));
|
|
5565
|
+
};
|
|
5566
|
+
|
|
5567
|
+
const description$w = {
|
|
5568
|
+
name: 'Cylinder',
|
|
5569
|
+
version: '1.0.0',
|
|
5570
|
+
author: 'Ledas',
|
|
5571
|
+
persistent: true,
|
|
5572
|
+
visible: false,
|
|
5573
|
+
global: false
|
|
5574
|
+
};
|
|
5575
|
+
|
|
5576
|
+
var index$w = /*#__PURE__*/Object.freeze({
|
|
5577
|
+
__proto__: null,
|
|
5578
|
+
Root: Root$w,
|
|
5579
|
+
description: description$w
|
|
5580
|
+
});
|
|
5581
|
+
|
|
5582
|
+
var Members$p;
|
|
5583
|
+
(function (Members) {
|
|
5584
|
+
Members["References"] = "references";
|
|
5585
|
+
})(Members$p || (Members$p = {}));
|
|
5586
|
+
const RootImpl$v = ({
|
|
5587
|
+
drawingId,
|
|
5588
|
+
pluginId
|
|
5589
|
+
}) => {
|
|
5590
|
+
const {
|
|
5591
|
+
objectId
|
|
5592
|
+
} = usePlugin(drawingId, pluginId, plugin => plugin);
|
|
5593
|
+
const refs = useRefsParam(drawingId, objectId, Members$p.References);
|
|
5594
|
+
const {
|
|
5595
|
+
Checkbox
|
|
5596
|
+
} = useBuerli(buerli => buerli.options.elements);
|
|
5597
|
+
const [isFaceSelectionActive, setIsFaceSelectionActive] = useState(false);
|
|
5598
|
+
const update = React__default.useCallback(() => {
|
|
5599
|
+
return ccAPI.feature.updateCompositeCurve(drawingId, objectId, refs.serverValue);
|
|
5600
|
+
}, [drawingId, objectId, refs]);
|
|
5601
|
+
return /*#__PURE__*/React__default.createElement(PluginForm, {
|
|
5602
|
+
drawingId: drawingId,
|
|
5603
|
+
pluginId: pluginId,
|
|
5604
|
+
update: update,
|
|
5605
|
+
params: {
|
|
5606
|
+
refs
|
|
5607
|
+
}
|
|
5608
|
+
}, /*#__PURE__*/React__default.createElement(Checkbox, {
|
|
5609
|
+
checked: isFaceSelectionActive,
|
|
5610
|
+
onChange: e => setIsFaceSelectionActive(e.target.checked)
|
|
5611
|
+
}, "Face selection"), isFaceSelectionActive && /*#__PURE__*/React__default.createElement(RefsEditor, {
|
|
5612
|
+
drawingId: drawingId,
|
|
5613
|
+
caption: "Curve References",
|
|
5614
|
+
param: refs,
|
|
5615
|
+
customIdPicker: pickGrOrObjId,
|
|
5616
|
+
filter: (scope, data) => edgeFilter(scope, data) || ccLineFilter(scope, data) || ccArcFilter(scope, data) || ccCircleFilter(scope, data) || meshFilter(scope, data)
|
|
5617
|
+
}), !isFaceSelectionActive && /*#__PURE__*/React__default.createElement(RefsEditor, {
|
|
5618
|
+
drawingId: drawingId,
|
|
5619
|
+
caption: "Curve References",
|
|
5620
|
+
param: refs,
|
|
5621
|
+
customIdPicker: pickGrOrObjId,
|
|
5622
|
+
filter: (scope, data) => edgeFilter(scope, data) || ccLineFilter(scope, data) || ccArcFilter(scope, data) || ccCircleFilter(scope, data) || loopFilter(scope, data)
|
|
5623
|
+
}));
|
|
5624
|
+
};
|
|
5625
|
+
const Root$v = ({
|
|
5626
|
+
drawingId,
|
|
5627
|
+
pluginId
|
|
5628
|
+
}) => {
|
|
5629
|
+
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5630
|
+
drawingId: drawingId,
|
|
5631
|
+
pluginId: pluginId
|
|
5632
|
+
}, /*#__PURE__*/React__default.createElement(RootImpl$v, {
|
|
5633
|
+
drawingId: drawingId,
|
|
5634
|
+
pluginId: pluginId
|
|
5635
|
+
}));
|
|
5636
|
+
};
|
|
5637
|
+
|
|
5638
|
+
const getHighlightedColor = (isGHovered, isGSelected, isSHovered, isSSelected) => {
|
|
5639
|
+
if (isSHovered) {
|
|
5640
|
+
return '#3280ff';
|
|
5641
|
+
}
|
|
5642
|
+
if (isSSelected) {
|
|
5643
|
+
return '#8040c0';
|
|
5644
|
+
}
|
|
5645
|
+
if (isGHovered) {
|
|
5646
|
+
return 'green';
|
|
5647
|
+
}
|
|
5648
|
+
if (isGSelected) {
|
|
5649
|
+
return 'red';
|
|
5650
|
+
}
|
|
5651
|
+
return undefined;
|
|
5652
|
+
};
|
|
5653
|
+
|
|
5654
|
+
const FatLine = ({
|
|
5655
|
+
line,
|
|
5656
|
+
handlers,
|
|
5657
|
+
userData,
|
|
5658
|
+
color,
|
|
5659
|
+
lineWidth = 3.0
|
|
5660
|
+
}) => {
|
|
5661
|
+
const {
|
|
5662
|
+
size
|
|
5663
|
+
} = useThree();
|
|
5664
|
+
const primitive = line.geometry;
|
|
5665
|
+
const lg = React__default.useMemo(() => {
|
|
5666
|
+
return new LineGeometry().setPositions(primitive.attributes.position.array);
|
|
5667
|
+
}, [primitive]);
|
|
5668
|
+
const resolution = React__default.useMemo(() => new THREE.Vector2(size.width, size.height), [size]);
|
|
5669
|
+
return /*#__PURE__*/React__default.createElement("line2", _extends({
|
|
5670
|
+
geometry: lg
|
|
5671
|
+
}, handlers, {
|
|
5672
|
+
userData: userData,
|
|
5673
|
+
renderOrder: 600
|
|
5674
|
+
}), /*#__PURE__*/React__default.createElement("lineMaterial", {
|
|
5675
|
+
attach: "material",
|
|
5676
|
+
color: color || new THREE.Color('black'),
|
|
5677
|
+
opacity: 1.0,
|
|
5678
|
+
linewidth: lineWidth,
|
|
5679
|
+
dashed: false,
|
|
5680
|
+
resolution: resolution,
|
|
5681
|
+
transparent: true,
|
|
5682
|
+
depthTest: true,
|
|
5683
|
+
depthWrite: false,
|
|
5684
|
+
polygonOffset: true,
|
|
5685
|
+
polygonOffsetUnits: -1000
|
|
5686
|
+
}));
|
|
5687
|
+
};
|
|
5688
|
+
const CompositeCurveObj = ({
|
|
5689
|
+
drawingId,
|
|
5690
|
+
color,
|
|
5691
|
+
lineWidth,
|
|
5692
|
+
userData,
|
|
5693
|
+
handlers,
|
|
5694
|
+
objectId
|
|
5695
|
+
}) => {
|
|
5696
|
+
const compCurveObj = useDrawing(drawingId, drawing => drawing.structure.tree[objectId]);
|
|
5697
|
+
const curveEntityIds = compCurveObj == null ? void 0 : compCurveObj.children; // CC_CurveEntity ids
|
|
5698
|
+
const curveEntityId = curveEntityIds ? curveEntityIds[0] : -1;
|
|
5699
|
+
const curveEntityObj = useDrawing(drawingId, drawing => drawing.structure.tree[curveEntityId]);
|
|
5700
|
+
const cadEntityIds = curveEntityIds && (curveEntityObj == null ? void 0 : curveEntityObj.geometryIdList); // cad entity ids
|
|
5701
|
+
const cadEntityId = cadEntityIds ? cadEntityIds[0] : -1;
|
|
5702
|
+
const entity = useDrawing(drawingId, d => d.geometry.cache[cadEntityId]); // cad entity (curve array)
|
|
5703
|
+
|
|
5704
|
+
const items = React__default.useMemo(() => {
|
|
5705
|
+
if (!entity || entity.meshes.length > 0) return [];
|
|
5706
|
+
return [...entity.lines, ...entity.edges, ...entity.arcs];
|
|
5707
|
+
}, [entity]);
|
|
5708
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, items.map(item => /*#__PURE__*/React__default.createElement(FatLine, {
|
|
5709
|
+
key: item.graphicId,
|
|
5710
|
+
line: item,
|
|
5711
|
+
handlers: handlers,
|
|
5712
|
+
userData: userData,
|
|
5713
|
+
color: color,
|
|
5714
|
+
lineWidth: lineWidth
|
|
5715
|
+
})));
|
|
5716
|
+
};
|
|
5717
|
+
|
|
5718
|
+
const ViewImpl$g = ({
|
|
5719
|
+
drawingId,
|
|
5720
|
+
pluginId
|
|
5721
|
+
}) => {
|
|
5722
|
+
const {
|
|
5723
|
+
objectId
|
|
5724
|
+
} = usePlugin(drawingId, pluginId, pluginState => pluginState);
|
|
5725
|
+
const isActive = useDrawing(drawingId, drawing => drawing.plugin.active.feature === pluginId);
|
|
5726
|
+
const {
|
|
5727
|
+
isGHovered,
|
|
5728
|
+
isGSelected,
|
|
5729
|
+
isSHovered,
|
|
5730
|
+
isSSelected,
|
|
5731
|
+
handlers
|
|
5732
|
+
} = useTreeObjInteraction(drawingId, objectId);
|
|
5733
|
+
const color = getHighlightedColor(isGHovered, isGSelected, isSHovered, isSSelected) || 0x111111;
|
|
5734
|
+
return /*#__PURE__*/React__default.createElement(HUD, null, !isActive && /*#__PURE__*/React__default.createElement(CompositeCurveObj, {
|
|
5735
|
+
drawingId: drawingId,
|
|
5736
|
+
objectId: objectId // CC_CompositeCurve
|
|
5737
|
+
,
|
|
5738
|
+
color: color,
|
|
5739
|
+
lineWidth: 2.0 // ?
|
|
5740
|
+
,
|
|
5741
|
+
userData: {
|
|
5742
|
+
objId: objectId,
|
|
5743
|
+
onHUD: true
|
|
5744
|
+
},
|
|
5745
|
+
handlers: handlers
|
|
5174
5746
|
}));
|
|
5175
|
-
}
|
|
5176
|
-
const
|
|
5747
|
+
};
|
|
5748
|
+
const View$g = ({
|
|
5177
5749
|
drawingId,
|
|
5178
5750
|
pluginId
|
|
5179
5751
|
}) => {
|
|
5180
5752
|
return /*#__PURE__*/React__default.createElement(FtPluginValidator, {
|
|
5181
5753
|
drawingId: drawingId,
|
|
5182
|
-
pluginId: pluginId
|
|
5183
|
-
|
|
5754
|
+
pluginId: pluginId,
|
|
5755
|
+
inCanvas: true
|
|
5756
|
+
}, /*#__PURE__*/React__default.createElement(ViewImpl$g, {
|
|
5184
5757
|
drawingId: drawingId,
|
|
5185
5758
|
pluginId: pluginId
|
|
5186
5759
|
}));
|
|
5187
5760
|
};
|
|
5188
5761
|
|
|
5189
5762
|
const description$v = {
|
|
5190
|
-
name: '
|
|
5763
|
+
name: 'CompositeCurve',
|
|
5191
5764
|
version: '1.0.0',
|
|
5192
|
-
author: '
|
|
5765
|
+
author: 'AWV',
|
|
5193
5766
|
persistent: true,
|
|
5194
5767
|
visible: false,
|
|
5195
|
-
global: false
|
|
5768
|
+
global: false,
|
|
5769
|
+
initialState: addMembers
|
|
5196
5770
|
};
|
|
5197
5771
|
|
|
5198
5772
|
var index$v = /*#__PURE__*/Object.freeze({
|
|
5199
5773
|
__proto__: null,
|
|
5200
5774
|
Root: Root$v,
|
|
5775
|
+
View: View$g,
|
|
5201
5776
|
description: description$v
|
|
5202
5777
|
});
|
|
5203
5778
|
|
|
@@ -5428,7 +6003,7 @@ const RootImpl$s = ({
|
|
|
5428
6003
|
param: offset1,
|
|
5429
6004
|
allowExpr: true
|
|
5430
6005
|
}, type.userValue === ChamferType.TWO_DISTANCES && /*#__PURE__*/React__default.createElement(Button, {
|
|
5431
|
-
iconSrc: img$
|
|
6006
|
+
iconSrc: img$18,
|
|
5432
6007
|
onClick: switchDirections
|
|
5433
6008
|
})), type.userValue === ChamferType.TWO_DISTANCES && /*#__PURE__*/React__default.createElement(NumberEditor, {
|
|
5434
6009
|
drawingId: drawingId,
|
|
@@ -6222,8 +6797,8 @@ const Digits = ({
|
|
|
6222
6797
|
|
|
6223
6798
|
const vectorToString = (point, digits) => `${point.toArray().map(n => MathUtils.round(n, digits)).join(', ')}`;
|
|
6224
6799
|
|
|
6225
|
-
function ownKeys$
|
|
6226
|
-
function _objectSpread$
|
|
6800
|
+
function ownKeys$q(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6801
|
+
function _objectSpread$q(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$q(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$q(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
6227
6802
|
const Excluded = [GraphicType.LOOP].concat(EntityTypes);
|
|
6228
6803
|
const RootImpl$j = ({
|
|
6229
6804
|
drawingId,
|
|
@@ -6294,7 +6869,7 @@ const Output = ({
|
|
|
6294
6869
|
const {
|
|
6295
6870
|
value
|
|
6296
6871
|
} = res.measureData;
|
|
6297
|
-
return _objectSpread$
|
|
6872
|
+
return _objectSpread$q(_objectSpread$q({}, res), {}, {
|
|
6298
6873
|
asString: MathUtils.round(value, digits)
|
|
6299
6874
|
});
|
|
6300
6875
|
}
|
|
@@ -6304,13 +6879,13 @@ const Output = ({
|
|
|
6304
6879
|
const {
|
|
6305
6880
|
value
|
|
6306
6881
|
} = res.measureData;
|
|
6307
|
-
return _objectSpread$
|
|
6882
|
+
return _objectSpread$q(_objectSpread$q({}, res), {}, {
|
|
6308
6883
|
asString: vectorToString(value, digits)
|
|
6309
6884
|
});
|
|
6310
6885
|
}
|
|
6311
6886
|
}
|
|
6312
6887
|
}
|
|
6313
|
-
return _objectSpread$
|
|
6888
|
+
return _objectSpread$q(_objectSpread$q({}, res), {}, {
|
|
6314
6889
|
asString: ''
|
|
6315
6890
|
});
|
|
6316
6891
|
});
|
|
@@ -6341,198 +6916,6 @@ const Root$j = ({
|
|
|
6341
6916
|
}));
|
|
6342
6917
|
};
|
|
6343
6918
|
|
|
6344
|
-
const Point$2 = ({
|
|
6345
|
-
position,
|
|
6346
|
-
radius,
|
|
6347
|
-
color,
|
|
6348
|
-
opacity = 1,
|
|
6349
|
-
handlers,
|
|
6350
|
-
userData
|
|
6351
|
-
}) => {
|
|
6352
|
-
return /*#__PURE__*/React__default.createElement("mesh", _extends({
|
|
6353
|
-
position: position.clone(),
|
|
6354
|
-
userData: userData
|
|
6355
|
-
}, handlers), /*#__PURE__*/React__default.createElement("sphereGeometry", {
|
|
6356
|
-
attach: "geometry",
|
|
6357
|
-
args: [radius, 32, 16]
|
|
6358
|
-
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
6359
|
-
attach: "material",
|
|
6360
|
-
color: color,
|
|
6361
|
-
opacity: opacity,
|
|
6362
|
-
transparent: opacity < 1
|
|
6363
|
-
}));
|
|
6364
|
-
};
|
|
6365
|
-
const Arrow = ({
|
|
6366
|
-
position,
|
|
6367
|
-
direction,
|
|
6368
|
-
length,
|
|
6369
|
-
width,
|
|
6370
|
-
color,
|
|
6371
|
-
opacity = 1,
|
|
6372
|
-
handlers,
|
|
6373
|
-
userData,
|
|
6374
|
-
withCone = true
|
|
6375
|
-
}) => {
|
|
6376
|
-
const cylinderWith = width;
|
|
6377
|
-
const coneWidth = cylinderWith * 1.5;
|
|
6378
|
-
const coneLength = Math.min(coneWidth / 0.12, length / 2.0);
|
|
6379
|
-
const cylinderLength = withCone ? length - coneLength : length;
|
|
6380
|
-
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
6381
|
-
position: position.clone(),
|
|
6382
|
-
quaternion: new THREE.Quaternion().setFromUnitVectors(new THREE.Vector3(0, 1, 0), direction.clone().normalize())
|
|
6383
|
-
}, handlers, {
|
|
6384
|
-
userData: userData
|
|
6385
|
-
}), /*#__PURE__*/React__default.createElement("mesh", {
|
|
6386
|
-
position: new THREE.Vector3(0, cylinderLength / 2.0, 0),
|
|
6387
|
-
renderOrder: 500,
|
|
6388
|
-
userData: userData
|
|
6389
|
-
}, /*#__PURE__*/React__default.createElement("cylinderGeometry", {
|
|
6390
|
-
attach: "geometry",
|
|
6391
|
-
args: [cylinderWith, cylinderWith, cylinderLength, 24, 1]
|
|
6392
|
-
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
6393
|
-
attach: "material",
|
|
6394
|
-
color: color,
|
|
6395
|
-
opacity: opacity,
|
|
6396
|
-
transparent: true
|
|
6397
|
-
})), withCone && /*#__PURE__*/React__default.createElement("mesh", {
|
|
6398
|
-
position: new THREE.Vector3(0, cylinderLength + coneLength / 2.0, 0),
|
|
6399
|
-
renderOrder: 500,
|
|
6400
|
-
userData: userData
|
|
6401
|
-
}, /*#__PURE__*/React__default.createElement("coneGeometry", {
|
|
6402
|
-
attach: "geometry",
|
|
6403
|
-
args: [coneWidth, coneLength, 24, 1]
|
|
6404
|
-
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
6405
|
-
attach: "material",
|
|
6406
|
-
color: color,
|
|
6407
|
-
opacity: opacity,
|
|
6408
|
-
transparent: opacity < 1
|
|
6409
|
-
})));
|
|
6410
|
-
};
|
|
6411
|
-
const OriginPoint = ({
|
|
6412
|
-
position,
|
|
6413
|
-
color,
|
|
6414
|
-
opacity = 1,
|
|
6415
|
-
handlers,
|
|
6416
|
-
userData
|
|
6417
|
-
}) => {
|
|
6418
|
-
return /*#__PURE__*/React__default.createElement(Point$2, {
|
|
6419
|
-
position: position ? position.clone() : new THREE.Vector3(),
|
|
6420
|
-
radius: 2,
|
|
6421
|
-
color: color,
|
|
6422
|
-
opacity: opacity,
|
|
6423
|
-
handlers: handlers,
|
|
6424
|
-
userData: userData
|
|
6425
|
-
});
|
|
6426
|
-
};
|
|
6427
|
-
const AxisArrow = ({
|
|
6428
|
-
position,
|
|
6429
|
-
direction,
|
|
6430
|
-
color,
|
|
6431
|
-
opacity = 1,
|
|
6432
|
-
handlers,
|
|
6433
|
-
userData,
|
|
6434
|
-
length,
|
|
6435
|
-
width,
|
|
6436
|
-
withCone = true
|
|
6437
|
-
}) => {
|
|
6438
|
-
return /*#__PURE__*/React__default.createElement(Arrow, {
|
|
6439
|
-
position: position ? position.clone() : new THREE.Vector3(),
|
|
6440
|
-
direction: direction.clone(),
|
|
6441
|
-
length: length || 21,
|
|
6442
|
-
width: width || 1,
|
|
6443
|
-
color: color,
|
|
6444
|
-
opacity: opacity,
|
|
6445
|
-
handlers: handlers,
|
|
6446
|
-
userData: userData,
|
|
6447
|
-
withCone: withCone
|
|
6448
|
-
});
|
|
6449
|
-
};
|
|
6450
|
-
|
|
6451
|
-
//TODO: don't use any
|
|
6452
|
-
const Csys = ({
|
|
6453
|
-
matrix,
|
|
6454
|
-
opacity,
|
|
6455
|
-
handlers,
|
|
6456
|
-
color,
|
|
6457
|
-
userData
|
|
6458
|
-
}) => {
|
|
6459
|
-
const position = new THREE.Vector3().setFromMatrixPosition(matrix);
|
|
6460
|
-
const ref = useScale$1(position.clone(), sf => [2 * sf, 2 * sf, 2 * sf]);
|
|
6461
|
-
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
6462
|
-
matrix: matrix,
|
|
6463
|
-
matrixAutoUpdate: false,
|
|
6464
|
-
userData: userData
|
|
6465
|
-
}, handlers), /*#__PURE__*/React__default.createElement("group", {
|
|
6466
|
-
ref: ref
|
|
6467
|
-
}, /*#__PURE__*/React__default.createElement(OriginPoint, {
|
|
6468
|
-
position: new THREE.Vector3(),
|
|
6469
|
-
color: color || 0x000000,
|
|
6470
|
-
opacity: opacity,
|
|
6471
|
-
userData: userData
|
|
6472
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6473
|
-
position: new THREE.Vector3(),
|
|
6474
|
-
direction: new THREE.Vector3(1, 0, 0),
|
|
6475
|
-
color: color || 0xd52828,
|
|
6476
|
-
opacity: opacity,
|
|
6477
|
-
userData: userData
|
|
6478
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6479
|
-
position: new THREE.Vector3(),
|
|
6480
|
-
direction: new THREE.Vector3(0, 1, 0),
|
|
6481
|
-
color: color || 0x28a628,
|
|
6482
|
-
opacity: opacity,
|
|
6483
|
-
userData: userData
|
|
6484
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6485
|
-
position: new THREE.Vector3(),
|
|
6486
|
-
direction: new THREE.Vector3(0, 0, 1),
|
|
6487
|
-
color: color || 0x2828d7,
|
|
6488
|
-
opacity: opacity,
|
|
6489
|
-
userData: userData
|
|
6490
|
-
})));
|
|
6491
|
-
};
|
|
6492
|
-
const SelectedCsys = ({
|
|
6493
|
-
matrix,
|
|
6494
|
-
opacity = 1.0,
|
|
6495
|
-
handlers,
|
|
6496
|
-
color,
|
|
6497
|
-
userData
|
|
6498
|
-
}) => {
|
|
6499
|
-
const position = new THREE.Vector3().setFromMatrixPosition(matrix);
|
|
6500
|
-
const ref = useScale$1(position.clone(), sf => [2 * sf, 2 * sf, 2 * sf]);
|
|
6501
|
-
return /*#__PURE__*/React__default.createElement("group", _extends({
|
|
6502
|
-
matrix: matrix,
|
|
6503
|
-
matrixAutoUpdate: false
|
|
6504
|
-
}, handlers), /*#__PURE__*/React__default.createElement("group", {
|
|
6505
|
-
ref: ref
|
|
6506
|
-
}, /*#__PURE__*/React__default.createElement(OriginPoint, {
|
|
6507
|
-
position: new THREE.Vector3(),
|
|
6508
|
-
color: color || 0x000000,
|
|
6509
|
-
opacity: opacity,
|
|
6510
|
-
userData: userData
|
|
6511
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6512
|
-
position: new THREE.Vector3(),
|
|
6513
|
-
direction: new THREE.Vector3(1, 0, 0),
|
|
6514
|
-
color: color || 0xd52828,
|
|
6515
|
-
opacity: opacity,
|
|
6516
|
-
userData: userData,
|
|
6517
|
-
withCone: false
|
|
6518
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6519
|
-
position: new THREE.Vector3(),
|
|
6520
|
-
direction: new THREE.Vector3(0, 1, 0),
|
|
6521
|
-
color: color || 0x28a628,
|
|
6522
|
-
opacity: opacity,
|
|
6523
|
-
userData: userData,
|
|
6524
|
-
withCone: false
|
|
6525
|
-
}), /*#__PURE__*/React__default.createElement(AxisArrow, {
|
|
6526
|
-
position: new THREE.Vector3(),
|
|
6527
|
-
direction: new THREE.Vector3(0, 0, 1),
|
|
6528
|
-
width: 1.25,
|
|
6529
|
-
length: 45,
|
|
6530
|
-
color: color || 0x2828d7,
|
|
6531
|
-
opacity: opacity,
|
|
6532
|
-
userData: userData
|
|
6533
|
-
})));
|
|
6534
|
-
};
|
|
6535
|
-
|
|
6536
6919
|
const dWidthCoeff = 15;
|
|
6537
6920
|
const Distance = ({
|
|
6538
6921
|
p1,
|
|
@@ -6839,7 +7222,7 @@ let HandlersList;
|
|
|
6839
7222
|
HandlersList["TRIM"] = "trim";
|
|
6840
7223
|
HandlersList["SPLIT"] = "split";
|
|
6841
7224
|
HandlersList["USEREF"] = "useReference";
|
|
6842
|
-
HandlersList["
|
|
7225
|
+
HandlersList["SSELECT"] = "sSelect";
|
|
6843
7226
|
})(HandlersList || (HandlersList = {}));
|
|
6844
7227
|
let TmpObjClasses;
|
|
6845
7228
|
(function (TmpObjClasses) {
|
|
@@ -7025,18 +7408,22 @@ const tolerance$7 = 1e-6;
|
|
|
7025
7408
|
*/
|
|
7026
7409
|
const deltaTolerance = 4;
|
|
7027
7410
|
|
|
7028
|
-
const
|
|
7029
|
-
|
|
7411
|
+
const description$i = {
|
|
7412
|
+
name: 'Sketcher',
|
|
7413
|
+
version: '1.0.0',
|
|
7414
|
+
author: 'Ledas',
|
|
7415
|
+
persistent: true,
|
|
7416
|
+
visible: false,
|
|
7417
|
+
global: false,
|
|
7418
|
+
initialState: {
|
|
7030
7419
|
alwaysShowConstr: false,
|
|
7031
7420
|
// By default, all constraints are hidden, they appear only if corresponding graphics is hovered. If the flag is true all constrains are shown.
|
|
7032
7421
|
showCoincidence: false,
|
|
7033
7422
|
// By default, coincidence constraints are not shown.
|
|
7034
|
-
constraintsToGeometry: {},
|
|
7035
|
-
// When user hovers a constraint corresponding graphics should be highlighted too. This map is used to highlight graphics.
|
|
7036
7423
|
showRigidSets: false,
|
|
7037
7424
|
// Shows only rigidSet. Needed in CopyPattern.
|
|
7038
7425
|
activeHandler: undefined,
|
|
7039
|
-
// Defines which hanlder is
|
|
7426
|
+
// Defines which hanlder is active now. (When sketcher is just enabled "drag" handler is enabled)
|
|
7040
7427
|
handlers: {},
|
|
7041
7428
|
// Since handlers also have internal state we need to store it somewhere. This object contains states of all handlers.
|
|
7042
7429
|
tmpObjects: {},
|
|
@@ -7046,8 +7433,11 @@ const getInitialState = () => {
|
|
|
7046
7433
|
interaction: {
|
|
7047
7434
|
cycle: 0,
|
|
7048
7435
|
objects: [],
|
|
7049
|
-
|
|
7436
|
+
lastHoveredPos: {},
|
|
7437
|
+
// A map for positions where constraints / regions were hovered last time.
|
|
7438
|
+
constraintsToGeometry: {} // When user hovers a constraint corresponding graphics should be highlighted too. This map is used to highlight graphics.
|
|
7050
7439
|
},
|
|
7440
|
+
|
|
7051
7441
|
// Contains information about objects under the pointer (`interaction.objects[interaction.cycle]` should equal `hovered`)
|
|
7052
7442
|
isDragged: false,
|
|
7053
7443
|
// When used drags some objects, this should equal true.
|
|
@@ -7055,8 +7445,6 @@ const getInitialState = () => {
|
|
|
7055
7445
|
// Scale for graphics dependent on zoom. (It's used only in Arcs and Circles and should be removed when these object are reimplemented)
|
|
7056
7446
|
step: 1,
|
|
7057
7447
|
// Step for sketch grid dependent on camera zoom.
|
|
7058
|
-
dimPluginId: undefined,
|
|
7059
|
-
// Id of the dimension plugin which is embedded into Sketch plugin.
|
|
7060
7448
|
mousePos: undefined,
|
|
7061
7449
|
// A vector contains mouse position.
|
|
7062
7450
|
drawnObjectsRef: undefined,
|
|
@@ -7066,16 +7454,7 @@ const getInitialState = () => {
|
|
|
7066
7454
|
cursor: null,
|
|
7067
7455
|
// A cursor name to be set in the page body; should match some CSS value.
|
|
7068
7456
|
needsUpdate: 0
|
|
7069
|
-
}
|
|
7070
|
-
};
|
|
7071
|
-
const description$i = {
|
|
7072
|
-
name: 'Sketcher',
|
|
7073
|
-
version: '1.0.0',
|
|
7074
|
-
author: 'Ledas',
|
|
7075
|
-
persistent: true,
|
|
7076
|
-
visible: false,
|
|
7077
|
-
global: false,
|
|
7078
|
-
initialState: getInitialState()
|
|
7457
|
+
}
|
|
7079
7458
|
};
|
|
7080
7459
|
|
|
7081
7460
|
function getSketchState(drawingId, pluginId) {
|
|
@@ -7085,9 +7464,9 @@ function getSketchState(drawingId, pluginId) {
|
|
|
7085
7464
|
}
|
|
7086
7465
|
return plugin.state;
|
|
7087
7466
|
}
|
|
7088
|
-
|
|
7089
|
-
function ownKeys$
|
|
7090
|
-
function _objectSpread$
|
|
7467
|
+
|
|
7468
|
+
function ownKeys$p(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7469
|
+
function _objectSpread$p(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$p(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$p(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7091
7470
|
function CreateAngle(drawingId, pluginId) {
|
|
7092
7471
|
const {
|
|
7093
7472
|
set
|
|
@@ -7128,8 +7507,8 @@ function CreateAngle(drawingId, pluginId) {
|
|
|
7128
7507
|
set(state_ => {
|
|
7129
7508
|
const tmpAngularDimension = state_.tmpObjects[tmpDimensionId];
|
|
7130
7509
|
return {
|
|
7131
|
-
tmpObjects: _objectSpread$
|
|
7132
|
-
[tmpDimensionId]: _objectSpread$
|
|
7510
|
+
tmpObjects: _objectSpread$p(_objectSpread$p({}, state_.tmpObjects), {}, {
|
|
7511
|
+
[tmpDimensionId]: _objectSpread$p(_objectSpread$p({}, tmpAngularDimension), params)
|
|
7133
7512
|
})
|
|
7134
7513
|
};
|
|
7135
7514
|
});
|
|
@@ -7155,7 +7534,7 @@ function CreateAngle(drawingId, pluginId) {
|
|
|
7155
7534
|
const dir1 = linesInfo.dir1;
|
|
7156
7535
|
const center = linesInfo.center;
|
|
7157
7536
|
const dimPos = center.clone().addScaledVector(dir0.clone().add(dir1).normalize(), 10);
|
|
7158
|
-
const tmpAngularDimension = _objectSpread$
|
|
7537
|
+
const tmpAngularDimension = _objectSpread$p(_objectSpread$p({
|
|
7159
7538
|
class: TmpObjClasses.AngularDimension,
|
|
7160
7539
|
id: tmpDimensionId
|
|
7161
7540
|
}, linesInfo), {}, {
|
|
@@ -7240,23 +7619,28 @@ const rollUpPoints = (drawingId, id1, id2) => {
|
|
|
7240
7619
|
const parent = tree[obj1.parent || NOCCID];
|
|
7241
7620
|
return ccUtils.base.isA(obj1 == null ? void 0 : obj1.class, CCClasses.CCPoint) && ccUtils.base.isA(obj2 == null ? void 0 : obj2.class, CCClasses.CCPoint) && obj1.parent === obj2.parent && ccUtils.base.isA((parent == null ? void 0 : parent.class) || '', CCClasses.CCLine) ? [obj1.parent] : [id1, id2];
|
|
7242
7621
|
};
|
|
7243
|
-
const
|
|
7244
|
-
var
|
|
7245
|
-
const
|
|
7246
|
-
const
|
|
7247
|
-
if (
|
|
7248
|
-
|
|
7622
|
+
const getEntities = (drawingId, objectId) => {
|
|
7623
|
+
var _obj$members2;
|
|
7624
|
+
const tree = getDrawing(drawingId).structure.tree;
|
|
7625
|
+
const obj = tree[objectId];
|
|
7626
|
+
if (isSketchRegion(obj)) {
|
|
7627
|
+
var _obj$members, _obj$members$curves;
|
|
7628
|
+
return (_obj$members = obj.members) == null ? void 0 : (_obj$members$curves = _obj$members.curves) == null ? void 0 : _obj$members$curves.members.map(curve => curve.value);
|
|
7629
|
+
}
|
|
7630
|
+
const entities = ((_obj$members2 = obj.members) == null ? void 0 : _obj$members2.entities).members.map(entity => entity.value);
|
|
7631
|
+
if (ccUtils.base.isA(obj.class, CCClasses.CC2DOffsetConstraint) || ccUtils.base.isA(obj.class, CCClasses.CC2DHorizontalDistanceConstraint) || ccUtils.base.isA(obj.class, CCClasses.CC2DVerticalDistanceConstraint)) {
|
|
7632
|
+
const [id1, id2] = entities;
|
|
7249
7633
|
return rollUpPoints(drawingId, id1, id2);
|
|
7250
7634
|
}
|
|
7251
|
-
if (ccUtils.base.isA(
|
|
7252
|
-
const [id1, id2, id3] = entities
|
|
7635
|
+
if (ccUtils.base.isA(obj.class, CCClasses.CC2DMidpointConstraint)) {
|
|
7636
|
+
const [id1, id2, id3] = entities;
|
|
7253
7637
|
return [...rollUpPoints(drawingId, id1, id3), id2];
|
|
7254
7638
|
}
|
|
7255
|
-
if (ccUtils.base.isA(
|
|
7256
|
-
const [id1, id2, id3, id4] = entities
|
|
7639
|
+
if (ccUtils.base.isA(obj.class, CCClasses.CC2DEqualLengthConstraint)) {
|
|
7640
|
+
const [id1, id2, id3, id4] = entities;
|
|
7257
7641
|
return [...rollUpPoints(drawingId, id1, id2), ...rollUpPoints(drawingId, id3, id4)];
|
|
7258
7642
|
}
|
|
7259
|
-
return entities
|
|
7643
|
+
return entities;
|
|
7260
7644
|
};
|
|
7261
7645
|
|
|
7262
7646
|
function getGeometryPriority(object) {
|
|
@@ -7269,7 +7653,7 @@ function getGeometryPriority(object) {
|
|
|
7269
7653
|
if (ccUtils.base.isA(object.class, CCClasses.CCCircle)) {
|
|
7270
7654
|
return 3;
|
|
7271
7655
|
}
|
|
7272
|
-
if (is2DConstraint(object)) {
|
|
7656
|
+
if (is2DConstraint(object) || isSketchRegion(object)) {
|
|
7273
7657
|
return 4;
|
|
7274
7658
|
}
|
|
7275
7659
|
if (ccUtils.base.isA(object.class, CCClasses.CCPoint)) {
|
|
@@ -7278,8 +7662,8 @@ function getGeometryPriority(object) {
|
|
|
7278
7662
|
return -1;
|
|
7279
7663
|
}
|
|
7280
7664
|
|
|
7281
|
-
function ownKeys$
|
|
7282
|
-
function _objectSpread$
|
|
7665
|
+
function ownKeys$o(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
7666
|
+
function _objectSpread$o(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$o(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$o(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7283
7667
|
let timerId;
|
|
7284
7668
|
const projectPointOnGeometry = (point, geometryId, tree) => {
|
|
7285
7669
|
const geometry = tree[geometryId];
|
|
@@ -7312,60 +7696,48 @@ const setHoverState = (drawingId, pluginId, cycle, objects, hoverPos) => {
|
|
|
7312
7696
|
const tree = drawing.structure.tree;
|
|
7313
7697
|
const hoveredId = objects[cycle % objects.length];
|
|
7314
7698
|
const hoveredObject = tree[hoveredId];
|
|
7315
|
-
const selected = drawing.interaction.selected || [];
|
|
7316
7699
|
const setHovered = drawing.api.interaction.setHovered;
|
|
7317
|
-
const setSelected = drawing.api.interaction.setSelected;
|
|
7318
7700
|
if (hoveredObject) {
|
|
7319
7701
|
setHovered(createInfo({
|
|
7320
7702
|
objectId: hoveredId,
|
|
7321
7703
|
prodRefId: curProduct
|
|
7322
7704
|
}));
|
|
7323
|
-
if (is2DConstraint(hoveredObject)) {
|
|
7324
|
-
const
|
|
7705
|
+
if (is2DConstraint(hoveredObject) || isSketchRegion(hoveredObject)) {
|
|
7706
|
+
const entities = getEntities(drawingId, hoveredId);
|
|
7325
7707
|
set(state_ => {
|
|
7326
7708
|
const highlighted = state_.highlighted;
|
|
7327
|
-
const
|
|
7328
|
-
const lastPos = hoverPos ? state_.interaction.lastPos : undefined;
|
|
7709
|
+
const highlightedNonGeom = highlighted.filter(id => id !== hoveredId && (is2DConstraint(tree[id]) || isSketchRegion(tree[id])));
|
|
7329
7710
|
return {
|
|
7330
|
-
highlighted: [...
|
|
7331
|
-
interaction: {
|
|
7711
|
+
highlighted: [...highlightedNonGeom, hoveredId, ...entities],
|
|
7712
|
+
interaction: _objectSpread$o(_objectSpread$o({}, state_.interaction), {}, {
|
|
7332
7713
|
cycle,
|
|
7333
|
-
objects
|
|
7334
|
-
|
|
7335
|
-
}
|
|
7714
|
+
objects
|
|
7715
|
+
})
|
|
7336
7716
|
};
|
|
7337
7717
|
});
|
|
7338
7718
|
} else {
|
|
7339
|
-
const
|
|
7340
|
-
const
|
|
7341
|
-
const
|
|
7342
|
-
|
|
7343
|
-
linkedConstraints.forEach(id => {
|
|
7719
|
+
const linked = Object.values(tree).filter(obj => is2DConstraint(obj) || isSketchRegion(obj)).filter(obj => getEntities(drawingId, obj.id).some(entityId => entityId === hoveredId)).map(obj => obj.id);
|
|
7720
|
+
const state = getSketchState(drawingId, pluginId);
|
|
7721
|
+
const constraintsToGeometry = _objectSpread$o({}, state.interaction.constraintsToGeometry);
|
|
7722
|
+
linked.forEach(id => {
|
|
7344
7723
|
constraintsToGeometry[id] = hoveredId;
|
|
7345
7724
|
});
|
|
7346
|
-
const state = getSketchState(drawingId, pluginId);
|
|
7347
7725
|
const prevHoveredId = state.interaction.objects[state.interaction.cycle % state.interaction.objects.length];
|
|
7348
|
-
|
|
7726
|
+
const lastHoveredPos = _objectSpread$o({}, state.interaction.lastHoveredPos);
|
|
7349
7727
|
if (!hoverPos) {
|
|
7350
|
-
|
|
7351
|
-
} else {
|
|
7352
|
-
|
|
7728
|
+
linked.forEach(id => delete lastHoveredPos[id]);
|
|
7729
|
+
} else if (hoveredId !== prevHoveredId) {
|
|
7730
|
+
const projectedPoint = projectPointOnGeometry(hoverPos, hoveredId, tree);
|
|
7731
|
+
linked.forEach(id => lastHoveredPos[id] = projectedPoint);
|
|
7353
7732
|
}
|
|
7354
|
-
|
|
7355
|
-
|
|
7356
|
-
|
|
7733
|
+
set({
|
|
7734
|
+
highlighted: [hoveredId, ...linked],
|
|
7735
|
+
interaction: {
|
|
7736
|
+
cycle,
|
|
7737
|
+
objects,
|
|
7738
|
+
lastHoveredPos,
|
|
7739
|
+
constraintsToGeometry
|
|
7357
7740
|
}
|
|
7358
|
-
}))]);
|
|
7359
|
-
set(state_ => {
|
|
7360
|
-
return {
|
|
7361
|
-
highlighted: [hoveredId, ...linkedConstraints],
|
|
7362
|
-
constraintsToGeometry: _objectSpread$n(_objectSpread$n({}, state_.constraintsToGeometry), constraintsToGeometry),
|
|
7363
|
-
interaction: {
|
|
7364
|
-
cycle,
|
|
7365
|
-
objects,
|
|
7366
|
-
lastPos
|
|
7367
|
-
}
|
|
7368
|
-
};
|
|
7369
7741
|
});
|
|
7370
7742
|
}
|
|
7371
7743
|
if (timerId) {
|
|
@@ -7376,14 +7748,13 @@ const setHoverState = (drawingId, pluginId, cycle, objects, hoverPos) => {
|
|
|
7376
7748
|
setHovered(null);
|
|
7377
7749
|
set(state_ => {
|
|
7378
7750
|
const highlighted = state_.highlighted;
|
|
7379
|
-
const
|
|
7751
|
+
const highlightedNonGeom = highlighted.filter(id => is2DConstraint(tree[id]) || isSketchRegion(tree[id]));
|
|
7380
7752
|
return {
|
|
7381
|
-
highlighted:
|
|
7382
|
-
interaction: {
|
|
7753
|
+
highlighted: highlightedNonGeom,
|
|
7754
|
+
interaction: _objectSpread$o(_objectSpread$o({}, state_.interaction), {}, {
|
|
7383
7755
|
cycle,
|
|
7384
|
-
objects
|
|
7385
|
-
|
|
7386
|
-
}
|
|
7756
|
+
objects
|
|
7757
|
+
})
|
|
7387
7758
|
};
|
|
7388
7759
|
});
|
|
7389
7760
|
if (timerId) {
|
|
@@ -7419,15 +7790,10 @@ const unhover = (drawingId, pluginId, objId) => {
|
|
|
7419
7790
|
const select = (drawingId, pluginId, selectedId) => {
|
|
7420
7791
|
const drawing = getDrawing(drawingId);
|
|
7421
7792
|
const curProduct = drawing.structure.currentProduct;
|
|
7422
|
-
const selectedObj = getDrawing(drawingId).structure.tree[selectedId];
|
|
7423
|
-
const hoverPos = is2DConstraint(selectedObj) ? getSketchState(drawingId, pluginId).interaction.lastPos : undefined;
|
|
7424
7793
|
const select_ = drawing.api.interaction.select;
|
|
7425
7794
|
select_(createInfo({
|
|
7426
7795
|
objectId: selectedId,
|
|
7427
|
-
prodRefId: curProduct
|
|
7428
|
-
userData: {
|
|
7429
|
-
hoverPos
|
|
7430
|
-
}
|
|
7796
|
+
prodRefId: curProduct
|
|
7431
7797
|
}), true);
|
|
7432
7798
|
};
|
|
7433
7799
|
const tab = (drawingId, pluginId) => {
|
|
@@ -7453,17 +7819,29 @@ function Hover(drawingId, pluginId) {
|
|
|
7453
7819
|
}
|
|
7454
7820
|
};
|
|
7455
7821
|
const getSketchObjIds = e => {
|
|
7456
|
-
const
|
|
7822
|
+
const drawing = getDrawing(drawingId);
|
|
7823
|
+
const tree = drawing.structure.tree;
|
|
7824
|
+
const selection = drawing.selection.refs[drawing.selection.active || ''];
|
|
7825
|
+
const isSelActive = selection !== undefined;
|
|
7457
7826
|
const objIds = e.intersections.map(intersection => {
|
|
7458
7827
|
var _intersection$object$;
|
|
7459
7828
|
return ((_intersection$object$ = intersection.object.userData) == null ? void 0 : _intersection$object$.objId) || undefined;
|
|
7460
7829
|
});
|
|
7461
7830
|
return objIds.filter((objId, i) => {
|
|
7462
|
-
|
|
7463
|
-
|
|
7831
|
+
var _object$members;
|
|
7832
|
+
const object = tree[objId || NOCCID];
|
|
7833
|
+
const isSelectable = object && (selection == null ? void 0 : selection.isSelectable(TreeObjScope, {
|
|
7834
|
+
object
|
|
7835
|
+
})) || false;
|
|
7836
|
+
const isSketchObj = object && (isSketchGeometry(object) || is2DConstraint(object)) && getAncestorIdByClass(drawingId, object.id, CCClasses.CCSketch) === sketchId;
|
|
7837
|
+
const isSketchRegion_ = object && isSketchRegion(object) && ((_object$members = object.members) == null ? void 0 : _object$members.sketch.value) === sketchId;
|
|
7838
|
+
const canBeSelected = !isSelActive || isSelectable;
|
|
7839
|
+
return object && (isSketchObj || isSketchRegion_) && canBeSelected && objIds.indexOf(objId) === i;
|
|
7464
7840
|
});
|
|
7465
7841
|
};
|
|
7466
|
-
|
|
7842
|
+
|
|
7843
|
+
// A single handler for both onPointerOver / onPointerOut
|
|
7844
|
+
const onHover = e => {
|
|
7467
7845
|
const hoveredId = e.object.userData.objId;
|
|
7468
7846
|
const tree = getDrawing(drawingId).structure.tree;
|
|
7469
7847
|
if (!tree[hoveredId] || ccUtils.base.isA(tree[hoveredId].class, CCClasses.CCSketch)) {
|
|
@@ -7476,28 +7854,17 @@ function Hover(drawingId, pluginId) {
|
|
|
7476
7854
|
const obj = tree[objId];
|
|
7477
7855
|
return ccUtils.base.isA(obj == null ? void 0 : obj.class, CCClasses.CCSketch);
|
|
7478
7856
|
});
|
|
7479
|
-
const
|
|
7480
|
-
|
|
7481
|
-
hover(drawingId, pluginId, sketchObjIds,
|
|
7482
|
-
};
|
|
7483
|
-
const onPointerOut = e => {
|
|
7484
|
-
const hoveredId = e.object.userData.objId;
|
|
7485
|
-
const tree = getDrawing(drawingId).structure.tree;
|
|
7486
|
-
if (!tree[hoveredId] || ccUtils.base.isA(tree[hoveredId].class, CCClasses.CCSketch)) {
|
|
7487
|
-
return;
|
|
7488
|
-
}
|
|
7489
|
-
const sketchObjIds = getSketchObjIds(e);
|
|
7490
|
-
// Preserve the lastPos set earlier...
|
|
7491
|
-
const lastPos = getPlugin(drawingId, pluginId).state.interaction.lastPos;
|
|
7492
|
-
hover(drawingId, pluginId, sketchObjIds, lastPos);
|
|
7857
|
+
const hoverPos = sketchIntersection ? sketchIntersection.point.clone() : new THREE.Vector3();
|
|
7858
|
+
hoverPos.applyMatrix4(getGlobalToLocalMatrix(drawingId, sketchId));
|
|
7859
|
+
hover(drawingId, pluginId, sketchObjIds, hoverPos);
|
|
7493
7860
|
};
|
|
7494
7861
|
return {
|
|
7495
7862
|
name: HandlersList.HOVER,
|
|
7496
7863
|
filter,
|
|
7497
7864
|
onDeactivate,
|
|
7498
7865
|
pointerHandlers: {
|
|
7499
|
-
onPointerOver,
|
|
7500
|
-
onPointerOut
|
|
7866
|
+
onPointerOver: onHover,
|
|
7867
|
+
onPointerOut: onHover
|
|
7501
7868
|
},
|
|
7502
7869
|
keyHandlers: {
|
|
7503
7870
|
keyup: onKeyup
|
|
@@ -7839,8 +8206,8 @@ const MergedWrapper = ({
|
|
|
7839
8206
|
);
|
|
7840
8207
|
};
|
|
7841
8208
|
|
|
7842
|
-
function ownKeys$
|
|
7843
|
-
function _objectSpread$
|
|
8209
|
+
function ownKeys$n(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8210
|
+
function _objectSpread$n(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$n(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$n(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7844
8211
|
|
|
7845
8212
|
// Artificial delay in 16 ms.
|
|
7846
8213
|
const artifDelay = 16;
|
|
@@ -8107,7 +8474,7 @@ function Drag(drawingId, pluginId, camControls) {
|
|
|
8107
8474
|
name: HandlersList.DRAG,
|
|
8108
8475
|
filter,
|
|
8109
8476
|
onDeactivate,
|
|
8110
|
-
pointerHandlers: _objectSpread$
|
|
8477
|
+
pointerHandlers: _objectSpread$n({
|
|
8111
8478
|
onPointerDown,
|
|
8112
8479
|
onPointerUp,
|
|
8113
8480
|
onPointerMove
|
|
@@ -8119,8 +8486,8 @@ function Drag(drawingId, pluginId, camControls) {
|
|
|
8119
8486
|
};
|
|
8120
8487
|
}
|
|
8121
8488
|
|
|
8122
|
-
function ownKeys$
|
|
8123
|
-
function _objectSpread$
|
|
8489
|
+
function ownKeys$m(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8490
|
+
function _objectSpread$m(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$m(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$m(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8124
8491
|
function DrawPoint(drawingId, pluginId) {
|
|
8125
8492
|
const {
|
|
8126
8493
|
set
|
|
@@ -8176,8 +8543,8 @@ function DrawPoint(drawingId, pluginId) {
|
|
|
8176
8543
|
const tmpPoint = state.tmpObjects[tmpPointId];
|
|
8177
8544
|
return {
|
|
8178
8545
|
mousePos,
|
|
8179
|
-
tmpObjects: _objectSpread$
|
|
8180
|
-
[tmpPointId]: _objectSpread$
|
|
8546
|
+
tmpObjects: _objectSpread$m(_objectSpread$m({}, state.tmpObjects), {}, {
|
|
8547
|
+
[tmpPointId]: _objectSpread$m(_objectSpread$m({}, tmpPoint), {}, {
|
|
8181
8548
|
position: mousePos
|
|
8182
8549
|
})
|
|
8183
8550
|
})
|
|
@@ -8197,8 +8564,8 @@ function DrawPoint(drawingId, pluginId) {
|
|
|
8197
8564
|
};
|
|
8198
8565
|
}
|
|
8199
8566
|
|
|
8200
|
-
function ownKeys$
|
|
8201
|
-
function _objectSpread$
|
|
8567
|
+
function ownKeys$l(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8568
|
+
function _objectSpread$l(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$l(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$l(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8202
8569
|
function DrawLine(drawingId, pluginId) {
|
|
8203
8570
|
// Global hooks:
|
|
8204
8571
|
const {
|
|
@@ -8274,7 +8641,7 @@ function DrawLine(drawingId, pluginId) {
|
|
|
8274
8641
|
endPId: tmpEndP.id
|
|
8275
8642
|
};
|
|
8276
8643
|
return {
|
|
8277
|
-
tmpObjects: _objectSpread$
|
|
8644
|
+
tmpObjects: _objectSpread$l(_objectSpread$l({}, state.tmpObjects), {}, {
|
|
8278
8645
|
[tmpStartP.id]: tmpStartP,
|
|
8279
8646
|
[tmpLine.id]: tmpLine
|
|
8280
8647
|
})
|
|
@@ -8317,8 +8684,8 @@ function DrawLine(drawingId, pluginId) {
|
|
|
8317
8684
|
const tmpStartP = state.tmpObjects[tmpStartPId];
|
|
8318
8685
|
const tmpEndP = state.tmpObjects[tmpEndPId];
|
|
8319
8686
|
return {
|
|
8320
|
-
tmpObjects: _objectSpread$
|
|
8321
|
-
[tmpStartPId]: _objectSpread$
|
|
8687
|
+
tmpObjects: _objectSpread$l(_objectSpread$l({}, state.tmpObjects), {}, {
|
|
8688
|
+
[tmpStartPId]: _objectSpread$l(_objectSpread$l({}, tmpStartP), {}, {
|
|
8322
8689
|
position: tmpEndP.position.clone()
|
|
8323
8690
|
})
|
|
8324
8691
|
})
|
|
@@ -8335,8 +8702,8 @@ function DrawLine(drawingId, pluginId) {
|
|
|
8335
8702
|
const tmpEndP = state.tmpObjects[tmpEndPId];
|
|
8336
8703
|
return {
|
|
8337
8704
|
mousePos,
|
|
8338
|
-
tmpObjects: _objectSpread$
|
|
8339
|
-
[tmpEndPId]: _objectSpread$
|
|
8705
|
+
tmpObjects: _objectSpread$l(_objectSpread$l({}, state.tmpObjects), {}, {
|
|
8706
|
+
[tmpEndPId]: _objectSpread$l(_objectSpread$l({}, tmpEndP), {}, {
|
|
8340
8707
|
position: mousePos
|
|
8341
8708
|
})
|
|
8342
8709
|
})
|
|
@@ -8359,8 +8726,8 @@ function DrawLine(drawingId, pluginId) {
|
|
|
8359
8726
|
};
|
|
8360
8727
|
}
|
|
8361
8728
|
|
|
8362
|
-
function ownKeys$
|
|
8363
|
-
function _objectSpread$
|
|
8729
|
+
function ownKeys$k(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
8730
|
+
function _objectSpread$k(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$k(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$k(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8364
8731
|
function DrawRectangle(drawingId, pluginId, rectType) {
|
|
8365
8732
|
const {
|
|
8366
8733
|
set
|
|
@@ -8435,7 +8802,7 @@ function DrawRectangle(drawingId, pluginId, rectType) {
|
|
|
8435
8802
|
isSquare: e.shiftKey,
|
|
8436
8803
|
isCentered: rectType === HandlersList.DRAWRECTCENTER
|
|
8437
8804
|
};
|
|
8438
|
-
const newTmpObjects = _objectSpread$
|
|
8805
|
+
const newTmpObjects = _objectSpread$k(_objectSpread$k({}, state.tmpObjects), {}, {
|
|
8439
8806
|
[tmpRect.id]: tmpRect
|
|
8440
8807
|
});
|
|
8441
8808
|
delete newTmpObjects[tmpPointId];
|
|
@@ -8493,19 +8860,19 @@ function DrawRectangle(drawingId, pluginId, rectType) {
|
|
|
8493
8860
|
let newTmpObjs = null;
|
|
8494
8861
|
if (additionIndex === 0) {
|
|
8495
8862
|
const tmpPoint = state.tmpObjects[tmpPointId];
|
|
8496
|
-
newTmpObjs = _objectSpread$
|
|
8497
|
-
[tmpPointId]: _objectSpread$
|
|
8863
|
+
newTmpObjs = _objectSpread$k(_objectSpread$k({}, state.tmpObjects), {}, {
|
|
8864
|
+
[tmpPointId]: _objectSpread$k(_objectSpread$k({}, tmpPoint), {}, {
|
|
8498
8865
|
position: snappedPos
|
|
8499
8866
|
})
|
|
8500
8867
|
});
|
|
8501
8868
|
} else {
|
|
8502
|
-
newTmpObjs = _objectSpread$
|
|
8503
|
-
[tmpRectId]: _objectSpread$
|
|
8869
|
+
newTmpObjs = _objectSpread$k(_objectSpread$k({}, state.tmpObjects), {}, {
|
|
8870
|
+
[tmpRectId]: _objectSpread$k(_objectSpread$k({}, state.tmpObjects[tmpRectId]), {}, {
|
|
8504
8871
|
end: new THREE.Vector3(snappedPos.x, snappedPos.y, 0)
|
|
8505
8872
|
})
|
|
8506
8873
|
});
|
|
8507
8874
|
}
|
|
8508
|
-
return _objectSpread$
|
|
8875
|
+
return _objectSpread$k(_objectSpread$k({}, state), {}, {
|
|
8509
8876
|
tmpObjects: newTmpObjs,
|
|
8510
8877
|
mousePos: snappedPos
|
|
8511
8878
|
});
|
|
@@ -8514,9 +8881,9 @@ function DrawRectangle(drawingId, pluginId, rectType) {
|
|
|
8514
8881
|
};
|
|
8515
8882
|
const keydown = e => {
|
|
8516
8883
|
if (e.code === 'ShiftLeft' || e.code === 'ShiftRight') {
|
|
8517
|
-
set(state => _objectSpread$
|
|
8518
|
-
tmpObjects: _objectSpread$
|
|
8519
|
-
[tmpRectId]: _objectSpread$
|
|
8884
|
+
set(state => _objectSpread$k(_objectSpread$k({}, state), {}, {
|
|
8885
|
+
tmpObjects: _objectSpread$k(_objectSpread$k({}, state.tmpObjects), {}, {
|
|
8886
|
+
[tmpRectId]: _objectSpread$k(_objectSpread$k({}, state.tmpObjects[tmpRectId]), {}, {
|
|
8520
8887
|
isSquare: true
|
|
8521
8888
|
})
|
|
8522
8889
|
})
|
|
@@ -8525,9 +8892,9 @@ function DrawRectangle(drawingId, pluginId, rectType) {
|
|
|
8525
8892
|
};
|
|
8526
8893
|
const keyup = e => {
|
|
8527
8894
|
if (e.code === 'ShiftLeft' || e.code === 'ShiftRight') {
|
|
8528
|
-
set(state => _objectSpread$
|
|
8529
|
-
tmpObjects: _objectSpread$
|
|
8530
|
-
[tmpRectId]: _objectSpread$
|
|
8895
|
+
set(state => _objectSpread$k(_objectSpread$k({}, state), {}, {
|
|
8896
|
+
tmpObjects: _objectSpread$k(_objectSpread$k({}, state.tmpObjects), {}, {
|
|
8897
|
+
[tmpRectId]: _objectSpread$k(_objectSpread$k({}, state.tmpObjects[tmpRectId]), {}, {
|
|
8531
8898
|
isSquare: false
|
|
8532
8899
|
})
|
|
8533
8900
|
})
|
|
@@ -8709,8 +9076,8 @@ const Circle$1 = ({
|
|
|
8709
9076
|
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", materialProps));
|
|
8710
9077
|
};
|
|
8711
9078
|
|
|
8712
|
-
function ownKeys$
|
|
8713
|
-
function _objectSpread$
|
|
9079
|
+
function ownKeys$j(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
9080
|
+
function _objectSpread$j(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$j(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$j(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
8714
9081
|
function DrawArc(drawingId, pluginId, arcType) {
|
|
8715
9082
|
// Global hooks:
|
|
8716
9083
|
const {
|
|
@@ -8763,7 +9130,7 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
8763
9130
|
additionIndex = 0;
|
|
8764
9131
|
lastAddedEndPointId = NOCCID;
|
|
8765
9132
|
set(state => {
|
|
8766
|
-
const tmpStartP = _objectSpread$
|
|
9133
|
+
const tmpStartP = _objectSpread$j(_objectSpread$j({}, state.tmpObjects[tmpStartPId]), {}, {
|
|
8767
9134
|
position: lastMousePos.clone()
|
|
8768
9135
|
});
|
|
8769
9136
|
return {
|
|
@@ -8776,20 +9143,20 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
8776
9143
|
additionIndex = 1;
|
|
8777
9144
|
set(state => {
|
|
8778
9145
|
const tmpStartP = state.tmpObjects[tmpStartPId];
|
|
8779
|
-
const tmpEndP = _objectSpread$
|
|
9146
|
+
const tmpEndP = _objectSpread$j(_objectSpread$j({}, state.tmpObjects[tmpEndPId]), {}, {
|
|
8780
9147
|
position: lastMousePos.clone()
|
|
8781
9148
|
});
|
|
8782
9149
|
const centerPos = calculateCenterPoint(tmpStartP.position, lastMousePos, lastMousePos);
|
|
8783
|
-
const tmpCenterP = _objectSpread$
|
|
9150
|
+
const tmpCenterP = _objectSpread$j(_objectSpread$j({}, state.tmpObjects[tmpCenterPId]), {}, {
|
|
8784
9151
|
position: centerPos ? centerPos : lastMousePos.clone()
|
|
8785
9152
|
});
|
|
8786
|
-
const tmpArc = _objectSpread$
|
|
9153
|
+
const tmpArc = _objectSpread$j(_objectSpread$j({}, state.tmpObjects[tmpArcId]), {}, {
|
|
8787
9154
|
// In case centerPos couldn't be calculated, the arc should be drawn as a line
|
|
8788
9155
|
drawAsLine: centerPos === undefined,
|
|
8789
9156
|
clockwise: false
|
|
8790
9157
|
});
|
|
8791
9158
|
return {
|
|
8792
|
-
tmpObjects: _objectSpread$
|
|
9159
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
8793
9160
|
[tmpEndP.id]: tmpEndP,
|
|
8794
9161
|
[tmpCenterP.id]: tmpCenterP,
|
|
8795
9162
|
[tmpArc.id]: tmpArc
|
|
@@ -8896,7 +9263,7 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
8896
9263
|
clockwise: false
|
|
8897
9264
|
};
|
|
8898
9265
|
return {
|
|
8899
|
-
tmpObjects: _objectSpread$
|
|
9266
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
8900
9267
|
[tmpEndP.id]: tmpEndP,
|
|
8901
9268
|
[tmpCenterP.id]: tmpCenterP,
|
|
8902
9269
|
[tmpArc.id]: tmpArc
|
|
@@ -8925,7 +9292,7 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
8925
9292
|
clockwise: false
|
|
8926
9293
|
};
|
|
8927
9294
|
return {
|
|
8928
|
-
tmpObjects: _objectSpread$
|
|
9295
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
8929
9296
|
[tmpCenterP.id]: tmpCenterP,
|
|
8930
9297
|
[tmpArc.id]: tmpArc
|
|
8931
9298
|
})
|
|
@@ -8987,11 +9354,11 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
8987
9354
|
const tmpEndP = state.tmpObjects[tmpEndPId];
|
|
8988
9355
|
const tmpCenterP = state.tmpObjects[tmpCenterPId];
|
|
8989
9356
|
return {
|
|
8990
|
-
tmpObjects: _objectSpread$
|
|
8991
|
-
[tmpStartPId]: _objectSpread$
|
|
9357
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
9358
|
+
[tmpStartPId]: _objectSpread$j(_objectSpread$j({}, tmpStartP), {}, {
|
|
8992
9359
|
position: tmpEndP.position.clone()
|
|
8993
9360
|
}),
|
|
8994
|
-
[tmpCenterPId]: _objectSpread$
|
|
9361
|
+
[tmpCenterPId]: _objectSpread$j(_objectSpread$j({}, tmpCenterP), {}, {
|
|
8995
9362
|
position: tmpEndP.position.clone()
|
|
8996
9363
|
})
|
|
8997
9364
|
})
|
|
@@ -9010,8 +9377,8 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
9010
9377
|
const tmpStartP = state.tmpObjects[tmpStartPId];
|
|
9011
9378
|
return {
|
|
9012
9379
|
mousePos: lastMousePos,
|
|
9013
|
-
tmpObjects: _objectSpread$
|
|
9014
|
-
[tmpStartPId]: _objectSpread$
|
|
9380
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
9381
|
+
[tmpStartPId]: _objectSpread$j(_objectSpread$j({}, tmpStartP), {}, {
|
|
9015
9382
|
position: lastMousePos.clone()
|
|
9016
9383
|
})
|
|
9017
9384
|
})
|
|
@@ -9024,14 +9391,14 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
9024
9391
|
const centerPos = calculateCenterPoint(tmpStartP.position, lastMousePos, lastMousePos);
|
|
9025
9392
|
return {
|
|
9026
9393
|
mousePos: lastMousePos,
|
|
9027
|
-
tmpObjects: _objectSpread$
|
|
9028
|
-
[tmpEndPId]: _objectSpread$
|
|
9394
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
9395
|
+
[tmpEndPId]: _objectSpread$j(_objectSpread$j({}, tmpEndP), {}, {
|
|
9029
9396
|
position: lastMousePos.clone()
|
|
9030
9397
|
}),
|
|
9031
|
-
[tmpCenterPId]: _objectSpread$
|
|
9398
|
+
[tmpCenterPId]: _objectSpread$j(_objectSpread$j({}, tmpCenterP), {}, {
|
|
9032
9399
|
position: centerPos ? centerPos : lastMousePos.clone()
|
|
9033
9400
|
}),
|
|
9034
|
-
[tmpArcId]: _objectSpread$
|
|
9401
|
+
[tmpArcId]: _objectSpread$j(_objectSpread$j({}, tmpArc), {}, {
|
|
9035
9402
|
// In case centerPos couldn't be calculated, the arc should be drawn as a line
|
|
9036
9403
|
drawAsLine: centerPos === undefined,
|
|
9037
9404
|
clockwise: false
|
|
@@ -9046,14 +9413,14 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
9046
9413
|
const centerPos = calculateCenterPoint(tmpStartP.position, tmpEndP.position, lastMousePos);
|
|
9047
9414
|
return {
|
|
9048
9415
|
mousePos: lastMousePos,
|
|
9049
|
-
tmpObjects: _objectSpread$
|
|
9050
|
-
[tmpEndPId]: _objectSpread$
|
|
9416
|
+
tmpObjects: _objectSpread$j(_objectSpread$j({}, state.tmpObjects), {}, {
|
|
9417
|
+
[tmpEndPId]: _objectSpread$j(_objectSpread$j({}, tmpEndP), {}, {
|
|
9051
9418
|
position: arcType === HandlersList.DRAWARCTANGENT ? lastMousePos.clone() : tmpEndP.position
|
|
9052
9419
|
}),
|
|
9053
|
-
[tmpCenterPId]: _objectSpread$
|
|
9420
|
+
[tmpCenterPId]: _objectSpread$j(_objectSpread$j({}, tmpCenterP), {}, {
|
|
9054
9421
|
position: centerPos ? centerPos : lastMousePos.clone()
|
|
9055
9422
|
}),
|
|
9056
|
-
[tmpArcId]: _objectSpread$
|
|
9423
|
+
[tmpArcId]: _objectSpread$j(_objectSpread$j({}, tmpArc), {}, {
|
|
9057
9424
|
// In case centerPos couldn't be calculated, the arc should be drawn as a line
|
|
9058
9425
|
drawAsLine: centerPos === undefined,
|
|
9059
9426
|
clockwise: evaluateClockwise(tmpStartP.position, tmpEndP.position, lastMousePos)
|
|
@@ -9079,8 +9446,8 @@ function DrawArc(drawingId, pluginId, arcType) {
|
|
|
9079
9446
|
};
|
|
9080
9447
|
}
|
|
9081
9448
|
|
|
9082
|
-
function ownKeys$
|
|
9083
|
-
function _objectSpread$
|
|
9449
|
+
function ownKeys$i(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
9450
|
+
function _objectSpread$i(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$i(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$i(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
9084
9451
|
function DrawCircle(drawingId, pluginId) {
|
|
9085
9452
|
const {
|
|
9086
9453
|
set
|
|
@@ -9124,7 +9491,7 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9124
9491
|
} else {
|
|
9125
9492
|
additionIndex = 0;
|
|
9126
9493
|
set(state => {
|
|
9127
|
-
const tmpCenterP = _objectSpread$
|
|
9494
|
+
const tmpCenterP = _objectSpread$i(_objectSpread$i({}, state.tmpObjects[tmpCenterPId]), {}, {
|
|
9128
9495
|
position: lastMousePos.clone()
|
|
9129
9496
|
});
|
|
9130
9497
|
return {
|
|
@@ -9151,7 +9518,7 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9151
9518
|
radius: 0.001
|
|
9152
9519
|
};
|
|
9153
9520
|
return {
|
|
9154
|
-
tmpObjects: _objectSpread$
|
|
9521
|
+
tmpObjects: _objectSpread$i(_objectSpread$i({}, state.tmpObjects), {}, {
|
|
9155
9522
|
[tmpCenterP.id]: tmpCenterP,
|
|
9156
9523
|
[tmpCircle.id]: tmpCircle
|
|
9157
9524
|
})
|
|
@@ -9175,7 +9542,7 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9175
9542
|
const tmpCenterP = state.tmpObjects[tmpCenterPId];
|
|
9176
9543
|
return {
|
|
9177
9544
|
tmpObjects: {
|
|
9178
|
-
[tmpCenterPId]: _objectSpread$
|
|
9545
|
+
[tmpCenterPId]: _objectSpread$i(_objectSpread$i({}, tmpCenterP), {}, {
|
|
9179
9546
|
position: e.point.clone().applyMatrix4(getGlobalToLocalMatrix(drawingId, sketchId))
|
|
9180
9547
|
})
|
|
9181
9548
|
}
|
|
@@ -9194,8 +9561,8 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9194
9561
|
const tmpCenterP = state.tmpObjects[tmpCenterPId];
|
|
9195
9562
|
return {
|
|
9196
9563
|
mousePos: lastMousePos,
|
|
9197
|
-
tmpObjects: _objectSpread$
|
|
9198
|
-
[tmpCenterPId]: _objectSpread$
|
|
9564
|
+
tmpObjects: _objectSpread$i(_objectSpread$i({}, state.tmpObjects), {}, {
|
|
9565
|
+
[tmpCenterPId]: _objectSpread$i(_objectSpread$i({}, tmpCenterP), {}, {
|
|
9199
9566
|
position: snappedPos || localPos
|
|
9200
9567
|
})
|
|
9201
9568
|
})
|
|
@@ -9205,8 +9572,8 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9205
9572
|
const tmpCircle = state.tmpObjects[tmpCircleId];
|
|
9206
9573
|
return {
|
|
9207
9574
|
mousePos: lastMousePos,
|
|
9208
|
-
tmpObjects: _objectSpread$
|
|
9209
|
-
[tmpCircleId]: _objectSpread$
|
|
9575
|
+
tmpObjects: _objectSpread$i(_objectSpread$i({}, state.tmpObjects), {}, {
|
|
9576
|
+
[tmpCircleId]: _objectSpread$i(_objectSpread$i({}, tmpCircle), {}, {
|
|
9210
9577
|
radius: Math.max(tmpCenterP.position.distanceTo(localPos), 0.001)
|
|
9211
9578
|
})
|
|
9212
9579
|
})
|
|
@@ -9230,107 +9597,109 @@ function DrawCircle(drawingId, pluginId) {
|
|
|
9230
9597
|
};
|
|
9231
9598
|
}
|
|
9232
9599
|
|
|
9233
|
-
var img$
|
|
9234
|
-
var fixation = img$
|
|
9600
|
+
var img$16 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M98.6501 57.944V63.1826H71.546V80.9483H28.9538V63.1826H1.84961V57.944H28.9538V38.3561H36.0145V33.8008C36.0145 26.0568 42.3919 19.4515 50.3638 19.4515C58.3356 19.4515 64.713 25.829 64.713 33.8008V38.3561H71.7738V57.944H98.6501ZM66.9907 76.393V42.9114H59.9299V33.8008C59.9299 28.5622 55.6024 24.0069 50.136 24.0069C44.6696 24.0069 40.5698 28.5622 40.5698 33.8008V42.9114H33.5091V76.393H66.9907Z' fill='black'/%3e%3cpath d='M66.9918 42.9114V76.393H33.5103V42.9114H40.571V33.8008C40.571 28.5622 44.8985 24.0068 50.3649 24.0068C55.8313 24.0068 60.1589 28.3344 60.1589 33.8008V42.9114H66.9918ZM56.7424 40.6338V34.0285C56.7424 30.612 53.7814 27.6511 50.3649 27.6511C46.9484 27.6511 43.9875 30.612 43.9875 34.0285V40.6338H56.7424ZM55.6036 65.9158V56.5774C55.6036 53.6164 53.3259 51.3388 50.3649 51.3388C47.404 51.3388 45.1263 53.6164 45.1263 56.5774V65.9158H55.6036Z' fill='%239D9D9C'/%3e%3cpath d='M56.7412 34.0286V40.6338H43.9863V34.0286C43.9863 30.6121 46.9473 27.6511 50.3638 27.6511C53.7803 27.6511 56.7412 30.3843 56.7412 34.0286ZM52.1859 36.0785V34.0286C52.1859 33.1175 51.2748 32.2064 50.3638 32.2064C49.4527 32.2064 48.5416 32.8897 48.5416 34.0286V36.0785H52.1859Z' fill='black'/%3e%3cpath d='M55.6027 56.5774V65.9158H45.1255V56.5774C45.1255 53.6164 47.4031 51.3387 50.3641 51.3387C53.0973 51.3387 55.6027 53.6164 55.6027 56.5774Z' fill='black'/%3e%3c/svg%3e";
|
|
9601
|
+
var fixation = img$16;
|
|
9602
|
+
|
|
9603
|
+
var img$15 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M93.7715 47.5999H6.8291V53H93.7715V47.5999Z' fill='black'/%3e%3c/svg%3e";
|
|
9604
|
+
var horizontality = img$15;
|
|
9235
9605
|
|
|
9236
|
-
var img$14 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9237
|
-
var
|
|
9606
|
+
var img$14 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M53 12H47.6006V88.5999H53V12Z' fill='black'/%3e%3c/svg%3e";
|
|
9607
|
+
var verticality = img$14;
|
|
9238
9608
|
|
|
9239
|
-
var img$13 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9240
|
-
var
|
|
9609
|
+
var img$13 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M44.05 49.7792L50 55.6417L55.95 49.7792L50 43.9167L44.05 49.7792ZM54.8167 40.8458L80.0333 16L84 19.9083L58.7833 44.7542L63.6 49.5L58.7833 54.2458L84 79.0917L80.0333 83L54.8167 58.1542L50 62.9L45.1833 58.1542L19.9667 83L16 79.0917L41.2167 54.2458L36.4 49.5L50.2833 35.8208L54.8167 40.8458Z' fill='black'/%3e%3c/svg%3e";
|
|
9610
|
+
var coincident = img$13;
|
|
9241
9611
|
|
|
9242
|
-
var img$12 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9243
|
-
var
|
|
9612
|
+
var img$12 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M63 46C67.3243 46 71.973 46.8784 75 50C78.027 53.1216 80.5 59.2635 80.5 63.5C80.5 67.9595 77.2703 71.973 74.2432 75.0946C71.2162 78.2162 67.1081 80 63 80C58.6757 80 54.7838 78.2162 51.7568 75.0946C48.7297 71.973 46.5 67.7365 46.5 63.5C46.5 59.0406 46.973 54.1216 50 51C52.8108 47.8784 58.6757 46 63 46Z' fill='%239D9D9C'/%3e%3cpath d='M46.796 63.1473C46.796 67.5666 48.5637 71.5439 51.6572 74.6374C54.7507 77.7309 58.949 79.4986 63.1473 79.4986C67.5666 79.4986 71.5439 77.7309 74.6374 74.6374C77.7309 71.5439 79.4986 67.3456 79.4986 63.1473C79.4986 58.728 77.7309 54.7507 74.6374 51.6572C71.5439 48.5637 67.3456 46.796 63.1473 46.796C58.728 46.796 54.7507 48.5637 51.6572 51.6572C48.5637 54.7507 46.796 58.728 46.796 63.1473ZM63.1473 83.9178C57.8442 83.9178 52.5411 81.9292 48.5637 77.7309C43.9235 73.0906 41.9348 66.4617 42.5977 60.4957L14.0935 89L11 85.9065L85.9065 11L89 14.0935L60.4957 42.5977C66.6827 41.7139 73.0906 43.7025 77.7309 48.5637C85.9065 56.7394 85.9065 69.7762 77.7309 77.9518C73.7535 81.9292 68.4504 83.9178 63.1473 83.9178Z' fill='black'/%3e%3c/svg%3e";
|
|
9613
|
+
var tangency = img$12;
|
|
9244
9614
|
|
|
9245
|
-
var img$11 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9246
|
-
var
|
|
9615
|
+
var img$11 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M88 36.7379L36.7561 88L33 84.2621L84.2439 33L88 36.7379Z' fill='black'/%3e%3cpath d='M67 16.0777L15.7561 68L12 64.1942L63.2439 12L67 16.0777Z' fill='black'/%3e%3c/svg%3e";
|
|
9616
|
+
var parallelity = img$11;
|
|
9247
9617
|
|
|
9248
|
-
var img$10 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9249
|
-
var
|
|
9618
|
+
var img$10 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12 75H50.5M88 75H50.5M50.5 75V24.5' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9619
|
+
var perpendicularity = img$10;
|
|
9250
9620
|
|
|
9251
|
-
var img$$ = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9252
|
-
var
|
|
9621
|
+
var img$$ = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M60.4698 20.5082L56.6826 16.7236L16.9448 56.4895L20.7321 60.2741L60.4698 20.5082Z' fill='black'/%3e%3cpath d='M82.8491 21.6999L79.0635 17.9143L18.115 78.8628L21.9006 82.6484L82.8491 21.6999Z' fill='black'/%3e%3cpath d='M83.9996 44.0778L80.2124 40.2932L40.4746 80.0591L44.2619 83.8437L83.9996 44.0778Z' fill='black'/%3e%3c/svg%3e";
|
|
9622
|
+
var colinear = img$$;
|
|
9253
9623
|
|
|
9254
|
-
var img$_ = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9255
|
-
var
|
|
9624
|
+
var img$_ = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='50' cy='50' r='32.5' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='50' cy='50' r='19.5' stroke='black' stroke-width='5'/%3e%3crect x='44' y='44' width='12' height='12' fill='white' stroke='black' stroke-width='4'/%3e%3c/svg%3e";
|
|
9625
|
+
var concentric = img$_;
|
|
9256
9626
|
|
|
9257
|
-
var img$Z = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9258
|
-
var
|
|
9627
|
+
var img$Z = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M34.6614 51.5994L48.7943 65.8707L62.9272 51.5994L48.7943 37.3281L34.6614 51.5994ZM69.75 51.5994L48.7943 72.7603L40.2658 64.1483L15.8987 89L12 84.817L36.6108 60.2114L27.8386 51.5994L48.7943 30.4385L57.3228 39.0505L85.1013 11L89 14.9369L61.2215 43.2334L69.75 51.5994Z' fill='black'/%3e%3c/svg%3e";
|
|
9628
|
+
var midpoint = img$Z;
|
|
9259
9629
|
|
|
9260
|
-
var img$Y = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9261
|
-
var
|
|
9630
|
+
var img$Y = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M87.5 27L80 52.5L89 78.5H63V27H87.5Z' fill='%239D9D9C'/%3e%3cpath d='M53 79H48V84H53V79Z' fill='black'/%3e%3cpath d='M53 71H48V75H53V71Z' fill='black'/%3e%3cpath d='M53 61H48V66H53V61Z' fill='black'/%3e%3cpath d='M53 53H48V57H53V53Z' fill='black'/%3e%3cpath d='M53 43H48V48H53V43Z' fill='black'/%3e%3cpath d='M53 34H48V39H53V34Z' fill='black'/%3e%3cpath d='M53 25H48V30H53V25Z' fill='black'/%3e%3cpath d='M53 16H48V21H53V16Z' fill='black'/%3e%3cpath d='M38 27L38.5 78L13.5 77L20.5 52L12.5 27.5L38 27Z' fill='%239D9D9C'/%3e%3cpath d='M14.2877 28.4358L21.9726 52.3891L14.2877 76.5642H37.5753V28.4358H14.2877ZM42 24V81H8L17.0822 52.3891L8 24H42Z' fill='black'/%3e%3cpath d='M63.6259 76.5642H86.7551L78.8912 52.3891L86.5238 28.214H63.3946V76.5642H63.6259ZM59 81V24H93L83.7483 52.3891L92.7687 81H59Z' fill='black'/%3e%3c/svg%3e";
|
|
9631
|
+
var symmetric = img$Y;
|
|
9262
9632
|
|
|
9263
|
-
var img$X = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M87.
|
|
9264
|
-
var
|
|
9633
|
+
var img$X = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M87.0685 59.9326H13.5317V66.7416H87.0685V59.9326Z' fill='black'/%3e%3cpath d='M87.0685 34.0582H13.5317V40.8672H87.0685V34.0582Z' fill='black'/%3e%3c/svg%3e";
|
|
9634
|
+
var equal = img$X;
|
|
9265
9635
|
|
|
9266
|
-
var img$W = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9267
|
-
var
|
|
9636
|
+
var img$W = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M80 50H19' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M74 59L82 50.3692L74 42' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M26 42L19 50.3692V50.6308L25.75 59' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M5 30V70' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M96 30V70' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3c/svg%3e";
|
|
9637
|
+
var hdimension = img$W;
|
|
9268
9638
|
|
|
9269
|
-
var img$V = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9270
|
-
var
|
|
9639
|
+
var img$V = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M31 95H69' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M50 21V81' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M58 27L49.8769 20L42 27' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M42 74L50.1231 81L58 74.25' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M31 6H69' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3c/svg%3e";
|
|
9640
|
+
var vdimension = img$V;
|
|
9271
9641
|
|
|
9272
|
-
var img$U = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9273
|
-
var vdimension = img$U;
|
|
9642
|
+
var img$U = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M68.0001 32L31.2217 69L34.2036 66' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M69 40L68.3478 30.6522L59 30' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M30 59L30.8696 68.3478L40 69' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M10 65L34 89' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3cpath d='M65 10L89 34' stroke='black' stroke-width='4' stroke-miterlimit='10'/%3e%3c/svg%3e";
|
|
9274
9643
|
|
|
9275
|
-
var img$T = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9644
|
+
var img$T = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='50' cy='50' r='35.5' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='43.5' y='43.5' width='12' height='12' fill='white' stroke='black' stroke-width='5'/%3e%3cline x1='55.2322' y1='43.2322' x2='73.2322' y2='25.2322' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9645
|
+
var radius = img$T;
|
|
9276
9646
|
|
|
9277
|
-
var img$S = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9278
|
-
var
|
|
9647
|
+
var img$S = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M49.8772 47C40.8772 47 34.5 54.036 34.5 54.036L27.5 42.7085C27.5 42.7085 36.2983 33 49.8772 33C63.4562 33 71.6769 42 71.6769 42L64.6502 53C64.6502 53 58.8772 47 49.8772 47Z' fill='%23C4C4C4'/%3e%3cpath d='M34.5 54.036L48.9999 77.5L64.6502 53C64.6502 53 58.8772 47 49.8772 47C40.8772 47 34.5 54.036 34.5 54.036Z' fill='%23C4C4C4'/%3e%3cpath d='M15.1406 22.7083L48.9999 77.5M48.9999 77.5L84.0002 22.7083M48.9999 77.5L34.5 54.036M48.9999 77.5L64.6502 53M34.5 54.036C34.5 54.036 40.8772 47 49.8772 47C58.8772 47 64.6502 53 64.6502 53M34.5 54.036L27.5 42.7085C27.5 42.7085 36.2983 33 49.8772 33C63.4562 33 71.6769 42 71.6769 42L64.6502 53' stroke='black' stroke-width='4'/%3e%3c/svg%3e";
|
|
9648
|
+
var angle = img$S;
|
|
9279
9649
|
|
|
9280
|
-
var img$R = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9281
|
-
var
|
|
9650
|
+
var img$R = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M65 16.5L15.5 66H80.5M80.5 66L74 59M80.5 66L75 73' stroke='black' stroke-width='5'/%3e%3cpath d='M55.9524 46.4372L53 51L48.5 42.5H58.5L55.9524 46.4372Z' fill='black'/%3e%3cpath d='M56.5 61.5C56.5 61.5 59.5 58.5 59.5 54C59.5 49.5 55.5 46 55.5 46M53 51L58.5 42.5H48.5L53 51Z' stroke='black' stroke-width='2'/%3e%3cpath d='M77.0859 82.5469L79.2188 78.625H81.9141L78.6016 84.2656L82 90H79.2734L77.0859 86.0156L74.8984 90H72.1719L75.5703 84.2656L72.2578 78.625H74.9531L77.0859 82.5469Z' fill='black'/%3e%3c/svg%3e";
|
|
9651
|
+
var angleox = img$R;
|
|
9282
9652
|
|
|
9283
|
-
var img$Q = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9284
|
-
var
|
|
9653
|
+
var img$Q = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='18.5' y='18.5' width='64' height='64' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3cpath d='M60.5352 58.7656C59.5859 59.9023 58.2441 60.7871 56.5098 61.4199C54.7754 62.041 52.8535 62.3516 50.7441 62.3516C48.5293 62.3516 46.584 61.8711 44.9082 60.9102C43.2441 59.9375 41.9551 58.5312 41.041 56.6914C40.1387 54.8516 39.6758 52.6895 39.6523 50.2051V48.4648C39.6523 45.9102 40.0801 43.7012 40.9355 41.8379C41.8027 39.9629 43.0449 38.5332 44.6621 37.5488C46.291 36.5527 48.1953 36.0547 50.375 36.0547C53.4102 36.0547 55.7832 36.7812 57.4941 38.2344C59.2051 39.6758 60.2188 41.7793 60.5352 44.5449H55.4023C55.168 43.0801 54.6465 42.0078 53.8379 41.3281C53.041 40.6484 51.9395 40.3086 50.5332 40.3086C48.7402 40.3086 47.375 40.9824 46.4375 42.3301C45.5 43.6777 45.0254 45.6816 45.0137 48.3418V49.9766C45.0137 52.6602 45.5234 54.6875 46.543 56.0586C47.5625 57.4297 49.0566 58.1152 51.0254 58.1152C53.0059 58.1152 54.418 57.6934 55.2617 56.8496V52.4375H50.4629V48.5527H60.5352V58.7656Z' fill='black'/%3e%3c/svg%3e";
|
|
9654
|
+
var rigidSet = img$Q;
|
|
9285
9655
|
|
|
9286
|
-
var img$P = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9287
|
-
var rigidSet = img$P;
|
|
9656
|
+
var img$P = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M54 53V79.6063L46 84V57.6378L54 53Z' fill='%239D9D9C'/%3e%3cpath d='M52.5 49L43.5 54L21 40.25L29.5 34.5L52.5 49Z' fill='%239D9D9C'/%3e%3cpath d='M42.5 56.5V84.5L18 70.6667V44L42.5 56.5Z' fill='%239D9D9C'/%3e%3cpath d='M82.1815 79.7636V36.9565L67.967 45.1793V87.9864L82.1815 79.7636ZM79.2904 33.087L42.9109 11.3207L28.6964 19.5435L65.5578 40.8261L79.2904 33.087ZM53.9934 79.2799V52.9185L46.2838 57.5136V83.6331L53.9934 79.2799ZM63.1485 45.1793L26.2871 23.6549V31.6359L27.7327 30.9103H27.9736L29.1782 30.1848L59.0528 48.0815V82.1821L55.6799 83.6331L63.1485 87.9864V45.1793ZM41.4653 57.5136L18.8185 44.4538V70.5734L41.4653 83.6331V57.5136ZM21.2277 40.1005L43.8746 53.1603L51.3432 48.8071L29.1782 35.5054L21.2277 40.1005ZM21.4686 34.538V18.3342L22.6733 17.6087L41.7063 6.72554L42.9109 6L87 32.1196V82.6658L65.5578 95L50.8614 86.5353L43.6337 90.6467L14 73.2337V38.8913L15.2046 38.1658L21.4686 34.538Z' fill='black'/%3e%3c/svg%3e";
|
|
9288
9657
|
|
|
9289
|
-
var img$O = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9658
|
+
var img$O = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M46.9476 18C64.6143 18 79 32.5294 79 50.3726C79 68.2157 64.6143 83 46.9476 83C39.3762 83 32.5619 80.451 27.0095 76.1176C29.281 75.3529 31.8048 74.3333 34.0762 72.549C37.1048 70 39.1238 67.1961 40.1333 64.1373C42.1524 65.1569 44.4238 65.6667 46.9476 65.6667C55.2762 65.6667 62.0905 58.7843 62.0905 50.3726C62.0905 41.9608 55.2762 35.5 46.9476 35.5C44.1714 35.5 41.2714 36.7255 39 38C37.9905 35.1961 35.2762 31.7941 32.5 29.5C30.2286 27.7157 28.0238 26.5098 25.5 26C31.3048 21.1569 39.1238 18 46.9476 18Z' fill='%239D9D9C'/%3e%3cpath d='M31.5682 68.64C29.1136 70.6 26.6591 71.72 24.4773 72C24.2045 72 23.9318 72 23.6591 72C22.5682 72 21.75 71.72 21.4773 71.16L21.2045 70.6C20.9318 70.04 20.9318 68.92 21.2045 67.8C22.0227 65.56 23.6591 63.32 25.8409 61.36C28.2955 59.4 31.2955 58 33.4773 58C34.2955 58 35.1136 58 35.6591 58.84C36.2045 59.4 35.9318 60.52 35.9318 61.36C35.9318 63.88 34.0227 66.68 31.5682 68.64Z' fill='white'/%3e%3cpath d='M20.3098 30.8104C20.8464 30.2701 21.9197 30 22.993 30C25.1395 30.2701 27.8226 31.3506 29.9691 33.2414C32.3839 35.1323 34.2621 37.5634 34.7988 39.7243C35.0671 40.5347 35.0671 41.345 34.7988 41.8853L34.5304 42.1554C33.9938 42.6956 33.1889 42.9658 32.6523 42.9658C30.2374 43.2359 27.286 41.8853 24.8712 39.7243C22.7246 38.1036 21.1148 35.9426 20.3098 33.7817C20.0415 33.2414 19.7732 31.6207 20.3098 30.8104Z' fill='white'/%3e%3cpath d='M24.4306 71.3333C26.4499 71.0808 28.7216 70.0707 30.9933 68.303C33.265 66.5354 35.0319 64.0101 35.2843 61.9899C35.5367 61.4848 35.5367 60.4747 35.0319 59.7172C34.5271 59.2121 33.5174 58.9596 33.0126 58.9596C30.9933 58.9596 28.2168 59.9697 25.9451 61.9899C23.9258 63.7576 22.1589 65.7778 21.654 67.798C21.4016 68.8081 21.4016 69.8182 21.654 70.3232L21.9065 70.5758C22.4113 71.0808 22.9161 71.3333 23.9258 71.3333C23.9258 71.3333 24.1782 71.3333 24.4306 71.3333ZM20.8968 31.4343C20.1396 32.4444 20.6444 33.7071 20.8968 34.4646C21.654 36.4848 23.1685 38.5051 25.1878 40.0202C27.4595 42.0404 30.4885 43.0505 32.5078 43.0505C33.0126 43.0505 34.0223 42.798 34.2747 42.2929L34.5271 42.0404C34.7795 41.5354 34.7795 40.7778 34.5271 40.0202C34.0223 38 32.2554 35.7273 29.9837 33.9596C27.9644 32.1919 25.4402 31.1818 23.4209 30.9293C22.4113 30.6768 21.4016 30.9293 20.8968 31.4343ZM84 50.6263C84 71.0808 67.3408 88 46.8953 88C35.2843 88 24.9354 82.697 18.1203 74.3636C17.8679 74.1111 17.8679 74.1111 17.6154 73.8586C17.6154 73.6061 17.363 73.6061 17.363 73.3535L17.1106 73.101C17.1106 72.8485 16.8582 72.8485 16.8582 72.596C16.101 70.8283 16.101 68.8081 16.8582 66.2828C17.8679 63.5051 19.8872 60.4747 22.9161 58.202C26.1975 55.6768 29.9837 54.1616 33.265 54.1616C35.5368 54.1616 37.5561 54.9192 39.0705 56.4343L39.3229 56.6869C39.5754 56.6869 39.5754 56.9394 39.5754 57.1919C41.3422 59.4646 44.1188 60.7273 47.1477 60.7273C52.7008 60.7273 57.2442 56.1818 57.2442 50.6263C57.2442 45.0707 52.7008 40.5253 47.1477 40.5253C43.8664 40.5253 40.8374 42.0404 39.0705 44.5657C38.8181 44.8182 38.8181 45.0707 38.5657 45.3232C37.3036 46.8384 35.5367 47.8485 33.0126 47.8485C32.7602 47.8485 32.7602 47.8485 32.5078 47.8485C29.2264 47.8485 25.4402 46.3333 22.4113 43.8081C19.6347 41.5354 17.6154 38.7576 16.6058 35.9798C15.5961 32.9495 15.8486 30.1717 17.363 28.1515L17.6154 27.6465L17.8679 27.3939C24.683 18.8081 35.2843 13 47.1477 13C67.3408 13.2525 84 29.9192 84 50.6263ZM78.9517 50.6263C78.9517 32.9495 64.5642 18.5556 46.8953 18.5556C39.0705 18.5556 31.7506 21.3333 26.1975 26.1313C28.7216 26.6364 31.2457 27.899 33.5174 29.6667C36.294 31.9394 38.3133 34.7172 39.3229 37.495C41.5947 36.2323 44.1188 35.4747 47.1477 35.4747C55.4774 35.4747 62.2925 42.2929 62.2925 50.6263C62.2925 58.9596 55.4774 65.7778 47.1477 65.7778C44.6236 65.7778 42.3519 65.2727 40.3326 64.2626C39.5754 67.0404 37.3036 70.0707 34.2747 72.596C32.003 74.3636 29.7313 75.6263 27.2071 76.1313C32.7602 80.4242 39.5754 82.9495 47.1477 82.9495C64.5642 82.697 78.9517 68.303 78.9517 50.6263Z' fill='black'/%3e%3c/svg%3e";
|
|
9290
9659
|
|
|
9291
|
-
var img$N = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9660
|
+
var img$N = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M54.5901 49.2615V54.9931H48.7076H42.8252V49.2615V43.5299H48.7076H54.5901V49.2615Z' fill='white'/%3e%3cpath d='M48.7074 54.9931V79.8303M42.825 43.5299L34.0766 35.0832L42.825 43.5299ZM42.825 43.5299V49.2615V43.5299ZM42.825 43.5299H48.7074H42.825ZM42.825 54.9931L34.0766 64.1437L42.825 54.9931ZM42.825 54.9931V49.2615V54.9931ZM42.825 54.9931H48.7074H42.825ZM54.5899 54.9931L63.0365 64.1437L54.5899 54.9931ZM54.5899 54.9931V49.2615V54.9931ZM54.5899 54.9931H48.7074H54.5899ZM54.5899 43.5299L63.0365 35.0832L54.5899 43.5299ZM54.5899 43.5299V49.2615V43.5299ZM54.5899 43.5299H48.7074H54.5899ZM54.5899 49.2615H79.1253H54.5899ZM42.825 49.2615H17.9878H42.825ZM48.7074 43.5299V18.9944V43.5299Z' stroke='black' stroke-width='4'/%3e%3c/svg%3e";
|
|
9292
9661
|
|
|
9293
|
-
var img$M = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9662
|
+
var img$M = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M82 23.5C82 25.8684 80.0541 28 77.3784 28C76.6486 28 75.9189 27.7632 75.1892 27.5263C74.2162 27.0526 73.4865 26.1053 73.2432 25.1579C73 24.6842 73 24.2105 73 23.5C73 21.1316 74.9459 19 77.6216 19C80.0541 19 82 21.1316 82 23.5Z' fill='%239D9D9C'/%3e%3cpath d='M73.359 25.2051C73.6026 26.1795 74.5769 27.1538 75.3077 27.641C76.0385 28.1282 76.7692 28.1282 77.5 28.1282C79.9359 28.1282 82.1282 26.1795 82.1282 23.5C82.1282 20.8205 80.1795 18.8718 77.5 18.8718C75.0641 18.8718 72.8718 20.8205 72.8718 23.5C73.1154 23.9872 73.1154 24.7179 73.359 25.2051ZM77.5 14C82.6154 14 87 18.141 87 23.5C87 28.859 82.859 33 77.5 33C76.0385 33 74.3333 32.5128 73.1154 31.7821C72.8718 31.7821 72.6282 31.5385 72.6282 31.2949C71.1667 30.5641 70.1923 29.1026 69.2179 27.641C68.9744 27.3974 68.9744 26.9103 68.7308 26.6667C68.2436 25.6923 68 24.4744 68 23.2564C68.2436 18.3846 72.3846 14 77.5 14Z' fill='black'/%3e%3cpath d='M69.5946 28C70.3243 29.4516 71.5405 30.6613 73 31.629L31.4054 73C30.4324 71.5484 29.2162 70.3387 28 69.6129L69.5946 28Z' fill='black'/%3e%3cpath d='M19 77.6216C19 75.1892 20.8947 73 23.5 73C24.2105 73 24.6842 73.2432 25.3947 73.2432C26.3421 73.7297 27.2895 74.4595 27.5263 75.4324C27.7632 75.9189 28 76.6487 28 77.3784C28 79.8108 26.1053 82 23.5 82C20.8947 82 19 80.0541 19 77.6216Z' fill='%239D9D9C'/%3e%3cpath d='M23.5 81.8846C25.9359 81.8846 28.1282 79.9359 28.1282 77.2564C28.1282 76.5256 27.8846 75.7949 27.641 75.3077C27.1538 74.3333 26.4231 73.6026 25.4487 73.1154C24.9615 72.8718 24.2308 72.8718 23.5 72.8718C21.0641 72.8718 18.8718 74.8205 18.8718 77.5C19.1154 79.9359 21.0641 81.8846 23.5 81.8846ZM32.0256 73.359C32.7564 74.5769 33 76.0385 33 77.5C33 82.6154 28.859 87 23.5 87C18.3846 87 14 82.859 14 77.5C14 72.141 18.141 68 23.5 68C24.7179 68 25.9359 68.2436 27.1538 68.7308C27.3974 68.9744 27.641 68.9744 27.8846 69.2179C29.3462 69.9487 30.5641 71.1667 31.2949 72.6282C31.7821 72.8718 32.0256 73.1154 32.0256 73.359Z' fill='black'/%3e%3c/svg%3e";
|
|
9663
|
+
var line$1 = img$M;
|
|
9294
9664
|
|
|
9295
|
-
var img$L = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9296
|
-
var
|
|
9665
|
+
var img$L = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='12.5' y='22.5' width='77' height='53' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='89' cy='24' r='8.5' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='13' cy='76' r='8.5' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9666
|
+
var rect2points = img$L;
|
|
9297
9667
|
|
|
9298
|
-
var img$K = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9299
|
-
var rect2points = img$K;
|
|
9668
|
+
var img$K = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M74.0328 31C74.459 34.401 76.8033 37.1642 80 38.0145V75H14L13 30L74.0328 31Z' fill='%239D9D9C'/%3e%3cpath d='M82 25C84.1053 25 86 27.6842 86 30C86 32.1053 84.3158 35 82 35C79.8947 35 77.5 32.3158 77.5 30C77.5 27.6842 79.8947 25 82 25Z' fill='%239D9D9C'/%3e%3cpath d='M50 50H44V56H50V50Z' fill='white'/%3e%3cpath d='M44.3478 49.3478V55.6522H50.6522V49.3478H44.3478ZM40 60V45H55V60H40Z' fill='black'/%3e%3cpath d='M79.5187 38.1041C76.3102 37.2565 73.7433 34.5019 73.5294 31.1115H14.2781V74.974H79.5187V38.1041ZM81.6578 34.0781C83.7968 34.0781 85.7219 32.3829 85.7219 30.052C85.7219 27.9331 84.0107 26.026 81.6578 26.026C79.5187 26.026 77.5936 27.7212 77.5936 30.052C77.5936 32.3829 79.5187 34.0781 81.6578 34.0781ZM90 30.052C90 33.8662 87.4332 37.0446 83.7968 37.8922V79H10V26.8736H74.1711C75.4546 23.9071 78.4492 22 81.6578 22C86.1497 22 90 25.6022 90 30.052Z' fill='black'/%3e%3c/svg%3e";
|
|
9300
9669
|
|
|
9301
|
-
var img$J = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9670
|
+
var img$J = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M45 17.5C45 14.6053 47.3158 12 50.5 12C53.3947 12 56 14.3158 56 17.5C56 20.3947 53.6842 23 50.5 23C47.3158 22.7105 45 20.3947 45 17.5Z' fill='%239D9D9C'/%3e%3cpath d='M84 53.72C84 71.92 68.8594 87 50 87V62.82H58.5V45.5H50V27C54.25 27 57.7031 24.64 59.2969 21C75 25 84 38.64 84 53.72Z' fill='%239D9D9C'/%3e%3cpath d='M46.4 49.9565V57.5217H53.8571V49.9565H46.4ZM50 63H41V45H50H59V63H50V63Z' fill='black'/%3e%3cpath d='M37 15H31V20H37V15Z' fill='black'/%3e%3cpath d='M16 15H10V20H16V15Z' fill='black'/%3e%3cpath d='M26 15H21V20H26V15Z' fill='black'/%3e%3cpath d='M89 53.1728C89 74.4228 71.7059 92 50.2193 92V89.3765V86.7531C68.5615 86.7531 83.7594 71.7994 83.7594 53.1728C83.7594 37.9568 73.5401 25.1019 59.6524 21.1667C58.0802 24.8395 54.4118 27.463 50.2193 27.463C44.7166 27.463 40 23.0031 40 17.2315C40 11.7222 44.4545 7 50.2193 7C55.4599 7 59.6524 10.9352 60.1765 15.9198C76.6845 20.3796 89 35.3333 89 53.1728ZM50.2193 12.2469C47.5989 12.2469 45.2406 14.3457 45.2406 17.2315C45.2406 19.8549 47.3369 22.216 50.2193 22.216C52.8396 22.216 55.1979 20.1173 55.1979 17.2315C55.1979 14.3457 53.1016 12.2469 50.2193 12.2469Z' fill='black'/%3e%3c/svg%3e";
|
|
9671
|
+
var arcTangential = img$J;
|
|
9302
9672
|
|
|
9303
|
-
var img$I = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9304
|
-
var
|
|
9673
|
+
var img$I = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cmask id='path-1-inside-1' fill='white'%3e%3cpath d='M10.6184 60.8555C10.6184 50.4737 14.7426 40.5171 22.0836 33.1761C29.4246 25.8351 39.3812 21.7109 49.7629 21.7109C60.1447 21.7109 70.1013 25.8351 77.4423 33.1761C84.7833 40.5171 88.9074 50.4737 88.9074 60.8554L49.7629 60.8555L10.6184 60.8555Z'/%3e%3c/mask%3e%3cpath d='M10.6184 60.8555C10.6184 50.4737 14.7426 40.5171 22.0836 33.1761C29.4246 25.8351 39.3812 21.7109 49.7629 21.7109C60.1447 21.7109 70.1013 25.8351 77.4423 33.1761C84.7833 40.5171 88.9074 50.4737 88.9074 60.8554L49.7629 60.8555L10.6184 60.8555Z' stroke='black' stroke-width='12' mask='url(%23path-1-inside-1)'/%3e%3cpath d='M82.9238 60.8556C82.9238 52.0608 79.43 43.6262 73.2112 37.4074C66.9924 31.1885 58.5578 27.6948 49.763 27.6948C40.9683 27.6948 32.5337 31.1885 26.3149 37.4074C20.096 43.6262 16.6023 52.0608 16.6023 60.8556L49.763 60.8556H82.9238Z' fill='%23C4C4C4'/%3e%3ccircle cx='13.5545' cy='60.8554' r='7.04754' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='86.4455' cy='60.8554' r='7.04754' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='43.5242' y='53.8079' width='12.4774' height='12.4774' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9674
|
+
var arcCenter = img$I;
|
|
9305
9675
|
|
|
9306
|
-
var img$H = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9307
|
-
var
|
|
9676
|
+
var img$H = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M84 63.5C84 58.9694 83.1076 54.4832 81.3738 50.2974C79.6401 46.1117 77.0988 42.3084 73.8952 39.1048C70.6916 35.9012 66.8883 33.3599 62.7026 31.6262C58.5168 29.8924 54.0306 29 49.5 29C44.9694 29 40.4832 29.8924 36.2974 31.6262C32.1117 33.3599 28.3084 35.9012 25.1048 39.1048C21.9012 42.3084 19.3599 46.1117 17.6262 50.2974C15.8924 54.4832 15 58.9694 15 63.5L49.5 63.5H84Z' fill='%23C4C4C4'/%3e%3cpath d='M84 63.5C84 58.9694 83.1076 54.4832 81.3738 50.2974C79.6401 46.1117 77.0988 42.3084 73.8952 39.1048C70.6916 35.9012 66.8883 33.3599 62.7026 31.6262C58.5168 29.8924 54.0306 29 49.5 29C44.9694 29 40.4832 29.8924 36.2974 31.6262C32.1117 33.3599 28.3084 35.9012 25.1048 39.1048C21.9012 42.3084 19.3599 46.1117 17.6262 50.2974C15.8924 54.4832 15 58.9694 15 63.5' stroke='black' stroke-width='5'/%3e%3ccircle cx='17.5' cy='63.5' r='8' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='81.5' cy='63.5' r='8' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3ccircle cx='49.5' cy='31.5' r='8' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9677
|
+
var arc3points = img$H;
|
|
9308
9678
|
|
|
9309
|
-
var img$G = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9310
|
-
var
|
|
9679
|
+
var img$G = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M49.7712 85C30.6811 85 15 68.9977 15 49.6349C15 30.2721 30.5448 15 49.9076 15C56.4528 15 63.3478 16.7601 68.5294 20.0327C67.984 21.3963 67.1569 23.2443 67.1569 24.6078C67.1569 30.3349 71.2225 34.6732 77.2222 34.6732C78.5858 34.6732 80.249 34.3036 81.3399 33.7582C83.5216 38.3943 85 44.3169 85 49.7712C85 69.1341 68.8613 85 49.7712 85ZM58.4641 58.4641V41.0784H41.0784V58.4641H58.4641Z' fill='%239D9D9C'/%3e%3cpath d='M55 46H46V55H55V46Z' fill='white'/%3e%3cpath d='M72 25C72 21.8421 74.3158 19 77.5 19C80.3947 19 83 21.5263 83 25C83 28.1579 80.6842 31 77.5 31C74.3158 31 72 28.1579 72 25Z' fill='%239D9D9C'/%3e%3cpath d='M77.4136 30.0678C80.0915 30.0678 82.5017 27.8983 82.5017 24.9153C82.5017 22.2034 80.3593 19.7627 77.4136 19.7627C74.7356 19.7627 72.3254 21.9322 72.3254 24.9153C72.5932 27.6271 74.7356 30.0678 77.4136 30.0678ZM50.6339 84.5763C69.3797 84.5763 84.6441 69.1186 84.6441 49.8644C84.6441 44.4407 83.3051 39.2881 81.1627 34.678C80.0915 34.9492 78.7525 35.4915 77.6814 35.4915C72.0576 35.4915 67.2373 30.8814 67.2373 24.9153C67.2373 23.2881 67.5051 21.9322 68.3085 20.5763C63.2203 17.322 57.061 15.4237 50.6339 15.4237C31.8881 15.4237 16.3559 30.8814 16.3559 50.1356C16.3559 69.3898 31.6203 84.5763 50.6339 84.5763ZM71.522 16.2373C73.1288 15.1525 75.2712 14.339 77.4136 14.339C83.0373 14.339 87.8576 18.9492 87.8576 24.9153C87.8576 27.3559 86.7864 29.7966 85.4475 31.4237C88.3932 37.1186 90 43.3559 90 49.8644C90 72.1017 72.3254 90 50.6339 90C28.9424 90 11 72.1017 11 49.8644C11 27.6271 28.6746 10 50.6339 10C58.4 10 65.6305 12.4407 71.522 16.2373Z' fill='black'/%3e%3cpath d='M46.2174 53.7826H53.7826V46.2174H46.2174V53.7826ZM41 41H59V59H41V41V41Z' fill='black'/%3e%3c/svg%3e";
|
|
9680
|
+
var circleCenterRadius = img$G;
|
|
9311
9681
|
|
|
9312
|
-
var img$F = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
9313
|
-
var
|
|
9682
|
+
var img$F = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M61.8771 19.8479C71.6505 19.8479 79.795 27.6795 79.795 37.6715V61.9765V71.4284V75.7493V79.5301H75.9942H71.6505H62.1486H37.7152H28.2133H23.8696H20.0688V75.7493V71.4284V61.9765V37.6715V28.2196V23.8987V20.118H23.8696H28.2133H37.7152H61.8771V19.8479Z' fill='%239D9D9C'/%3e%3cpath d='M84.2997 84.2994H62.0418H38.1941H16.2012V62.0415V38.1937V16.2008H38.4591H62.3068C65.7515 16.2008 69.1962 16.9957 72.1109 18.5856C73.4358 19.3805 74.7606 20.1754 75.8205 20.9704C77.1454 22.0303 78.4703 23.3551 79.5302 24.68C80.3251 25.7399 81.385 27.0648 81.915 28.3897C83.5048 31.3044 84.2997 34.7491 84.2997 38.4587V62.3065V84.2994V84.2994ZM79.5302 38.4587C79.5302 28.9196 71.5809 20.9704 62.0418 20.9704H38.1941H28.92H24.6804H20.9707V24.68V28.9196V38.1937V62.0415V71.3156V75.5552V79.2649H24.6804H28.92H38.1941H62.0418H71.316H75.5556H79.2652V75.5552V71.3156V62.0415V38.4587H79.5302Z' fill='black'/%3e%3c/svg%3e";
|
|
9683
|
+
var filletSketch = img$F;
|
|
9314
9684
|
|
|
9315
|
-
var img$E = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100'
|
|
9316
|
-
var
|
|
9685
|
+
var img$E = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8'%3f%3e%3c!-- Created with Inkscape (http://www.inkscape.org/) --%3e%3csvg width='100' height='100' version='1.1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3e %3cg%3e %3cpath d='m10 50h40' fill='%23202020' stroke='%23282828' stroke-dasharray='5%2c 5' stroke-dashoffset='10' stroke-width='5'/%3e %3cg transform='rotate(45 -33.625 89.376)' stroke='black' stroke-dashoffset='64.252' stroke-linecap='round' stroke-linejoin='round' stroke-width='6'%3e %3cpath d='m-25 0h60' fill='%23c4c4c4'/%3e %3ccircle cx='-33' r='8' fill='none'/%3e %3c/g%3e %3cpath d='m58 50h32' fill='%23202020' stroke='%23282828' stroke-dasharray='5%2c 5%2c 60' stroke-width='5'/%3e %3cg transform='rotate(-45 86.975 -39.422)' stroke='black' stroke-dashoffset='64.252' stroke-linecap='round' stroke-linejoin='round' stroke-width='6'%3e %3cpath d='m-25 0h60' fill='%23c4c4c4'/%3e %3ccircle cx='-33' r='8' fill='none'/%3e %3c/g%3e %3c/g%3e%3c/svg%3e";
|
|
9686
|
+
var trim = img$E;
|
|
9317
9687
|
|
|
9318
|
-
var img$D = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8'%3f%3e%3c!-- Created with Inkscape (http://www.inkscape.org/) --%3e%3csvg width='100' height='100' version='1.1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3e %3cg
|
|
9319
|
-
var
|
|
9688
|
+
var img$D = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8'%3f%3e%3c!-- Created with Inkscape (http://www.inkscape.org/) --%3e%3csvg width='100' height='100' version='1.1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3e %3cg stroke='black' stroke-dashoffset='64.252' stroke-width='5'%3e %3cg fill='none'%3e %3cpath d='m30.721 89.746a60 60 0 0 1 60-60' style='paint-order:normal'/%3e %3cpath d='m20 20 60 60' style='paint-order:normal'/%3e %3cpath d='m28 48h40' style='paint-order:normal'/%3e %3cpath d='m48 28v40' style='paint-order:normal'/%3e %3c/g%3e %3ccircle cx='48' cy='48' r='8' fill='%23c4c4c4' style='paint-order:normal'/%3e %3c/g%3e%3c/svg%3e";
|
|
9689
|
+
var split = img$D;
|
|
9320
9690
|
|
|
9321
|
-
var img$C = "data:image/svg+xml,%
|
|
9322
|
-
var
|
|
9691
|
+
var img$C = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='12.5' y='10.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='12.5' y='70.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='69.5' y='70.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3cpath d='M21.5 62V47.5' stroke='black' stroke-width='3'/%3e%3cpath d='M26 47H17L21.5 39L26 47Z' fill='black' stroke='black'/%3e%3cpath d='M39 80.5L53.5 80.5' stroke='black' stroke-width='3'/%3e%3cpath d='M54 85L54 76L62 80.5L54 85Z' fill='black' stroke='black'/%3e%3c/svg%3e";
|
|
9692
|
+
var copyRect = img$C;
|
|
9323
9693
|
|
|
9324
|
-
var img$B = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='
|
|
9325
|
-
var
|
|
9694
|
+
var img$B = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='56.5' y='40.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='24.5' y='70.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='24.5' y='10.5' width='19' height='19' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3cpath d='M64 23L64 26L59 23L64 20L64 23Z' fill='black'/%3e%3cpath d='M70 32C70 32 69.9661 27.6452 68.5 25.5C67.0339 23.3548 64 23 64 23M64 26L64 20L59 23L64 26Z' stroke='black' stroke-width='2'/%3e%3cpath d='M67.0001 73.9992L64.0001 73.9984L67 69L70.0001 74L67.0001 73.9992Z' fill='black'/%3e%3cpath d='M58.0001 80C58.0001 80 62.1802 80 64.5 78.5C66.8198 77 67.0001 73.9992 67.0001 73.9992M64.0001 73.9984L70.0001 74L67 69L64.0001 73.9984Z' stroke='black' stroke-width='2'/%3e%3ccircle cx='34' cy='50' r='6.5' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9695
|
+
var copyCirc = img$B;
|
|
9326
9696
|
|
|
9327
|
-
var img$A = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9328
|
-
var copyCirc = img$A;
|
|
9697
|
+
var img$A = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cline x1='49.5' y1='16' x2='49.5' y2='85' stroke='black' stroke-width='5'/%3e%3crect x='11.5' y='37.5' width='25' height='25' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3crect x='63.5' y='37.5' width='25' height='25' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3c/svg%3e";
|
|
9329
9698
|
|
|
9330
|
-
var img$z = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9699
|
+
var img$z = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3crect x='18.5' y='18.5' width='64' height='64' fill='%23C4C4C4' stroke='black' stroke-width='5'/%3e%3cpath d='M48.6562 36.4062V53.2637C48.6562 56.0645 47.7773 58.2793 46.0195 59.9082C44.2734 61.5371 41.8828 62.3516 38.8477 62.3516C35.8594 62.3516 33.4863 61.5605 31.7285 59.9785C29.9707 58.3965 29.0742 56.2227 29.0391 53.457V36.4062H34.3125V53.2988C34.3125 54.9746 34.7109 56.1992 35.5078 56.9727C36.3164 57.7344 37.4297 58.1152 38.8477 58.1152C41.8125 58.1152 43.3184 56.5566 43.3652 53.4395V36.4062H48.6562ZM66.252 55.2852C66.252 54.2891 65.9004 53.5273 65.1973 53C64.4941 52.4609 63.2285 51.8984 61.4004 51.3125C59.5723 50.7148 58.125 50.1289 57.0586 49.5547C54.1523 47.9844 52.6992 45.8691 52.6992 43.209C52.6992 41.8262 53.0859 40.5957 53.8594 39.5176C54.6445 38.4277 55.7637 37.5781 57.2168 36.9688C58.6816 36.3594 60.3223 36.0547 62.1387 36.0547C63.9668 36.0547 65.5957 36.3887 67.0254 37.0566C68.4551 37.7129 69.5625 38.6445 70.3477 39.8516C71.1445 41.0586 71.543 42.4297 71.543 43.9648H66.2695C66.2695 42.793 65.9004 41.8848 65.1621 41.2402C64.4238 40.584 63.3867 40.2559 62.0508 40.2559C60.7617 40.2559 59.7598 40.5312 59.0449 41.082C58.3301 41.6211 57.9727 42.3359 57.9727 43.2266C57.9727 44.0586 58.3887 44.7559 59.2207 45.3184C60.0645 45.8809 61.3008 46.4082 62.9297 46.9004C65.9297 47.8027 68.1152 48.9219 69.4863 50.2578C70.8574 51.5938 71.543 53.2578 71.543 55.25C71.543 57.4648 70.7051 59.2051 69.0293 60.4707C67.3535 61.7246 65.0977 62.3516 62.2617 62.3516C60.293 62.3516 58.5 61.9941 56.8828 61.2793C55.2656 60.5527 54.0293 59.5625 53.1738 58.3086C52.3301 57.0547 51.9082 55.6016 51.9082 53.9492H57.1992C57.1992 56.7734 58.8867 58.1855 62.2617 58.1855C63.5156 58.1855 64.4941 57.9336 65.1973 57.4297C65.9004 56.9141 66.252 56.1992 66.252 55.2852Z' fill='black'/%3e%3c/svg%3e";
|
|
9700
|
+
var useReference = img$z;
|
|
9331
9701
|
|
|
9332
|
-
var img$y = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%
|
|
9333
|
-
var useReference = img$y;
|
|
9702
|
+
var img$y = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M52.9688 53.0938H42.2812V71.5H36.25V26H51.3125C56.4375 26 60.375 27.1667 63.125 29.5C65.8958 31.8333 67.2812 35.2292 67.2812 39.6875C67.2812 42.5208 66.5104 44.9896 64.9688 47.0938C63.4479 49.1979 61.3229 50.7708 58.5938 51.8125L69.2812 71.125V71.5H62.8438L52.9688 53.0938ZM42.2812 48.1875H51.5C54.4792 48.1875 56.8438 47.4167 58.5938 45.875C60.3646 44.3333 61.25 42.2708 61.25 39.6875C61.25 36.875 60.4062 34.7188 58.7188 33.2188C57.0521 31.7188 54.6354 30.9583 51.4688 30.9375H42.2812V48.1875Z' fill='%235E5E5E'/%3e%3cpath d='M52.9688 53.0938L53.8499 52.621L53.5671 52.0938H52.9688V53.0938ZM42.2812 53.0938V52.0938H41.2812V53.0938H42.2812ZM42.2812 71.5V72.5H43.2812V71.5H42.2812ZM36.25 71.5H35.25V72.5H36.25V71.5ZM36.25 26V25H35.25V26H36.25ZM63.125 29.5L62.478 30.2625L62.4809 30.2649L63.125 29.5ZM64.9688 47.0938L64.1621 46.5027L64.1583 46.508L64.9688 47.0938ZM58.5938 51.8125L58.2372 50.8782L57.1611 51.2889L57.7188 52.2967L58.5938 51.8125ZM69.2812 71.125H70.2812V70.8668L70.1562 70.6408L69.2812 71.125ZM69.2812 71.5V72.5H70.2812V71.5H69.2812ZM62.8438 71.5L61.9626 71.9728L62.2454 72.5H62.8438V71.5ZM42.2812 48.1875H41.2812V49.1875H42.2812V48.1875ZM58.5938 45.875L57.9371 45.1208L57.9327 45.1246L58.5938 45.875ZM58.7188 33.2188L58.0498 33.9621L58.0544 33.9662L58.7188 33.2188ZM51.4688 30.9375L51.4753 29.9375H51.4688V30.9375ZM42.2812 30.9375V29.9375H41.2812V30.9375H42.2812ZM52.9688 52.0938H42.2812V54.0938H52.9688V52.0938ZM41.2812 53.0938V71.5H43.2812V53.0938H41.2812ZM42.2812 70.5H36.25V72.5H42.2812V70.5ZM37.25 71.5V26H35.25V71.5H37.25ZM36.25 27H51.3125V25H36.25V27ZM51.3125 27C56.2989 27 59.9717 28.136 62.478 30.2625L63.772 28.7375C60.7783 26.1974 56.5761 25 51.3125 25V27ZM62.4809 30.2649C64.9748 32.3651 66.2812 35.4498 66.2812 39.6875H68.2812C68.2812 35.0085 66.8169 31.3016 63.7691 28.7351L62.4809 30.2649ZM66.2812 39.6875C66.2812 42.3276 65.5672 44.585 64.1621 46.5027L65.7754 47.6848C67.4537 45.3942 68.2812 42.714 68.2812 39.6875H66.2812ZM64.1583 46.508C62.7655 48.435 60.8079 49.8971 58.2372 50.8782L58.9503 52.7468C61.838 51.6446 64.1304 49.9608 65.7792 47.6795L64.1583 46.508ZM57.7188 52.2967L68.4063 71.6092L70.1562 70.6408L59.4687 51.3283L57.7188 52.2967ZM68.2812 71.125V71.5H70.2812V71.125H68.2812ZM69.2812 70.5H62.8438V72.5H69.2812V70.5ZM63.7249 71.0272L53.8499 52.621L52.0876 53.5665L61.9626 71.9728L63.7249 71.0272ZM42.2812 49.1875H51.5V47.1875H42.2812V49.1875ZM51.5 49.1875C54.6531 49.1875 57.276 48.3686 59.2548 46.6254L57.9327 45.1246C56.4115 46.4648 54.3053 47.1875 51.5 47.1875V49.1875ZM59.2504 46.6292C61.2628 44.8772 62.25 42.5275 62.25 39.6875H60.25C60.25 42.0142 59.4664 43.7894 57.9371 45.1208L59.2504 46.6292ZM62.25 39.6875C62.25 36.665 61.3348 34.2062 59.3831 32.4713L58.0544 33.9662C59.4777 35.2313 60.25 37.085 60.25 39.6875H62.25ZM59.3877 32.4755C57.4763 30.7552 54.7864 29.9593 51.4753 29.9375L51.4622 31.9375C54.4844 31.9574 56.6279 32.6823 58.0498 33.962L59.3877 32.4755ZM51.4688 29.9375H42.2812V31.9375H51.4688V29.9375ZM41.2812 30.9375V48.1875H43.2812V30.9375H41.2812Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
9334
9703
|
|
|
9335
9704
|
const RootContext = /*#__PURE__*/React__default.createContext({
|
|
9336
9705
|
drawingId: -1,
|
|
@@ -9987,19 +10356,20 @@ const resources = {
|
|
|
9987
10356
|
[CCClasses.CC2DEqualRadiusConstraint]: equal,
|
|
9988
10357
|
[CCClasses.CC2DHorizontalDistanceConstraint]: hdimension,
|
|
9989
10358
|
[CCClasses.CC2DVerticalDistanceConstraint]: vdimension,
|
|
9990
|
-
[CCClasses.CC2DOffsetConstraint]: img$
|
|
10359
|
+
[CCClasses.CC2DOffsetConstraint]: img$U,
|
|
9991
10360
|
[CCClasses.CC2DRadiusConstraint]: radius,
|
|
9992
|
-
[CCClasses.CC2DDiameterConstraint]: img$
|
|
10361
|
+
[CCClasses.CC2DDiameterConstraint]: img$U,
|
|
9993
10362
|
[CCClasses.CC2DAngleConstraint]: angle,
|
|
9994
10363
|
[CCClasses.CC2DAngleOXConstraint]: angleox,
|
|
9995
10364
|
[CCClasses.CCRigidSet]: rigidSet,
|
|
9996
10365
|
[CCClasses.CCUse]: useReference,
|
|
9997
|
-
[CCClasses.CCExtrusion]: img$
|
|
9998
|
-
[CCClasses.CCRevolve]: img$
|
|
9999
|
-
[
|
|
10366
|
+
[CCClasses.CCExtrusion]: img$P,
|
|
10367
|
+
[CCClasses.CCRevolve]: img$O,
|
|
10368
|
+
[CCClasses.CCSketchRegion]: img$y,
|
|
10369
|
+
[HandlersList.DRAWPOINT]: img$N,
|
|
10000
10370
|
[HandlersList.DRAWLINE]: line$1,
|
|
10001
10371
|
[HandlersList.DRAWRECT2POINTS]: rect2points,
|
|
10002
|
-
[HandlersList.DRAWRECTCENTER]: img$
|
|
10372
|
+
[HandlersList.DRAWRECTCENTER]: img$K,
|
|
10003
10373
|
[HandlersList.DRAWARCTANGENT]: arcTangential,
|
|
10004
10374
|
[HandlersList.DRAWARCCENTER]: arcCenter,
|
|
10005
10375
|
[HandlersList.DRAWARCMIDDLE]: arc3points,
|
|
@@ -10010,7 +10380,7 @@ const resources = {
|
|
|
10010
10380
|
[HandlersList.USEREF]: useReference,
|
|
10011
10381
|
[Patterns.RECTANGULAR]: copyRect,
|
|
10012
10382
|
[Patterns.CIRCULAR]: copyCirc,
|
|
10013
|
-
[Patterns.MIRROR]: img$
|
|
10383
|
+
[Patterns.MIRROR]: img$A
|
|
10014
10384
|
};
|
|
10015
10385
|
const textures = {};
|
|
10016
10386
|
const textureLoader = new THREE.TextureLoader();
|
|
@@ -10783,8 +11153,8 @@ function recognizeFilletByArc(object, tree, sketchId) {
|
|
|
10783
11153
|
};
|
|
10784
11154
|
}
|
|
10785
11155
|
|
|
10786
|
-
function ownKeys$
|
|
10787
|
-
function _objectSpread$
|
|
11156
|
+
function ownKeys$h(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
11157
|
+
function _objectSpread$h(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$h(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$h(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
10788
11158
|
function Fillet(drawingId, pluginId) {
|
|
10789
11159
|
const plugin = getPlugin(drawingId, pluginId);
|
|
10790
11160
|
const set = plugin.set;
|
|
@@ -10916,7 +11286,7 @@ function Fillet(drawingId, pluginId) {
|
|
|
10916
11286
|
if (!data) {
|
|
10917
11287
|
return;
|
|
10918
11288
|
}
|
|
10919
|
-
ccAPI.sketcher.createFillet(drawingId, sketchId, data.info.lines.map(line => line.id), data.info.lineStarts.map(lineStart => lineStart.id), data.info.incidence, data.info.control, data.params.start, getArcAngles(_objectSpread$
|
|
11289
|
+
ccAPI.sketcher.createFillet(drawingId, sketchId, data.info.lines.map(line => line.id), data.info.lineStarts.map(lineStart => lineStart.id), data.info.incidence, data.info.control, data.params.start, getArcAngles(_objectSpread$h(_objectSpread$h({}, data.params), {}, {
|
|
10920
11290
|
radius: 1
|
|
10921
11291
|
})).mid, data.params.end).catch(console.warn);
|
|
10922
11292
|
set({
|
|
@@ -11020,8 +11390,8 @@ function Trim(drawingId, pluginId) {
|
|
|
11020
11390
|
};
|
|
11021
11391
|
}
|
|
11022
11392
|
|
|
11023
|
-
function ownKeys$
|
|
11024
|
-
function _objectSpread$
|
|
11393
|
+
function ownKeys$g(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
11394
|
+
function _objectSpread$g(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$g(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$g(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
11025
11395
|
const tolerance$5 = 1e-6;
|
|
11026
11396
|
const tMinClosed = 1e-3;
|
|
11027
11397
|
const tMaxClosed = 1 - 1e-3;
|
|
@@ -11191,7 +11561,7 @@ function intersectCircleCircle(circle1, circle2) {
|
|
|
11191
11561
|
const c = w * w - dy * dy;
|
|
11192
11562
|
let res = solveQuadratic(a, b, c).filter(u => u >= -1 && u <= 1).map(u => Math.acos(u) / (2 * Math.PI));
|
|
11193
11563
|
res = [...res, ...res.map(u => -u)];
|
|
11194
|
-
const points = res.map(t => getParameterizedPosition(t, _objectSpread$
|
|
11564
|
+
const points = res.map(t => getParameterizedPosition(t, _objectSpread$g(_objectSpread$g({}, circle1), {}, {
|
|
11195
11565
|
class: CCClasses.CCCircle
|
|
11196
11566
|
}))).filter(point => Math.abs(point.distanceTo(circle1.center) - circle1.radius) < tolerance$5 && Math.abs(point.distanceTo(circle2.center) - circle2.radius) < tolerance$5);
|
|
11197
11567
|
const circle1Intersections = points.map(point => getNormalizedPosition(point, circle1));
|
|
@@ -11562,9 +11932,69 @@ function UseRef(drawingId, pluginId) {
|
|
|
11562
11932
|
};
|
|
11563
11933
|
}
|
|
11564
11934
|
|
|
11935
|
+
function ownKeys$f(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
11936
|
+
function _objectSpread$f(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$f(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$f(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
11937
|
+
function SSelect(drawingId, pluginId) {
|
|
11938
|
+
const hoverHandler = Hover(drawingId, pluginId);
|
|
11939
|
+
const filter = object => true;
|
|
11940
|
+
const onDeactivate = () => {
|
|
11941
|
+
hoverHandler.onDeactivate && hoverHandler.onDeactivate();
|
|
11942
|
+
const {
|
|
11943
|
+
set
|
|
11944
|
+
} = getPlugin(drawingId, pluginId);
|
|
11945
|
+
set({
|
|
11946
|
+
highlighted: [],
|
|
11947
|
+
interaction: {
|
|
11948
|
+
cycle: 0,
|
|
11949
|
+
objects: [],
|
|
11950
|
+
lastHoveredPos: {},
|
|
11951
|
+
constraintsToGeometry: {}
|
|
11952
|
+
}
|
|
11953
|
+
});
|
|
11954
|
+
};
|
|
11955
|
+
const onClick = e => {
|
|
11956
|
+
if (e.delta > 1) {
|
|
11957
|
+
return;
|
|
11958
|
+
}
|
|
11959
|
+
const {
|
|
11960
|
+
cycle,
|
|
11961
|
+
objects
|
|
11962
|
+
} = getSketchState(drawingId, pluginId).interaction;
|
|
11963
|
+
const pressedId = objects.length > 0 ? objects[cycle % objects.length] : e.object.userData.objId;
|
|
11964
|
+
const drawing = getDrawing(drawingId);
|
|
11965
|
+
const productId = drawing.structure.currentProduct;
|
|
11966
|
+
const object = drawing.structure.tree[pressedId];
|
|
11967
|
+
const selection = drawing.selection.refs[drawing.selection.active || ''];
|
|
11968
|
+
const isSelectable = (selection == null ? void 0 : selection.isSelectable(TreeObjScope, {
|
|
11969
|
+
object
|
|
11970
|
+
})) || false;
|
|
11971
|
+
if (!isSelectable || !productId) {
|
|
11972
|
+
return;
|
|
11973
|
+
}
|
|
11974
|
+
e.stopPropagation();
|
|
11975
|
+
if (selection != null && selection.isSelectable(TreeObjScope, {
|
|
11976
|
+
object
|
|
11977
|
+
})) {
|
|
11978
|
+
const item = createTreeObjSelItem(productId, object);
|
|
11979
|
+
const selApi = drawing.api.selection;
|
|
11980
|
+
selApi.isItemSelected(item) ? selApi.unselect(item) : selApi.select(item);
|
|
11981
|
+
}
|
|
11982
|
+
};
|
|
11983
|
+
return {
|
|
11984
|
+
name: HandlersList.SSELECT,
|
|
11985
|
+
filter,
|
|
11986
|
+
onDeactivate,
|
|
11987
|
+
pointerHandlers: _objectSpread$f({
|
|
11988
|
+
onClick
|
|
11989
|
+
}, hoverHandler.pointerHandlers),
|
|
11990
|
+
keyHandlers: _objectSpread$f({}, hoverHandler.keyHandlers)
|
|
11991
|
+
};
|
|
11992
|
+
}
|
|
11993
|
+
|
|
11565
11994
|
const HandlersConstructors = {
|
|
11566
11995
|
[HandlersList.CREATEANGLE]: CreateAngle,
|
|
11567
11996
|
[HandlersList.DRAG]: Drag,
|
|
11997
|
+
[HandlersList.SSELECT]: SSelect,
|
|
11568
11998
|
[HandlersList.DRAWPOINT]: DrawPoint,
|
|
11569
11999
|
[HandlersList.DRAWLINE]: DrawLine,
|
|
11570
12000
|
[HandlersList.DRAWCIRCLE]: DrawCircle,
|
|
@@ -11680,9 +12110,9 @@ const getLineColor = objState => {
|
|
|
11680
12110
|
isHighlighted,
|
|
11681
12111
|
lgsState
|
|
11682
12112
|
} = objState;
|
|
11683
|
-
if (!isSketchActive) return 0x009999;
|
|
11684
12113
|
if (isSelected) return 0xffa500;
|
|
11685
12114
|
if (isGHovered || isHighlighted) return 0x00ff00;
|
|
12115
|
+
if (!isSketchActive) return 0x009999;
|
|
11686
12116
|
if (isWelldefined(lgsState)) return 0x000000;
|
|
11687
12117
|
if (isOverdefined(lgsState)) return 0x990000;
|
|
11688
12118
|
return 0x0066ff;
|
|
@@ -11695,9 +12125,9 @@ const getArcColor = objState => {
|
|
|
11695
12125
|
isHighlighted,
|
|
11696
12126
|
lgsState
|
|
11697
12127
|
} = objState;
|
|
11698
|
-
if (!isSketchActive) return 0x009999;
|
|
11699
12128
|
if (isSelected) return 0xffa500;
|
|
11700
12129
|
if (isGHovered || isHighlighted) return 0x00ff00;
|
|
12130
|
+
if (!isSketchActive) return 0x009999;
|
|
11701
12131
|
if (isWelldefined(lgsState)) return 0x000000;
|
|
11702
12132
|
if (isOverdefined(lgsState)) return 0x990000;
|
|
11703
12133
|
return 0x0066ff;
|
|
@@ -11717,6 +12147,17 @@ const getConstrColor = objState => {
|
|
|
11717
12147
|
if (isHighlighted) return 0xbbecdd;
|
|
11718
12148
|
return 0xdddddd;
|
|
11719
12149
|
};
|
|
12150
|
+
const getRegionColor = objState => {
|
|
12151
|
+
const {
|
|
12152
|
+
isSelected,
|
|
12153
|
+
isGHovered,
|
|
12154
|
+
isHighlighted
|
|
12155
|
+
} = objState;
|
|
12156
|
+
if (isSelected) return 0xffff00;
|
|
12157
|
+
if (isGHovered) return 0x28d79f;
|
|
12158
|
+
if (isHighlighted) return 0xbbecdd;
|
|
12159
|
+
return 0xdddddd;
|
|
12160
|
+
};
|
|
11720
12161
|
const getColor = (object, objState) => {
|
|
11721
12162
|
const {
|
|
11722
12163
|
isSketchActive,
|
|
@@ -11739,6 +12180,8 @@ const getColor = (object, objState) => {
|
|
|
11739
12180
|
return getArcColor(objState);
|
|
11740
12181
|
} else if (is2DConstraint(object)) {
|
|
11741
12182
|
return getConstrColor(objState);
|
|
12183
|
+
} else if (isSketchRegion(object)) {
|
|
12184
|
+
return getRegionColor(objState);
|
|
11742
12185
|
}
|
|
11743
12186
|
return 0x000000;
|
|
11744
12187
|
};
|
|
@@ -11781,9 +12224,9 @@ const useColor = objId => {
|
|
|
11781
12224
|
var _d$interaction$select2;
|
|
11782
12225
|
return ((_d$interaction$select2 = d.interaction.selected) == null ? void 0 : _d$interaction$select2.findIndex(info => info.objectId === objId)) !== -1;
|
|
11783
12226
|
}) || false;
|
|
11784
|
-
//
|
|
12227
|
+
// sHovered - true if object is selector-hovered
|
|
11785
12228
|
const sHovered = useIsSHovered(drawingId, objId);
|
|
11786
|
-
//
|
|
12229
|
+
// sSelected - true if object is selector-selected
|
|
11787
12230
|
const sSelected = useIsSSelected(drawingId, objId);
|
|
11788
12231
|
const isSelected = gSelected || sSelected;
|
|
11789
12232
|
const isHighlighted = useSketchState(drawingId, pluginId, state => state.highlighted.indexOf(objId) !== -1);
|
|
@@ -11834,10 +12277,7 @@ const defaultHandlers = {
|
|
|
11834
12277
|
};
|
|
11835
12278
|
|
|
11836
12279
|
const useHandlersAndColor = (drawingId, objId) => {
|
|
11837
|
-
const
|
|
11838
|
-
const treeObjInteraction = useTreeObjInteraction(drawingId, objId);
|
|
11839
|
-
const sketchPointerHandlers = useSketchHandlers(objId);
|
|
11840
|
-
const pointerHandlers = isSelActive ? treeObjInteraction.handlers : sketchPointerHandlers;
|
|
12280
|
+
const pointerHandlers = useSketchHandlers(objId);
|
|
11841
12281
|
const color = useColor(objId);
|
|
11842
12282
|
return React__default.useMemo(() => ({
|
|
11843
12283
|
handlers: pointerHandlers || defaultHandlers,
|
|
@@ -11845,22 +12285,6 @@ const useHandlersAndColor = (drawingId, objId) => {
|
|
|
11845
12285
|
}), [pointerHandlers, color]);
|
|
11846
12286
|
};
|
|
11847
12287
|
|
|
11848
|
-
const virtualScene = new THREE.Scene();
|
|
11849
|
-
const HUD = ({
|
|
11850
|
-
children
|
|
11851
|
-
}) => {
|
|
11852
|
-
const {
|
|
11853
|
-
gl,
|
|
11854
|
-
camera
|
|
11855
|
-
} = useThree();
|
|
11856
|
-
useFrame(() => {
|
|
11857
|
-
gl.autoClear = false;
|
|
11858
|
-
gl.clearDepth();
|
|
11859
|
-
gl.render(virtualScene, camera);
|
|
11860
|
-
}, 3);
|
|
11861
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, createPortal( /*#__PURE__*/React__default.createElement("group", null, children), virtualScene));
|
|
11862
|
-
};
|
|
11863
|
-
|
|
11864
12288
|
/*
|
|
11865
12289
|
* For correct drawing of objects that lie in the same plane, polygonOffset is used.
|
|
11866
12290
|
* https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glPolygonOffset.xhtml
|
|
@@ -11871,22 +12295,21 @@ const HUD = ({
|
|
|
11871
12295
|
* factor parameter is redundant for this purpose, so only units parameter is used.
|
|
11872
12296
|
*/
|
|
11873
12297
|
|
|
11874
|
-
const
|
|
12298
|
+
const iconSize = 2.5;
|
|
11875
12299
|
const hoverZone = 0.8;
|
|
11876
|
-
const
|
|
12300
|
+
const iconBox = new THREE.Box3();
|
|
11877
12301
|
const boxMin = new THREE.Vector3();
|
|
11878
12302
|
const boxMax = new THREE.Vector3();
|
|
11879
12303
|
const target$2 = new THREE.Vector3();
|
|
11880
|
-
const
|
|
12304
|
+
const Icon$3 = ({
|
|
12305
|
+
objId,
|
|
12306
|
+
position
|
|
12307
|
+
}) => {
|
|
11881
12308
|
const {
|
|
11882
12309
|
drawingId,
|
|
11883
12310
|
pluginId
|
|
11884
12311
|
} = React__default.useContext(ViewContext);
|
|
11885
|
-
const
|
|
11886
|
-
objId,
|
|
11887
|
-
position
|
|
11888
|
-
} = props;
|
|
11889
|
-
const constraint = useDrawing(drawingId, drawing => drawing.structure.tree[objId]);
|
|
12312
|
+
const object = useDrawing(drawingId, drawing => drawing.structure.tree[objId]);
|
|
11890
12313
|
const {
|
|
11891
12314
|
handlers,
|
|
11892
12315
|
color
|
|
@@ -11897,15 +12320,15 @@ const Constraint$1 = props => {
|
|
|
11897
12320
|
renderOrder,
|
|
11898
12321
|
polygonOffsetUnits
|
|
11899
12322
|
} = useGeomParams(objId);
|
|
11900
|
-
const texture = textures[
|
|
11901
|
-
const
|
|
12323
|
+
const texture = textures[object.class];
|
|
12324
|
+
const raycast = React__default.useCallback(function (raycaster, intersects) {
|
|
11902
12325
|
const sketchScale = getScale(drawingId, pluginId);
|
|
11903
|
-
const halfWidth = (
|
|
12326
|
+
const halfWidth = (iconSize + hoverZone) * sketchScale * 0.5;
|
|
11904
12327
|
boxMin.set(-halfWidth, -halfWidth, 0.0);
|
|
11905
12328
|
boxMax.set(halfWidth, halfWidth, 0.0);
|
|
11906
|
-
|
|
11907
|
-
|
|
11908
|
-
const success = raycaster.ray.intersectBox(
|
|
12329
|
+
iconBox.set(boxMin, boxMax);
|
|
12330
|
+
iconBox.applyMatrix4(this.matrixWorld);
|
|
12331
|
+
const success = raycaster.ray.intersectBox(iconBox, target$2) !== null;
|
|
11909
12332
|
if (success) {
|
|
11910
12333
|
intersects.push({
|
|
11911
12334
|
distance: 0,
|
|
@@ -11921,10 +12344,10 @@ const Constraint$1 = props => {
|
|
|
11921
12344
|
renderOrder: renderOrder - 0.5
|
|
11922
12345
|
}, handlers, {
|
|
11923
12346
|
userData: userData,
|
|
11924
|
-
raycast:
|
|
12347
|
+
raycast: raycast
|
|
11925
12348
|
}), /*#__PURE__*/React__default.createElement("planeGeometry", {
|
|
11926
12349
|
attach: "geometry",
|
|
11927
|
-
args: [(
|
|
12350
|
+
args: [(iconSize + hoverZone) * scale, (iconSize + hoverZone) * scale, 1, 1]
|
|
11928
12351
|
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
11929
12352
|
attach: "material",
|
|
11930
12353
|
transparent: true,
|
|
@@ -11934,7 +12357,7 @@ const Constraint$1 = props => {
|
|
|
11934
12357
|
renderOrder: renderOrder - 0.5
|
|
11935
12358
|
}, /*#__PURE__*/React__default.createElement("planeGeometry", {
|
|
11936
12359
|
attach: "geometry",
|
|
11937
|
-
args: [
|
|
12360
|
+
args: [iconSize * scale, iconSize * scale, 1, 1]
|
|
11938
12361
|
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
11939
12362
|
attach: "material",
|
|
11940
12363
|
side: THREE.DoubleSide,
|
|
@@ -11946,7 +12369,7 @@ const Constraint$1 = props => {
|
|
|
11946
12369
|
renderOrder: renderOrder
|
|
11947
12370
|
}, /*#__PURE__*/React__default.createElement("planeGeometry", {
|
|
11948
12371
|
attach: "geometry",
|
|
11949
|
-
args: [
|
|
12372
|
+
args: [iconSize * scale, iconSize * scale, 1, 1]
|
|
11950
12373
|
}), /*#__PURE__*/React__default.createElement("meshBasicMaterial", {
|
|
11951
12374
|
attach: "material",
|
|
11952
12375
|
side: THREE.DoubleSide,
|
|
@@ -11975,23 +12398,78 @@ const getObjCenterPoint = (id, tree) => {
|
|
|
11975
12398
|
}
|
|
11976
12399
|
return new THREE.Vector3();
|
|
11977
12400
|
};
|
|
11978
|
-
const
|
|
12401
|
+
const IconGroups = ({
|
|
12402
|
+
sketchId,
|
|
12403
|
+
ids,
|
|
12404
|
+
showAll
|
|
12405
|
+
}) => {
|
|
11979
12406
|
const {
|
|
11980
12407
|
drawingId,
|
|
11981
|
-
pluginId
|
|
12408
|
+
pluginId,
|
|
12409
|
+
isActive
|
|
11982
12410
|
} = React__default.useContext(ViewContext);
|
|
12411
|
+
const sketch = useDrawing(drawingId, drawing => drawing.structure.tree[sketchId]);
|
|
12412
|
+
const lastHoveredPos = useSketchState(drawingId, pluginId, state => state.interaction.lastHoveredPos);
|
|
12413
|
+
const constraintsToGeometry = useSketchState(drawingId, pluginId, state => state.interaction.constraintsToGeometry);
|
|
12414
|
+
const scale = useSketchState(drawingId, pluginId, state => state.scale);
|
|
12415
|
+
const positions = React__default.useMemo(() => {
|
|
12416
|
+
if (!sketch.children) {
|
|
12417
|
+
return {};
|
|
12418
|
+
}
|
|
12419
|
+
const tree = getDrawing(drawingId).structure.tree;
|
|
12420
|
+
const rows = [];
|
|
12421
|
+
ids.forEach(id => {
|
|
12422
|
+
let position = lastHoveredPos[id];
|
|
12423
|
+
if (!position || showAll) {
|
|
12424
|
+
var _constraintsToGeometr;
|
|
12425
|
+
const geometryId = (_constraintsToGeometr = constraintsToGeometry[id]) != null ? _constraintsToGeometr : getEntities(drawingId, id)[0];
|
|
12426
|
+
position = getObjCenterPoint(geometryId, tree);
|
|
12427
|
+
}
|
|
12428
|
+
const suitableRow = rows.find(row => row.position.distanceTo(position) < tolerance$7);
|
|
12429
|
+
if (suitableRow) {
|
|
12430
|
+
suitableRow.ids.push(id);
|
|
12431
|
+
} else {
|
|
12432
|
+
rows.push({
|
|
12433
|
+
position,
|
|
12434
|
+
ids: [id]
|
|
12435
|
+
});
|
|
12436
|
+
}
|
|
12437
|
+
});
|
|
12438
|
+
const positionsNew = {};
|
|
12439
|
+
rows.forEach(row => {
|
|
12440
|
+
row.ids.forEach((id, index) => {
|
|
12441
|
+
const offset = new THREE.Vector3((-(row.ids.length - 1) / 2 + index) * iconSize * 1.1 * scale, 3 * scale, 0);
|
|
12442
|
+
positionsNew[id] = row.position.clone().add(offset);
|
|
12443
|
+
});
|
|
12444
|
+
});
|
|
12445
|
+
return positionsNew;
|
|
12446
|
+
}, [drawingId, ids, showAll, constraintsToGeometry, scale, sketch.children, lastHoveredPos]);
|
|
12447
|
+
const csys = useDrawing(drawingId, drawing => sketchId >= 0 && drawing.structure.tree[sketchId].coordinateSystem);
|
|
12448
|
+
const transformMatrix = React__default.useMemo(() => csys ? MathUtils.convertToMatrix4(csys) : new THREE.Matrix4(), [csys]);
|
|
12449
|
+
const icons = /*#__PURE__*/React__default.createElement(React__default.Fragment, null, ids.map(id => /*#__PURE__*/React__default.createElement(Icon$3, {
|
|
12450
|
+
key: id,
|
|
12451
|
+
objId: id,
|
|
12452
|
+
position: positions[id]
|
|
12453
|
+
})));
|
|
12454
|
+
return isActive ? /*#__PURE__*/React__default.createElement(HUD, null, /*#__PURE__*/React__default.createElement("group", {
|
|
12455
|
+
matrix: transformMatrix,
|
|
12456
|
+
matrixAutoUpdate: false
|
|
12457
|
+
}, icons)) : icons;
|
|
12458
|
+
};
|
|
12459
|
+
|
|
12460
|
+
const Constraints$1 = ({
|
|
12461
|
+
sketchId
|
|
12462
|
+
}) => {
|
|
11983
12463
|
const {
|
|
11984
|
-
|
|
11985
|
-
|
|
12464
|
+
drawingId,
|
|
12465
|
+
pluginId
|
|
12466
|
+
} = React__default.useContext(ViewContext);
|
|
11986
12467
|
const sketch = useDrawing(drawingId, drawing => drawing.structure.tree[sketchId]);
|
|
11987
12468
|
const selected = useDrawingArr(drawingId, d => d.interaction.selected);
|
|
11988
12469
|
const alwaysShow = useSketchState(drawingId, pluginId, state => state.alwaysShowConstr);
|
|
11989
12470
|
const showCoincidence = useSketchState(drawingId, pluginId, state => state.showCoincidence);
|
|
11990
12471
|
const showRigidSets = useSketchState(drawingId, pluginId, s => s.showRigidSets);
|
|
11991
12472
|
const highlighted = useSketchState(drawingId, pluginId, state => state.highlighted);
|
|
11992
|
-
const lastPos = useSketchState(drawingId, pluginId, state => state.interaction.lastPos);
|
|
11993
|
-
const constraintsToGeometry = useSketchState(drawingId, pluginId, state => state.constraintsToGeometry);
|
|
11994
|
-
const scale = useSketchState(drawingId, pluginId, state => state.scale);
|
|
11995
12473
|
const constraintIds = React__default.useMemo(() => {
|
|
11996
12474
|
var _sketch$children;
|
|
11997
12475
|
const tree = getDrawing(drawingId).structure.tree;
|
|
@@ -12019,50 +12497,11 @@ const Constraints$1 = props => {
|
|
|
12019
12497
|
|
|
12020
12498
|
return result;
|
|
12021
12499
|
}, [sketch.children, highlighted, selected, alwaysShow, showCoincidence, drawingId, showRigidSets]);
|
|
12022
|
-
|
|
12023
|
-
|
|
12024
|
-
|
|
12025
|
-
|
|
12026
|
-
|
|
12027
|
-
const tree = getDrawing(drawingId).structure.tree;
|
|
12028
|
-
selected.filter(info => is2DConstraint(tree[info.objectId]) && info.userData.hoverPos).forEach(info => selConstrPositions[info.objectId] = info.userData.hoverPos);
|
|
12029
|
-
const constrRows = [];
|
|
12030
|
-
constraintIds.forEach(id => {
|
|
12031
|
-
const constraint = tree[id];
|
|
12032
|
-
const geometryId = constraintsToGeometry[id] ? constraintsToGeometry[id] : getConstrEntities(drawingId, id)[0];
|
|
12033
|
-
let position = selConstrPositions[id] || lastPos;
|
|
12034
|
-
if (!position || alwaysShow) {
|
|
12035
|
-
position = getObjCenterPoint(geometryId, tree);
|
|
12036
|
-
}
|
|
12037
|
-
const suitableRow = constrRows.find(row => row.position.distanceTo(position) < tolerance$7);
|
|
12038
|
-
if (suitableRow) {
|
|
12039
|
-
suitableRow.constrIds.push(constraint.id);
|
|
12040
|
-
} else {
|
|
12041
|
-
constrRows.push({
|
|
12042
|
-
position,
|
|
12043
|
-
constrIds: [constraint.id]
|
|
12044
|
-
});
|
|
12045
|
-
}
|
|
12046
|
-
});
|
|
12047
|
-
const constrPositionsNew = {};
|
|
12048
|
-
constrRows.forEach(constrRow => {
|
|
12049
|
-
constrRow.constrIds.forEach((constrId, index) => {
|
|
12050
|
-
const offset = new THREE.Vector3((-(constrRow.constrIds.length - 1) / 2 + index) * constrSize * 1.1 * scale, 3 * scale, 0);
|
|
12051
|
-
constrPositionsNew[constrId] = constrRow.position.clone().add(offset);
|
|
12052
|
-
});
|
|
12053
|
-
});
|
|
12054
|
-
return constrPositionsNew;
|
|
12055
|
-
}, [constraintIds, constraintsToGeometry, scale, drawingId, sketch.children, alwaysShow, selected, lastPos]);
|
|
12056
|
-
const csys = useDrawing(drawingId, drawing => sketchId >= 0 && drawing.structure.tree[sketchId].coordinateSystem);
|
|
12057
|
-
const transformMatrix = React__default.useMemo(() => csys ? MathUtils.convertToMatrix4(csys) : new THREE.Matrix4(), [csys]);
|
|
12058
|
-
return /*#__PURE__*/React__default.createElement(HUD, null, /*#__PURE__*/React__default.createElement("group", {
|
|
12059
|
-
matrix: transformMatrix,
|
|
12060
|
-
matrixAutoUpdate: false
|
|
12061
|
-
}, constraintIds.map(constraintId => /*#__PURE__*/React__default.createElement(Constraint$1, {
|
|
12062
|
-
key: constraintId,
|
|
12063
|
-
objId: constraintId,
|
|
12064
|
-
position: constrPositions[constraintId]
|
|
12065
|
-
}))));
|
|
12500
|
+
return /*#__PURE__*/React__default.createElement(IconGroups, {
|
|
12501
|
+
sketchId: sketchId,
|
|
12502
|
+
ids: constraintIds,
|
|
12503
|
+
showAll: alwaysShow
|
|
12504
|
+
});
|
|
12066
12505
|
};
|
|
12067
12506
|
|
|
12068
12507
|
class InfinityPlane extends THREE.Object3D {
|
|
@@ -12473,6 +12912,53 @@ const Circle = ({
|
|
|
12473
12912
|
}));
|
|
12474
12913
|
};
|
|
12475
12914
|
|
|
12915
|
+
const useSketchRegions = (drawingId, sketchId) => {
|
|
12916
|
+
const partId = getAncestorIdByClass(drawingId, sketchId, CCClasses.CCPart) || NOCCID;
|
|
12917
|
+
const geometrySetId = useDrawingCCId(drawingId, d => {
|
|
12918
|
+
var _d$structure$tree$par;
|
|
12919
|
+
return (_d$structure$tree$par = d.structure.tree[partId]) == null ? void 0 : _d$structure$tree$par.geometrySet;
|
|
12920
|
+
});
|
|
12921
|
+
const geometrySetChildren = useDrawingArr(drawingId, d => {
|
|
12922
|
+
var _d$structure$tree$geo;
|
|
12923
|
+
return (_d$structure$tree$geo = d.structure.tree[geometrySetId]) == null ? void 0 : _d$structure$tree$geo.children;
|
|
12924
|
+
});
|
|
12925
|
+
return React__default.useMemo(() => {
|
|
12926
|
+
const tree = getDrawing(drawingId).structure.tree;
|
|
12927
|
+
const ids = geometrySetChildren.filter(child => {
|
|
12928
|
+
var _tree$child$members, _tree$child$members$s;
|
|
12929
|
+
return isSketchRegion(tree[child]) && ((_tree$child$members = tree[child].members) == null ? void 0 : (_tree$child$members$s = _tree$child$members.sketch) == null ? void 0 : _tree$child$members$s.value) === sketchId;
|
|
12930
|
+
});
|
|
12931
|
+
return ids;
|
|
12932
|
+
}, [drawingId, sketchId, geometrySetChildren]);
|
|
12933
|
+
};
|
|
12934
|
+
|
|
12935
|
+
const Regions$1 = ({
|
|
12936
|
+
sketchId
|
|
12937
|
+
}) => {
|
|
12938
|
+
const {
|
|
12939
|
+
drawingId,
|
|
12940
|
+
pluginId
|
|
12941
|
+
} = React__default.useContext(ViewContext);
|
|
12942
|
+
const highlighted = useSketchState(drawingId, pluginId, state => state.highlighted);
|
|
12943
|
+
const selection = useDrawing(drawingId, d => d.selection.refs[d.selection.active || '']);
|
|
12944
|
+
const selItems = (selection == null ? void 0 : selection.items) || [];
|
|
12945
|
+
const selected = selItems.map(item => {
|
|
12946
|
+
var _item$data$object;
|
|
12947
|
+
return (_item$data$object = item.data.object) == null ? void 0 : _item$data$object.id;
|
|
12948
|
+
}).filter(item => item !== undefined);
|
|
12949
|
+
const regions = useSketchRegions(drawingId, sketchId);
|
|
12950
|
+
const displayedRegions = React__default.useMemo(() => {
|
|
12951
|
+
const tree = getDrawing(drawingId).structure.tree;
|
|
12952
|
+
return regions.filter(regionId => (highlighted.indexOf(regionId) !== -1 || selected.findIndex(selId => selId === regionId) !== -1) && (selection == null ? void 0 : selection.isSelectable(TreeObjScope, {
|
|
12953
|
+
object: tree[regionId]
|
|
12954
|
+
})));
|
|
12955
|
+
}, [drawingId, regions, highlighted, selection, selected]);
|
|
12956
|
+
return /*#__PURE__*/React__default.createElement(IconGroups, {
|
|
12957
|
+
sketchId: sketchId,
|
|
12958
|
+
ids: displayedRegions
|
|
12959
|
+
});
|
|
12960
|
+
};
|
|
12961
|
+
|
|
12476
12962
|
function ownKeys$e(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
12477
12963
|
function _objectSpread$e(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$e(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$e(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12478
12964
|
|
|
@@ -12733,13 +13219,14 @@ const SketchPlane = ({
|
|
|
12733
13219
|
}) => {
|
|
12734
13220
|
const {
|
|
12735
13221
|
drawingId,
|
|
12736
|
-
pluginId
|
|
13222
|
+
pluginId,
|
|
13223
|
+
isActive
|
|
12737
13224
|
} = React__default.useContext(ViewContext);
|
|
12738
13225
|
const ref = React__default.useRef(null);
|
|
12739
13226
|
const handlers = useSketchHandlers(objId);
|
|
12740
13227
|
const step = useSketchState(drawingId, pluginId, state => state.step);
|
|
12741
13228
|
useFrame(state => {
|
|
12742
|
-
if (!ref.current) {
|
|
13229
|
+
if (!ref.current || !isActive) {
|
|
12743
13230
|
return;
|
|
12744
13231
|
}
|
|
12745
13232
|
const sketchPlane = new THREE.Plane().setFromNormalAndCoplanarPoint(new THREE.Vector3(0, 1, 0), new THREE.Vector3(0, 0, 0)).applyMatrix4(ref.current.matrixWorld);
|
|
@@ -12758,7 +13245,7 @@ const SketchPlane = ({
|
|
|
12758
13245
|
userData: {
|
|
12759
13246
|
objId
|
|
12760
13247
|
}
|
|
12761
|
-
})), /*#__PURE__*/React__default.createElement(Grid, {
|
|
13248
|
+
})), isActive && /*#__PURE__*/React__default.createElement(Grid, {
|
|
12762
13249
|
ref: ref,
|
|
12763
13250
|
args: [10, 10],
|
|
12764
13251
|
rotation: gridRotation,
|
|
@@ -12841,13 +13328,15 @@ const Sketch = ({
|
|
|
12841
13328
|
drawnObjectsRef
|
|
12842
13329
|
});
|
|
12843
13330
|
}, [set]);
|
|
12844
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null,
|
|
13331
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SketchPlane, {
|
|
12845
13332
|
objId: objId
|
|
12846
13333
|
}), /*#__PURE__*/React__default.createElement(MergedWrapper, null, drawnObjects && /*#__PURE__*/React__default.createElement("group", {
|
|
12847
13334
|
ref: drawnObjectsRef,
|
|
12848
13335
|
name: "sketch"
|
|
12849
13336
|
}, drawnObjects, isActive && containerIds && containerIds.length === 0 && /*#__PURE__*/React__default.createElement(Constraints$1, {
|
|
12850
13337
|
sketchId: objId
|
|
13338
|
+
}), !isActive && /*#__PURE__*/React__default.createElement(Regions$1, {
|
|
13339
|
+
sketchId: objId
|
|
12851
13340
|
}))));
|
|
12852
13341
|
};
|
|
12853
13342
|
|
|
@@ -13564,30 +14053,133 @@ function useSetScale(drawingId, pluginId) {
|
|
|
13564
14053
|
});
|
|
13565
14054
|
}
|
|
13566
14055
|
|
|
14056
|
+
// Adds handlers to pluginState when sketcher changes its state to active / view only / inactive state
|
|
14057
|
+
function useHandlers(drawingId, pluginId) {
|
|
14058
|
+
const camControls = useThree(state => state.controls);
|
|
14059
|
+
const activePlugin = useDrawing(drawingId, drawing => drawing.plugin.active.feature);
|
|
14060
|
+
const isActive = activePlugin === pluginId;
|
|
14061
|
+
React__default.useEffect(() => {
|
|
14062
|
+
const handlers = {};
|
|
14063
|
+
let defaultHandler = undefined;
|
|
14064
|
+
if (isActive) {
|
|
14065
|
+
// Use all handlers in the drawing mode
|
|
14066
|
+
Object.values(HandlersConstructors).forEach(handlerConstr => {
|
|
14067
|
+
const handler = handlerConstr(drawingId, pluginId, camControls);
|
|
14068
|
+
handlers[handler.name] = handler;
|
|
14069
|
+
});
|
|
14070
|
+
defaultHandler = HandlersList.DRAG;
|
|
14071
|
+
} else {
|
|
14072
|
+
// Only use SSELECT handler in the view only mode
|
|
14073
|
+
const handler = HandlersConstructors.sSelect(drawingId, pluginId);
|
|
14074
|
+
handlers[handler.name] = handler;
|
|
14075
|
+
}
|
|
14076
|
+
const {
|
|
14077
|
+
set
|
|
14078
|
+
} = getPlugin(drawingId, pluginId);
|
|
14079
|
+
set({
|
|
14080
|
+
handlers,
|
|
14081
|
+
activeHandler: defaultHandler
|
|
14082
|
+
});
|
|
14083
|
+
}, [drawingId, pluginId, camControls, isActive]);
|
|
14084
|
+
}
|
|
14085
|
+
function useKeyHandlers(drawingId, pluginId) {
|
|
14086
|
+
// Add key handlers to the window
|
|
14087
|
+
React__default.useEffect(() => {
|
|
14088
|
+
function keyupHandler(e) {
|
|
14089
|
+
if (e.repeat) return; // There is no need to fire handlers multiple times
|
|
14090
|
+
|
|
14091
|
+
const pluginState = getSketchState(drawingId, pluginId);
|
|
14092
|
+
const curHandlerName = pluginState.activeHandler;
|
|
14093
|
+
if (curHandlerName === undefined) {
|
|
14094
|
+
return;
|
|
14095
|
+
}
|
|
14096
|
+
const handler = pluginState.handlers[curHandlerName];
|
|
14097
|
+
if (e.code === 'Escape') {
|
|
14098
|
+
var _handler$keyHandlers;
|
|
14099
|
+
const escapeH = (_handler$keyHandlers = handler.keyHandlers) == null ? void 0 : _handler$keyHandlers.escape;
|
|
14100
|
+
const switchToDrag = escapeH !== undefined ? escapeH(e) : true;
|
|
14101
|
+
if (switchToDrag) {
|
|
14102
|
+
// If handler doesn't have escape handler or escape handler returns true, the drag handler will be enabled.
|
|
14103
|
+
const {
|
|
14104
|
+
set
|
|
14105
|
+
} = getPlugin(drawingId, pluginId);
|
|
14106
|
+
set({
|
|
14107
|
+
activeHandler: HandlersList.DRAG
|
|
14108
|
+
});
|
|
14109
|
+
}
|
|
14110
|
+
} else {
|
|
14111
|
+
if (handler.keyHandlers && handler.keyHandlers.keyup) {
|
|
14112
|
+
handler.keyHandlers.keyup(e);
|
|
14113
|
+
}
|
|
14114
|
+
}
|
|
14115
|
+
}
|
|
14116
|
+
function keydownHandler(e) {
|
|
14117
|
+
if (e.repeat) return; // There is no need to fire handlers multiple times
|
|
14118
|
+
|
|
14119
|
+
const pluginState = getSketchState(drawingId, pluginId);
|
|
14120
|
+
const curHandlerName = pluginState.activeHandler;
|
|
14121
|
+
if (curHandlerName === undefined) {
|
|
14122
|
+
return;
|
|
14123
|
+
}
|
|
14124
|
+
const handler = pluginState.handlers[curHandlerName];
|
|
14125
|
+
if (handler.keyHandlers && handler.keyHandlers.keydown) {
|
|
14126
|
+
handler.keyHandlers.keydown(e);
|
|
14127
|
+
}
|
|
14128
|
+
}
|
|
14129
|
+
window.addEventListener('keyup', keyupHandler);
|
|
14130
|
+
window.addEventListener('keydown', keydownHandler);
|
|
14131
|
+
return () => {
|
|
14132
|
+
window.removeEventListener('keyup', keyupHandler);
|
|
14133
|
+
window.removeEventListener('keydown', keydownHandler);
|
|
14134
|
+
};
|
|
14135
|
+
}, [drawingId, pluginId]);
|
|
14136
|
+
}
|
|
14137
|
+
function useSwitchHandlers(drawingId, pluginId) {
|
|
14138
|
+
const activeHandler = useSketchState(drawingId, pluginId, state => state.activeHandler);
|
|
14139
|
+
const currentHandler = React__default.useRef();
|
|
14140
|
+
React__default.useEffect(() => {
|
|
14141
|
+
// Switching handlers (call onActivate and onDeactivate)
|
|
14142
|
+
const handlers = getSketchState(drawingId, pluginId).handlers;
|
|
14143
|
+
const switchHandlers = async () => {
|
|
14144
|
+
if (currentHandler.current) {
|
|
14145
|
+
const h = handlers[currentHandler.current];
|
|
14146
|
+
h && h.onDeactivate && (await h.onDeactivate());
|
|
14147
|
+
}
|
|
14148
|
+
if (activeHandler) {
|
|
14149
|
+
const handler = handlers[activeHandler];
|
|
14150
|
+
handler && handler.onActivate && handler.onActivate();
|
|
14151
|
+
}
|
|
14152
|
+
currentHandler.current = activeHandler;
|
|
14153
|
+
};
|
|
14154
|
+
switchHandlers();
|
|
14155
|
+
}, [drawingId, pluginId, activeHandler]);
|
|
14156
|
+
}
|
|
14157
|
+
|
|
13567
14158
|
// Turn off all handlers and hide sketch selection if global selection is active
|
|
13568
|
-
function
|
|
14159
|
+
function useHandleSSelection(drawingId, pluginId) {
|
|
13569
14160
|
const {
|
|
13570
14161
|
set
|
|
13571
14162
|
} = getPlugin(drawingId, pluginId);
|
|
13572
14163
|
const setSelected = getDrawing(drawingId).api.interaction.setSelected;
|
|
13573
14164
|
const activeSelection = useDrawing(drawingId, d => d.selection.active);
|
|
13574
|
-
const
|
|
14165
|
+
const activeHandler = useSketchState(drawingId, pluginId, state => state.activeHandler);
|
|
14166
|
+
const prevHandler = React__default.useRef(null);
|
|
13575
14167
|
const prevSelected = React__default.useRef([]);
|
|
13576
14168
|
React__default.useEffect(() => {
|
|
13577
14169
|
// Disable all handlers if global selection is active
|
|
13578
|
-
if (activeSelection && activeSelection !== 'UseRef' &&
|
|
14170
|
+
if (activeSelection && activeSelection !== 'UseRef' && prevHandler.current === null) {
|
|
13579
14171
|
prevHandler.current = activeHandler;
|
|
13580
14172
|
prevSelected.current = getDrawing(drawingId).interaction.selected || [];
|
|
13581
14173
|
setSelected([]);
|
|
13582
14174
|
set({
|
|
13583
|
-
activeHandler:
|
|
14175
|
+
activeHandler: HandlersList.SSELECT
|
|
13584
14176
|
});
|
|
13585
|
-
} else if (!activeSelection && prevHandler.current) {
|
|
14177
|
+
} else if (!activeSelection && prevHandler.current !== null) {
|
|
13586
14178
|
setSelected(prevSelected.current);
|
|
13587
14179
|
set({
|
|
13588
14180
|
activeHandler: prevHandler.current
|
|
13589
14181
|
});
|
|
13590
|
-
prevHandler.current =
|
|
14182
|
+
prevHandler.current = null;
|
|
13591
14183
|
}
|
|
13592
14184
|
}, [drawingId, pluginId, activeSelection, activeHandler, set, setSelected]);
|
|
13593
14185
|
}
|
|
@@ -13643,7 +14235,8 @@ function useInteractionReset(drawingId, pluginId) {
|
|
|
13643
14235
|
state_.interaction = {
|
|
13644
14236
|
cycle: 0,
|
|
13645
14237
|
objects: cursorOverValid,
|
|
13646
|
-
|
|
14238
|
+
lastHoveredPos: {},
|
|
14239
|
+
constraintsToGeometry: {}
|
|
13647
14240
|
};
|
|
13648
14241
|
}
|
|
13649
14242
|
if (state_.highlighted || state_.interaction) {
|
|
@@ -13651,6 +14244,30 @@ function useInteractionReset(drawingId, pluginId) {
|
|
|
13651
14244
|
}
|
|
13652
14245
|
}, [drawingId, pluginId, children]);
|
|
13653
14246
|
}
|
|
14247
|
+
function useStateReset(drawingId, pluginId) {
|
|
14248
|
+
React__default.useEffect(() => {
|
|
14249
|
+
return () => {
|
|
14250
|
+
var _getPlugin;
|
|
14251
|
+
return (_getPlugin = getPlugin(drawingId, pluginId)) == null ? void 0 : _getPlugin.set({
|
|
14252
|
+
activeHandler: undefined,
|
|
14253
|
+
handlers: {},
|
|
14254
|
+
tmpObjects: {},
|
|
14255
|
+
highlighted: [],
|
|
14256
|
+
interaction: {
|
|
14257
|
+
cycle: 0,
|
|
14258
|
+
objects: [],
|
|
14259
|
+
lastHoveredPos: {},
|
|
14260
|
+
constraintsToGeometry: {}
|
|
14261
|
+
},
|
|
14262
|
+
isDragged: false,
|
|
14263
|
+
mousePos: undefined,
|
|
14264
|
+
drawnObjectsRef: undefined,
|
|
14265
|
+
rubberBandRectangle: undefined,
|
|
14266
|
+
cursor: null
|
|
14267
|
+
});
|
|
14268
|
+
};
|
|
14269
|
+
}, [drawingId, pluginId]);
|
|
14270
|
+
}
|
|
13654
14271
|
|
|
13655
14272
|
// Changes cursor if it's set in plugin state
|
|
13656
14273
|
function useChangeCursor() {
|
|
@@ -13671,101 +14288,9 @@ const DrawingMode = ({
|
|
|
13671
14288
|
}) => {
|
|
13672
14289
|
const sketchId = usePlugin(drawingId, pluginId, plugin => plugin.objectId);
|
|
13673
14290
|
// TODO: what about useSketchPlugin which return only sketcher state and never undefined?
|
|
13674
|
-
|
|
13675
|
-
set
|
|
13676
|
-
} = getPlugin(drawingId, pluginId);
|
|
14291
|
+
|
|
13677
14292
|
useChangeCursor();
|
|
13678
14293
|
useOverrideGeometryColor('sketch', 10, overrideValues);
|
|
13679
|
-
const camControls = useThree(state => state.controls);
|
|
13680
|
-
|
|
13681
|
-
// Add handlers to pluginState when sketcher is enabled
|
|
13682
|
-
React__default.useEffect(() => {
|
|
13683
|
-
const handlers = {};
|
|
13684
|
-
Object.values(HandlersConstructors).forEach(handlerConstr => {
|
|
13685
|
-
const handler = handlerConstr(drawingId, pluginId, camControls);
|
|
13686
|
-
handlers[handler.name] = handler;
|
|
13687
|
-
});
|
|
13688
|
-
set({
|
|
13689
|
-
handlers
|
|
13690
|
-
});
|
|
13691
|
-
function keyupHandler(e) {
|
|
13692
|
-
if (e.repeat) return; // There is no need to fire handlers multiple times
|
|
13693
|
-
|
|
13694
|
-
const pluginState = getSketchState(drawingId, pluginId);
|
|
13695
|
-
const curHandlerName = pluginState.activeHandler;
|
|
13696
|
-
if (curHandlerName === undefined) {
|
|
13697
|
-
return;
|
|
13698
|
-
}
|
|
13699
|
-
const handler = pluginState.handlers[curHandlerName];
|
|
13700
|
-
if (e.code === 'Escape') {
|
|
13701
|
-
var _handler$keyHandlers;
|
|
13702
|
-
const escapeH = (_handler$keyHandlers = handler.keyHandlers) == null ? void 0 : _handler$keyHandlers.escape;
|
|
13703
|
-
const switchToDrag = escapeH !== undefined ? escapeH(e) : true;
|
|
13704
|
-
if (switchToDrag) {
|
|
13705
|
-
// If handler doesn't have escape handler or escape handler returns true, the drag handler will be enabled.
|
|
13706
|
-
set({
|
|
13707
|
-
activeHandler: HandlersList.DRAG
|
|
13708
|
-
});
|
|
13709
|
-
}
|
|
13710
|
-
} else {
|
|
13711
|
-
if (handler.keyHandlers && handler.keyHandlers.keyup) {
|
|
13712
|
-
handler.keyHandlers.keyup(e);
|
|
13713
|
-
}
|
|
13714
|
-
}
|
|
13715
|
-
}
|
|
13716
|
-
function keydownHandler(e) {
|
|
13717
|
-
if (e.repeat) return; // There is no need to fire handlers multiple times
|
|
13718
|
-
|
|
13719
|
-
const pluginState = getSketchState(drawingId, pluginId);
|
|
13720
|
-
const curHandlerName = pluginState.activeHandler;
|
|
13721
|
-
if (curHandlerName === undefined) {
|
|
13722
|
-
return;
|
|
13723
|
-
}
|
|
13724
|
-
const handler = pluginState.handlers[curHandlerName];
|
|
13725
|
-
if (handler.keyHandlers && handler.keyHandlers.keydown) {
|
|
13726
|
-
handler.keyHandlers.keydown(e);
|
|
13727
|
-
}
|
|
13728
|
-
}
|
|
13729
|
-
window.addEventListener('keyup', keyupHandler);
|
|
13730
|
-
window.addEventListener('keydown', keydownHandler);
|
|
13731
|
-
return () => {
|
|
13732
|
-
window.removeEventListener('keyup', keyupHandler);
|
|
13733
|
-
window.removeEventListener('keydown', keydownHandler);
|
|
13734
|
-
};
|
|
13735
|
-
}, [drawingId, pluginId, set, camControls]);
|
|
13736
|
-
|
|
13737
|
-
// Enable drag handler by default.
|
|
13738
|
-
React__default.useEffect(() => {
|
|
13739
|
-
set({
|
|
13740
|
-
activeHandler: HandlersList.DRAG
|
|
13741
|
-
});
|
|
13742
|
-
return () => {
|
|
13743
|
-
const plugin = getPlugin(drawingId, pluginId);
|
|
13744
|
-
plugin && plugin.set({
|
|
13745
|
-
activeHandler: undefined
|
|
13746
|
-
});
|
|
13747
|
-
};
|
|
13748
|
-
}, [drawingId, pluginId, set]);
|
|
13749
|
-
useSetScale(drawingId, pluginId);
|
|
13750
|
-
const activeHandler = useSketchState(drawingId, pluginId, state => state.activeHandler);
|
|
13751
|
-
const currentHandler = React__default.useRef();
|
|
13752
|
-
React__default.useEffect(() => {
|
|
13753
|
-
// Switching handlers (call onActivate and onDeactivate)
|
|
13754
|
-
const handlers = getSketchState(drawingId, pluginId).handlers;
|
|
13755
|
-
const switchHandlers = async () => {
|
|
13756
|
-
if (currentHandler.current) {
|
|
13757
|
-
const h = handlers[currentHandler.current];
|
|
13758
|
-
h.onDeactivate && (await h.onDeactivate());
|
|
13759
|
-
}
|
|
13760
|
-
if (activeHandler) {
|
|
13761
|
-
const handler = handlers[activeHandler];
|
|
13762
|
-
handler && handler.onActivate && handler.onActivate();
|
|
13763
|
-
}
|
|
13764
|
-
currentHandler.current = activeHandler;
|
|
13765
|
-
};
|
|
13766
|
-
switchHandlers();
|
|
13767
|
-
}, [drawingId, pluginId, activeHandler]);
|
|
13768
|
-
useHandleGSelection(drawingId, pluginId, activeHandler);
|
|
13769
14294
|
useUseRef(drawingId, sketchId);
|
|
13770
14295
|
useInteractionReset(drawingId, pluginId);
|
|
13771
14296
|
const dimId = useDimensionSetId(drawingId, sketchId);
|
|
@@ -13784,7 +14309,6 @@ const ViewOnlyMode = ({
|
|
|
13784
14309
|
pluginId
|
|
13785
14310
|
}) => {
|
|
13786
14311
|
const sketchId = usePlugin(drawingId, pluginId, plugin => plugin.objectId);
|
|
13787
|
-
useSetScale(drawingId, pluginId);
|
|
13788
14312
|
|
|
13789
14313
|
// Transform matrix is applied in buerli/packages/react/src/components/Plugin.tsx -> View component for every plugin graphics
|
|
13790
14314
|
// But it makes no sense to apply matrix to HUD. So we have to do it here.
|
|
@@ -13813,6 +14337,12 @@ const ViewImpl$e = ({
|
|
|
13813
14337
|
const planeSelection = planeRef === 0;
|
|
13814
14338
|
const activePlugin = useDrawing(drawingId, drawing => drawing.plugin.active.feature);
|
|
13815
14339
|
const isActive = activePlugin === pluginId;
|
|
14340
|
+
useHandlers(drawingId, pluginId);
|
|
14341
|
+
useKeyHandlers(drawingId, pluginId);
|
|
14342
|
+
useSwitchHandlers(drawingId, pluginId);
|
|
14343
|
+
useHandleSSelection(drawingId, pluginId);
|
|
14344
|
+
useSetScale(drawingId, pluginId);
|
|
14345
|
+
useStateReset(drawingId, pluginId);
|
|
13816
14346
|
const contextValue = React__default.useMemo(() => ({
|
|
13817
14347
|
drawingId,
|
|
13818
14348
|
pluginId,
|
|
@@ -15136,7 +15666,7 @@ const AddRegion = () => {
|
|
|
15136
15666
|
};
|
|
15137
15667
|
var RegionMembers;
|
|
15138
15668
|
(function (RegionMembers) {
|
|
15139
|
-
RegionMembers["
|
|
15669
|
+
RegionMembers["Selected"] = "selected";
|
|
15140
15670
|
})(RegionMembers || (RegionMembers = {}));
|
|
15141
15671
|
const EditRegion = ({
|
|
15142
15672
|
sketchId,
|
|
@@ -15149,7 +15679,7 @@ const EditRegion = ({
|
|
|
15149
15679
|
const {
|
|
15150
15680
|
drawingId
|
|
15151
15681
|
} = React__default.useContext(RootContext);
|
|
15152
|
-
const curves = useRefsParam(drawingId, regionId, RegionMembers.
|
|
15682
|
+
const curves = useRefsParam(drawingId, regionId, RegionMembers.Selected);
|
|
15153
15683
|
const name = useDrawingStr(drawingId, d => {
|
|
15154
15684
|
var _d$structure$tree$reg;
|
|
15155
15685
|
return (_d$structure$tree$reg = d.structure.tree[regionId]) == null ? void 0 : _d$structure$tree$reg.name;
|
|
@@ -15218,7 +15748,7 @@ const EditRegion = ({
|
|
|
15218
15748
|
menuInfo: menuInfo,
|
|
15219
15749
|
caption: "Region",
|
|
15220
15750
|
icon: /*#__PURE__*/React__default.createElement(Icon$2, {
|
|
15221
|
-
url: img$
|
|
15751
|
+
url: img$K,
|
|
15222
15752
|
size: 14
|
|
15223
15753
|
}),
|
|
15224
15754
|
onHide: onHide,
|
|
@@ -15257,23 +15787,7 @@ const Regions = () => {
|
|
|
15257
15787
|
pluginId
|
|
15258
15788
|
} = React__default.useContext(RootContext);
|
|
15259
15789
|
const sketchId = usePlugin(drawingId, pluginId, plugin => plugin.objectId);
|
|
15260
|
-
const
|
|
15261
|
-
const geometrySetId = useDrawingCCId(drawingId, d => {
|
|
15262
|
-
var _d$structure$tree$par;
|
|
15263
|
-
return (_d$structure$tree$par = d.structure.tree[partId]) == null ? void 0 : _d$structure$tree$par.geometrySet;
|
|
15264
|
-
});
|
|
15265
|
-
const geometrySetChildren = useDrawingArr(drawingId, d => {
|
|
15266
|
-
var _d$structure$tree$geo;
|
|
15267
|
-
return (_d$structure$tree$geo = d.structure.tree[geometrySetId]) == null ? void 0 : _d$structure$tree$geo.children;
|
|
15268
|
-
});
|
|
15269
|
-
const regions = React__default.useMemo(() => {
|
|
15270
|
-
const tree = getDrawing(drawingId).structure.tree;
|
|
15271
|
-
const ids = geometrySetChildren.filter(child => {
|
|
15272
|
-
var _tree$child$members, _tree$child$members$s;
|
|
15273
|
-
return ccUtils.base.isA(tree[child].class, CCClasses.CCSketchRegion) && ((_tree$child$members = tree[child].members) == null ? void 0 : (_tree$child$members$s = _tree$child$members.sketch) == null ? void 0 : _tree$child$members$s.value) === sketchId;
|
|
15274
|
-
});
|
|
15275
|
-
return ids;
|
|
15276
|
-
}, [drawingId, sketchId, geometrySetChildren]);
|
|
15790
|
+
const regions = useSketchRegions(drawingId, sketchId);
|
|
15277
15791
|
const editedRegions = useEditedRegionsParam();
|
|
15278
15792
|
const updateAvailable = React__default.useMemo(() => {
|
|
15279
15793
|
return editedRegions.value.every(region => region.curves.length > 0) && editedRegions.isChanged();
|
|
@@ -15394,7 +15908,9 @@ const RootImpl$i = ({
|
|
|
15394
15908
|
React__default.useEffect(() => {
|
|
15395
15909
|
return () => {
|
|
15396
15910
|
var _getPlugin;
|
|
15397
|
-
return (_getPlugin = getPlugin(drawingId, pluginId)) == null ? void 0 : _getPlugin.set(
|
|
15911
|
+
return (_getPlugin = getPlugin(drawingId, pluginId)) == null ? void 0 : _getPlugin.set({
|
|
15912
|
+
needsUpdate: 0
|
|
15913
|
+
});
|
|
15398
15914
|
};
|
|
15399
15915
|
}, [drawingId, pluginId]);
|
|
15400
15916
|
const Component = planeSelected ? SketchMode : PlaneSelectionMode;
|
|
@@ -15608,22 +16124,6 @@ const WorkAxisObj = ({
|
|
|
15608
16124
|
}));
|
|
15609
16125
|
};
|
|
15610
16126
|
|
|
15611
|
-
const getHighlightedColor = (isGHovered, isGSelected, isSHovered, isSSelected) => {
|
|
15612
|
-
if (isSHovered) {
|
|
15613
|
-
return '#3280ff';
|
|
15614
|
-
}
|
|
15615
|
-
if (isSSelected) {
|
|
15616
|
-
return '#8040c0';
|
|
15617
|
-
}
|
|
15618
|
-
if (isGHovered) {
|
|
15619
|
-
return 'green';
|
|
15620
|
-
}
|
|
15621
|
-
if (isGSelected) {
|
|
15622
|
-
return 'red';
|
|
15623
|
-
}
|
|
15624
|
-
return undefined;
|
|
15625
|
-
};
|
|
15626
|
-
|
|
15627
16127
|
const tolerance$4 = 1e-6;
|
|
15628
16128
|
function getBaseColor(direction, type) {
|
|
15629
16129
|
if (direction.distanceTo(new THREE.Vector3(1, 0, 0)) < tolerance$4 && type === WorkAxisType.WA_FIXED) {
|
|
@@ -18592,11 +19092,11 @@ const ccClassHeaderMap = {
|
|
|
18592
19092
|
},
|
|
18593
19093
|
[CCClasses.CCExtrusion]: {
|
|
18594
19094
|
name: 'Extrusion',
|
|
18595
|
-
icon: img$
|
|
19095
|
+
icon: img$P
|
|
18596
19096
|
},
|
|
18597
19097
|
[CCClasses.CCRevolve]: {
|
|
18598
19098
|
name: 'Revolve',
|
|
18599
|
-
icon: img$
|
|
19099
|
+
icon: img$O
|
|
18600
19100
|
},
|
|
18601
19101
|
[CCClasses.CCUnion]: {
|
|
18602
19102
|
name: 'Boolean',
|
|
@@ -18636,7 +19136,7 @@ const ccClassHeaderMap = {
|
|
|
18636
19136
|
},
|
|
18637
19137
|
[CCClasses.CCMirror]: {
|
|
18638
19138
|
name: 'Mirror',
|
|
18639
|
-
icon: img$
|
|
19139
|
+
icon: img$A
|
|
18640
19140
|
},
|
|
18641
19141
|
[CCClasses.CCTranslation]: {
|
|
18642
19142
|
name: 'Translation',
|
|
@@ -22801,7 +23301,21 @@ const useVisibleSolids = drawingId => {
|
|
|
22801
23301
|
solids = solidsIds;
|
|
22802
23302
|
}
|
|
22803
23303
|
const solidsUnique = solids.filter((id, i) => solids.indexOf(id) === i);
|
|
22804
|
-
|
|
23304
|
+
|
|
23305
|
+
// filter out entities of composite curves
|
|
23306
|
+
const filteredSolids = [];
|
|
23307
|
+
const cache = useDrawing(drawingId, d => d.geometry.cache);
|
|
23308
|
+
if (tree && cache) {
|
|
23309
|
+
solidsUnique.forEach(solidId => {
|
|
23310
|
+
var _cache$solidId, _tree$ccEntityId;
|
|
23311
|
+
const ccEntityId = (_cache$solidId = cache[solidId]) == null ? void 0 : _cache$solidId.container.ownerId; // CC_CurveEntity id
|
|
23312
|
+
const ccOperation = (_tree$ccEntityId = tree[ccEntityId]) == null ? void 0 : _tree$ccEntityId.parent; // CC_CompositeCurve id
|
|
23313
|
+
if (ccOperation && tree[ccOperation].class !== CCClasses.CCCompositeCurve) {
|
|
23314
|
+
filteredSolids.push(solidId);
|
|
23315
|
+
}
|
|
23316
|
+
});
|
|
23317
|
+
}
|
|
23318
|
+
return filteredSolids;
|
|
22805
23319
|
};
|
|
22806
23320
|
|
|
22807
23321
|
const mateNames = ['firstRefMate', 'secondRefMate'];
|
|
@@ -23017,7 +23531,7 @@ const Constraint = ({
|
|
|
23017
23531
|
menuInfo: menuInfo,
|
|
23018
23532
|
caption: "Constraint",
|
|
23019
23533
|
icon: /*#__PURE__*/React__default.createElement(Icon$2, {
|
|
23020
|
-
url: img$
|
|
23534
|
+
url: img$U,
|
|
23021
23535
|
size: 14
|
|
23022
23536
|
}),
|
|
23023
23537
|
onHide: onHide,
|
|
@@ -25324,6 +25838,8 @@ const SideBar = ({
|
|
|
25324
25838
|
var css_248z = ".toolbar-dropdown .ant-dropdown-menu-root {\n margin-left: -24px;\n}\n";
|
|
25325
25839
|
styleInject(css_248z);
|
|
25326
25840
|
|
|
25841
|
+
var img$8 = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='UTF-8'%3f%3e%3csvg width='100' height='100' version='1.1' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3e %3cg stroke='black' stroke-width='5'%3e %3cpath d='m20 20 20 20c-37.015 3.8681-19.657 36.676 0 30l20-40c27.5 15 15 15 0 30l20 20' fill='none' stroke-linecap='round' stroke-linejoin='round' style='paint-order:stroke markers fill'/%3e %3cpath d='m88 80a8 8 0 0 1-8 8 8 8 0 0 1-8-8 8 8 0 0 1 8-8 8 8 0 0 1 8 8zm-60-60a8 8 0 0 1-8 8 8 8 0 0 1-8-8 8 8 0 0 1 8-8 8 8 0 0 1 8 8z' fill='white' style='paint-order:markers fill stroke'/%3e %3cpath d='m63 60a3 3 0 0 1-3 3 3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3zm0-30a3 3 0 0 1-3 3 3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3zm-20 40a3 3 0 0 1-3 3 3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3zm0-30a3 3 0 0 1-3 3 3 3 0 0 1-3-3 3 3 0 0 1 3-3 3 3 0 0 1 3 3z' style='paint-order:markers fill stroke'/%3e %3c/g%3e%3c/svg%3e";
|
|
25842
|
+
|
|
25327
25843
|
const Icon = ({
|
|
25328
25844
|
url
|
|
25329
25845
|
}) => {
|
|
@@ -25393,13 +25909,13 @@ const PartModeCmds = (drawingId, rootId) => {
|
|
|
25393
25909
|
Solid: [{
|
|
25394
25910
|
label: 'Extrusion',
|
|
25395
25911
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25396
|
-
url: img$
|
|
25912
|
+
url: img$P
|
|
25397
25913
|
}),
|
|
25398
25914
|
callback: wrapper(() => featureApi.createFeature(drawingId, rootId, CCClasses.CCExtrusion, 'Extrusion'))
|
|
25399
25915
|
}, {
|
|
25400
25916
|
label: 'Revolve',
|
|
25401
25917
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25402
|
-
url: img$
|
|
25918
|
+
url: img$O
|
|
25403
25919
|
}),
|
|
25404
25920
|
callback: wrapper(() => featureApi.createFeature(drawingId, rootId, CCClasses.CCRevolve, 'Revolve'))
|
|
25405
25921
|
}, {
|
|
@@ -25457,7 +25973,7 @@ const PartModeCmds = (drawingId, rootId) => {
|
|
|
25457
25973
|
}, {
|
|
25458
25974
|
label: 'Mirror',
|
|
25459
25975
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25460
|
-
url: img$
|
|
25976
|
+
url: img$A
|
|
25461
25977
|
}),
|
|
25462
25978
|
callback: wrapper(() => featureApi.createFeature(drawingId, rootId, CCClasses.CCMirror, 'Mirror'))
|
|
25463
25979
|
}],
|
|
@@ -25512,6 +26028,13 @@ const PartModeCmds = (drawingId, rootId) => {
|
|
|
25512
26028
|
}),
|
|
25513
26029
|
callback: wrapper(() => featureApi.createFeature(drawingId, rootId, CCClasses.CCImport, 'Import'))
|
|
25514
26030
|
},
|
|
26031
|
+
CompositeCurve: {
|
|
26032
|
+
label: 'Composite Curve',
|
|
26033
|
+
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
26034
|
+
url: img$8
|
|
26035
|
+
}),
|
|
26036
|
+
callback: wrapper(() => featureApi.createFeature(drawingId, rootId, CCClasses.CCCompositeCurve, 'Composite Curve'))
|
|
26037
|
+
},
|
|
25515
26038
|
Deletion: {
|
|
25516
26039
|
label: 'Delete Entity',
|
|
25517
26040
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
@@ -25522,13 +26045,11 @@ const PartModeCmds = (drawingId, rootId) => {
|
|
|
25522
26045
|
};
|
|
25523
26046
|
};
|
|
25524
26047
|
|
|
25525
|
-
var img$
|
|
25526
|
-
|
|
25527
|
-
var img$7 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M62.375 51.4062H43.2812V71.5H37.2812V26H65.4688V30.9375H43.2812V46.5H62.375V51.4062Z' fill='%235E5E5E'/%3e%3cpath d='M62.375 51.4062V52.4062H63.375V51.4062H62.375ZM43.2812 51.4062V50.4062H42.2812V51.4062H43.2812ZM43.2812 71.5V72.5H44.2812V71.5H43.2812ZM37.2812 71.5H36.2812V72.5H37.2812V71.5ZM37.2812 26V25H36.2812V26H37.2812ZM65.4688 26H66.4688V25H65.4688V26ZM65.4688 30.9375V31.9375H66.4688V30.9375H65.4688ZM43.2812 30.9375V29.9375H42.2812V30.9375H43.2812ZM43.2812 46.5H42.2812V47.5H43.2812V46.5ZM62.375 46.5H63.375V45.5H62.375V46.5ZM62.375 50.4062H43.2812V52.4062H62.375V50.4062ZM42.2812 51.4062V71.5H44.2812V51.4062H42.2812ZM43.2812 70.5H37.2812V72.5H43.2812V70.5ZM38.2812 71.5V26H36.2812V71.5H38.2812ZM37.2812 27H65.4688V25H37.2812V27ZM64.4688 26V30.9375H66.4688V26H64.4688ZM65.4688 29.9375H43.2812V31.9375H65.4688V29.9375ZM42.2812 30.9375V46.5H44.2812V30.9375H42.2812ZM43.2812 47.5H62.375V45.5H43.2812V47.5ZM61.375 46.5V51.4062H63.375V46.5H61.375Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
26048
|
+
var img$7 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M40.375 51.4062H21.2812V71.5H15.2812V26H43.4688V30.9375H21.2812V46.5H40.375V51.4062ZM85.6562 50.2188C85.6562 54.6771 84.9062 58.5729 83.4062 61.9062C81.9062 65.2188 79.7812 67.75 77.0312 69.5C74.2812 71.25 71.0729 72.125 67.4062 72.125C63.8229 72.125 60.6458 71.25 57.875 69.5C55.1042 67.7292 52.9479 65.2188 51.4062 61.9688C49.8854 58.6979 49.1042 54.9167 49.0625 50.625V47.3438C49.0625 42.9688 49.8229 39.1042 51.3438 35.75C52.8646 32.3958 55.0104 29.8333 57.7812 28.0625C60.5729 26.2708 63.7604 25.375 67.3438 25.375C70.9896 25.375 74.1979 26.2604 76.9688 28.0312C79.7604 29.7812 81.9062 32.3333 83.4062 35.6875C84.9062 39.0208 85.6562 42.9062 85.6562 47.3438V50.2188ZM79.6875 47.2812C79.6875 41.8854 78.6042 37.75 76.4375 34.875C74.2708 31.9792 71.2396 30.5312 67.3438 30.5312C63.5521 30.5312 60.5625 31.9792 58.375 34.875C56.2083 37.75 55.0938 41.75 55.0312 46.875V50.2188C55.0312 55.4479 56.125 59.5625 58.3125 62.5625C60.5208 65.5417 63.5521 67.0312 67.4062 67.0312C71.2812 67.0312 74.2812 65.625 76.4062 62.8125C78.5312 59.9792 79.625 55.9271 79.6875 50.6562V47.2812Z' fill='%235E5E5E'/%3e%3cpath d='M40.375 51.4062V52.4062H41.375V51.4062H40.375ZM21.2812 51.4062V50.4062H20.2812V51.4062H21.2812ZM21.2812 71.5V72.5H22.2812V71.5H21.2812ZM15.2812 71.5H14.2812V72.5H15.2812V71.5ZM15.2812 26V25H14.2812V26H15.2812ZM43.4688 26H44.4688V25H43.4688V26ZM43.4688 30.9375V31.9375H44.4688V30.9375H43.4688ZM21.2812 30.9375V29.9375H20.2812V30.9375H21.2812ZM21.2812 46.5H20.2812V47.5H21.2812V46.5ZM40.375 46.5H41.375V45.5H40.375V46.5ZM40.375 50.4062H21.2812V52.4062H40.375V50.4062ZM20.2812 51.4062V71.5H22.2812V51.4062H20.2812ZM21.2812 70.5H15.2812V72.5H21.2812V70.5ZM16.2812 71.5V26H14.2812V71.5H16.2812ZM15.2812 27H43.4688V25H15.2812V27ZM42.4688 26V30.9375H44.4688V26H42.4688ZM43.4688 29.9375H21.2812V31.9375H43.4688V29.9375ZM20.2812 30.9375V46.5H22.2812V30.9375H20.2812ZM21.2812 47.5H40.375V45.5H21.2812V47.5ZM39.375 46.5V51.4062H41.375V46.5H39.375ZM83.4062 61.9062L84.3172 62.3188L84.3182 62.3166L83.4062 61.9062ZM57.875 69.5L57.3365 70.3426L57.341 70.3455L57.875 69.5ZM51.4062 61.9688L50.4995 62.3904L50.5027 62.3973L51.4062 61.9688ZM49.0625 50.625H48.0625L48.0625 50.6347L49.0625 50.625ZM57.7812 28.0625L58.3198 28.9051L58.3214 28.9041L57.7812 28.0625ZM76.9688 28.0312L76.4302 28.8739L76.4376 28.8785L76.9688 28.0312ZM83.4062 35.6875L82.4934 36.0957L82.4943 36.0979L83.4062 35.6875ZM76.4375 34.875L75.6368 35.4741L75.6389 35.4769L76.4375 34.875ZM58.375 34.875L57.5771 34.2722L57.5764 34.2731L58.375 34.875ZM55.0312 46.875L54.0312 46.8628V46.875H55.0312ZM58.3125 62.5625L57.5045 63.1517L57.5091 63.158L58.3125 62.5625ZM76.4062 62.8125L77.2041 63.4153L77.2062 63.4125L76.4062 62.8125ZM79.6875 50.6562L80.6875 50.6681V50.6562H79.6875ZM84.6562 50.2188C84.6562 54.566 83.925 58.3167 82.4943 61.4959L84.3182 62.3166C85.8875 58.8292 86.6562 54.7882 86.6562 50.2188H84.6562ZM82.4953 61.4937C81.0659 64.6504 79.0619 67.0225 76.4944 68.6563L77.5681 70.3437C80.5006 68.4775 82.7466 65.7871 84.3172 62.3188L82.4953 61.4937ZM76.4944 68.6563C73.9243 70.2919 70.9072 71.125 67.4062 71.125V73.125C71.2386 73.125 74.6382 72.2081 77.5681 70.3437L76.4944 68.6563ZM67.4062 71.125C63.9936 71.125 61.0052 70.2942 58.409 68.6545L57.341 70.3455C60.2865 72.2058 63.6522 73.125 67.4062 73.125V71.125ZM58.4135 68.6574C55.8155 66.997 53.7788 64.6371 52.3098 61.5402L50.5027 62.3973C52.117 65.8004 54.3928 68.4613 57.3365 70.3426L58.4135 68.6574ZM52.313 61.5471C50.8625 58.4276 50.103 54.7912 50.0625 50.6153L48.0625 50.6347C48.1053 55.0421 48.9083 58.9683 50.4995 62.3904L52.313 61.5471ZM50.0625 50.625V47.3438H48.0625V50.625H50.0625ZM50.0625 47.3438C50.0625 43.0848 50.8025 39.3653 52.2545 36.163L50.433 35.337C48.8433 38.843 48.0625 42.8527 48.0625 47.3438H50.0625ZM52.2545 36.163C53.7053 32.9632 55.7311 30.5595 58.3198 28.9051L57.2427 27.2199C54.2898 29.1071 52.0238 31.8285 50.433 35.337L52.2545 36.163ZM58.3214 28.9041C60.9389 27.2242 63.9359 26.375 67.3438 26.375V24.375C63.5849 24.375 60.2069 25.3175 57.2411 27.2209L58.3214 28.9041ZM67.3438 26.375C70.8202 26.375 73.8374 27.2168 76.4302 28.8739L77.5073 27.1886C74.5584 25.304 71.159 24.375 67.3438 24.375V26.375ZM76.4376 28.8785C79.0423 30.5113 81.0646 32.9009 82.4934 36.0957L84.3191 35.2793C82.7479 31.7658 80.4785 29.0512 77.4999 27.184L76.4376 28.8785ZM82.4943 36.0979C83.9252 39.2776 84.6562 43.0181 84.6562 47.3438H86.6562C86.6562 42.7944 85.8873 38.764 84.3182 35.2771L82.4943 36.0979ZM84.6562 47.3438V50.2188H86.6562V47.3438H84.6562ZM80.6875 47.2812C80.6875 41.7713 79.5843 37.389 77.2361 34.2731L75.6389 35.4769C77.6241 38.111 78.6875 41.9995 78.6875 47.2812H80.6875ZM77.2382 34.2759C74.8664 31.1059 71.5265 29.5312 67.3438 29.5312V31.5312C70.9527 31.5312 73.6753 32.8524 75.6368 35.4741L77.2382 34.2759ZM67.3438 29.5312C63.2549 29.5312 59.9632 31.1134 57.5771 34.2722L59.1729 35.4778C61.1618 32.8449 63.8492 31.5312 67.3438 31.5312V29.5312ZM57.5764 34.2731C55.2374 37.3768 54.0954 41.6121 54.0313 46.8628L56.0312 46.8872C56.0921 41.8879 57.1792 38.1232 59.1736 35.4769L57.5764 34.2731ZM54.0312 46.875V50.2188H56.0312V46.875H54.0312ZM54.0312 50.2188C54.0312 55.5758 55.1505 59.9233 57.5045 63.1517L59.1205 61.9733C57.0995 59.2017 56.0312 55.3201 56.0312 50.2188H54.0312ZM57.5091 63.158C59.9146 66.4031 63.25 68.0312 67.4062 68.0312V66.0312C63.8542 66.0312 61.127 64.6802 59.1159 61.967L57.5091 63.158ZM67.4062 68.0312C71.5589 68.0312 74.8695 66.5053 77.2041 63.4153L75.6084 62.2097C73.693 64.7447 71.0036 66.0312 67.4062 66.0312V68.0312ZM77.2062 63.4125C79.5072 60.3445 80.6236 56.0527 80.6874 50.6681L78.6876 50.6444C78.6264 55.8015 77.5553 59.6138 75.6063 62.2125L77.2062 63.4125ZM80.6875 50.6562V47.2812H78.6875V50.6562H80.6875Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
25528
26049
|
|
|
25529
|
-
var img$6 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
26050
|
+
var img$6 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M62.375 51.4062H43.2812V71.5H37.2812V26H65.4688V30.9375H43.2812V46.5H62.375V51.4062Z' fill='%235E5E5E'/%3e%3cpath d='M62.375 51.4062V52.4062H63.375V51.4062H62.375ZM43.2812 51.4062V50.4062H42.2812V51.4062H43.2812ZM43.2812 71.5V72.5H44.2812V71.5H43.2812ZM37.2812 71.5H36.2812V72.5H37.2812V71.5ZM37.2812 26V25H36.2812V26H37.2812ZM65.4688 26H66.4688V25H65.4688V26ZM65.4688 30.9375V31.9375H66.4688V30.9375H65.4688ZM43.2812 30.9375V29.9375H42.2812V30.9375H43.2812ZM43.2812 46.5H42.2812V47.5H43.2812V46.5ZM62.375 46.5H63.375V45.5H62.375V46.5ZM62.375 50.4062H43.2812V52.4062H62.375V50.4062ZM42.2812 51.4062V71.5H44.2812V51.4062H42.2812ZM43.2812 70.5H37.2812V72.5H43.2812V70.5ZM38.2812 71.5V26H36.2812V71.5H38.2812ZM37.2812 27H65.4688V25H37.2812V27ZM64.4688 26V30.9375H66.4688V26H64.4688ZM65.4688 29.9375H43.2812V31.9375H65.4688V29.9375ZM42.2812 30.9375V46.5H44.2812V30.9375H42.2812ZM43.2812 47.5H62.375V45.5H43.2812V47.5ZM61.375 46.5V51.4062H63.375V46.5H61.375Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
25530
26051
|
|
|
25531
|
-
var img$5 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='
|
|
26052
|
+
var img$5 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M49.6875 51.2188C44.5417 49.7396 40.7917 47.9271 38.4375 45.7812C36.1042 43.6146 34.9375 40.9479 34.9375 37.7812C34.9375 34.1979 36.3646 31.2396 39.2188 28.9062C42.0938 26.5521 45.8229 25.375 50.4062 25.375C53.5312 25.375 56.3125 25.9792 58.75 27.1875C61.2083 28.3958 63.1042 30.0625 64.4375 32.1875C65.7917 34.3125 66.4688 36.6354 66.4688 39.1562H60.4375C60.4375 36.4062 59.5625 34.25 57.8125 32.6875C56.0625 31.1042 53.5938 30.3125 50.4062 30.3125C47.4479 30.3125 45.1354 30.9688 43.4688 32.2812C41.8229 33.5729 41 35.375 41 37.6875C41 39.5417 41.7812 41.1146 43.3438 42.4062C44.9271 43.6771 47.6042 44.8438 51.375 45.9062C55.1667 46.9688 58.125 48.1458 60.25 49.4375C62.3958 50.7083 63.9792 52.1979 65 53.9062C66.0417 55.6146 66.5625 57.625 66.5625 59.9375C66.5625 63.625 65.125 66.5833 62.25 68.8125C59.375 71.0208 55.5312 72.125 50.7188 72.125C47.5938 72.125 44.6771 71.5312 41.9688 70.3438C39.2604 69.1354 37.1667 67.4896 35.6875 65.4062C34.2292 63.3229 33.5 60.9583 33.5 58.3125H39.5312C39.5312 61.0625 40.5417 63.2396 42.5625 64.8438C44.6042 66.4271 47.3229 67.2188 50.7188 67.2188C53.8854 67.2188 56.3125 66.5729 58 65.2812C59.6875 63.9896 60.5312 62.2292 60.5312 60C60.5312 57.7708 59.75 56.0521 58.1875 54.8438C56.625 53.6146 53.7917 52.4062 49.6875 51.2188Z' fill='%235E5E5E'/%3e%3cpath d='M49.6875 51.2188L49.9654 50.2582L49.9638 50.2577L49.6875 51.2188ZM38.4375 45.7812L37.757 46.5141L37.7639 46.5203L38.4375 45.7812ZM39.2188 28.9062L39.8517 29.6805L39.8523 29.68L39.2188 28.9062ZM58.75 27.1875L58.3058 28.0835L58.3089 28.0849L58.75 27.1875ZM64.4375 32.1875L63.5904 32.719L63.5942 32.7249L64.4375 32.1875ZM66.4688 39.1562V40.1562H67.4688V39.1562H66.4688ZM60.4375 39.1562H59.4375V40.1562H60.4375V39.1562ZM57.8125 32.6875L57.1416 33.4291L57.1465 33.4334L57.8125 32.6875ZM43.4688 32.2812L44.0861 33.0679L44.0874 33.0669L43.4688 32.2812ZM43.3438 42.4062L42.7066 43.177L42.7122 43.1816L42.7178 43.1861L43.3438 42.4062ZM51.375 45.9062L51.1038 46.8688L51.1052 46.8692L51.375 45.9062ZM60.25 49.4375L59.7306 50.2921L59.7404 50.2979L60.25 49.4375ZM65 53.9062L64.1416 54.4192L64.1462 54.4269L65 53.9062ZM62.25 68.8125L62.8592 69.6056L62.8628 69.6028L62.25 68.8125ZM41.9688 70.3438L41.5613 71.257L41.5672 71.2596L41.9688 70.3438ZM35.6875 65.4062L34.8682 65.9797L34.8721 65.9852L35.6875 65.4062ZM33.5 58.3125V57.3125H32.5V58.3125H33.5ZM39.5312 58.3125H40.5312V57.3125H39.5312V58.3125ZM42.5625 64.8438L41.9407 65.627L41.9497 65.634L42.5625 64.8438ZM58.1875 54.8438L57.5692 55.6297L57.5758 55.6348L58.1875 54.8438ZM49.9638 50.2577C44.8778 48.7957 41.2993 47.0367 39.1111 45.0422L37.7639 46.5203C40.284 48.8174 44.2055 50.6834 49.4112 52.1798L49.9638 50.2577ZM39.118 45.0485C36.9871 43.0698 35.9375 40.6681 35.9375 37.7812H33.9375C33.9375 41.2277 35.2212 44.1594 37.757 46.514L39.118 45.0485ZM35.9375 37.7812C35.9375 34.5079 37.2221 31.8302 39.8517 29.6805L38.5858 28.132C35.5071 30.649 33.9375 33.888 33.9375 37.7812H35.9375ZM39.8523 29.68C42.5099 27.5038 45.9983 26.375 50.4062 26.375V24.375C45.6475 24.375 41.6776 25.6003 38.5852 28.1325L39.8523 29.68ZM50.4062 26.375C53.4001 26.375 56.0256 26.9531 58.3059 28.0835L59.1941 26.2915C56.5994 25.0053 53.6624 24.375 50.4062 24.375V26.375ZM58.3089 28.0849C60.6164 29.2192 62.3648 30.7656 63.5904 32.719L65.2846 31.656C63.8435 29.3594 61.8003 27.5725 59.1911 26.2901L58.3089 28.0849ZM63.5942 32.7249C64.846 34.6893 65.4688 36.8257 65.4688 39.1562H67.4688C67.4688 36.4451 66.7374 33.9357 65.2808 31.6501L63.5942 32.7249ZM66.4688 38.1562H60.4375V40.1562H66.4688V38.1562ZM61.4375 39.1562C61.4375 36.1753 60.4781 33.7269 58.4785 31.9416L57.1465 33.4334C58.6469 34.7731 59.4375 36.6372 59.4375 39.1562H61.4375ZM58.4834 31.946C56.4933 30.1454 53.7536 29.3125 50.4062 29.3125V31.3125C53.4339 31.3125 55.6317 32.063 57.1416 33.429L58.4834 31.946ZM50.4062 29.3125C47.3105 29.3125 44.751 29.9986 42.8501 31.4956L44.0874 33.0669C45.5198 31.9389 47.5853 31.3125 50.4062 31.3125V29.3125ZM42.8514 31.4946C40.9363 32.9975 40 35.1049 40 37.6875H42C42 35.6451 42.7095 34.1483 44.0861 33.0679L42.8514 31.4946ZM40 37.6875C40 39.8701 40.9387 41.7155 42.7066 43.177L43.9809 41.6355C42.6238 40.5137 42 39.2133 42 37.6875H40ZM42.7178 43.1861C44.4635 44.5873 47.3015 45.7974 51.1038 46.8688L51.6462 44.9437C47.9069 43.8901 45.3907 42.7669 43.9697 41.6264L42.7178 43.1861ZM51.1052 46.8692C54.8538 47.9196 57.7151 49.0669 59.7306 50.292L60.7694 48.583C58.5349 47.2248 55.4795 46.0179 51.6448 44.9433L51.1052 46.8692ZM59.7404 50.2979C61.7785 51.5049 63.2253 52.8858 64.1416 54.4192L65.8584 53.3933C64.7331 51.5101 63.0132 49.9117 60.7596 48.5771L59.7404 50.2979ZM64.1462 54.4269C65.0782 55.9553 65.5625 57.7796 65.5625 59.9375H67.5625C67.5625 57.4704 67.0052 55.2739 65.8538 53.3856L64.1462 54.4269ZM65.5625 59.9375C65.5625 63.3208 64.2641 65.9855 61.6372 68.0222L62.8628 69.6028C65.9859 67.1812 67.5625 63.9292 67.5625 59.9375H65.5625ZM61.6408 68.0194C58.9901 70.0555 55.3829 71.125 50.7188 71.125V73.125C55.6796 73.125 59.7599 71.9862 62.8592 69.6056L61.6408 68.0194ZM50.7188 71.125C47.724 71.125 44.9449 70.5568 42.3703 69.4279L41.5672 71.2596C44.4092 72.5057 47.4635 73.125 50.7188 73.125V71.125ZM42.3762 69.4305C39.8047 68.2832 37.8628 66.7427 36.5029 64.8273L34.8721 65.9852C36.4706 68.2365 38.7161 69.9876 41.5613 71.257L42.3762 69.4305ZM36.5067 64.8328C35.171 62.9246 34.5 60.762 34.5 58.3125H32.5C32.5 61.1547 33.2873 63.7212 34.8683 65.9797L36.5067 64.8328ZM33.5 59.3125H39.5312V57.3125H33.5V59.3125ZM38.5312 58.3125C38.5312 61.3445 39.6634 63.8192 41.9408 65.627L43.1842 64.0605C41.4199 62.66 40.5312 60.7805 40.5312 58.3125H38.5312ZM41.9497 65.634C44.2149 67.3907 47.1709 68.2188 50.7188 68.2188V66.2188C47.4749 66.2188 44.9934 65.4635 43.1753 64.0535L41.9497 65.634ZM50.7188 68.2188C54.0023 68.2188 56.6788 67.5519 58.6078 66.0753L57.3922 64.4872C55.9462 65.5939 53.7686 66.2188 50.7188 66.2188V68.2188ZM58.6078 66.0753C60.5563 64.5839 61.5312 62.5227 61.5312 60H59.5312C59.5312 61.9356 58.8187 63.3953 57.3922 64.4872L58.6078 66.0753ZM61.5312 60C61.5312 57.5066 60.6404 55.4765 58.7992 54.0527L57.5758 55.6348C58.8596 56.6276 59.5312 58.0351 59.5312 60H61.5312ZM58.8058 54.0578C57.0802 52.7003 54.0838 51.4498 49.9654 50.2582L49.4096 52.1793C53.4995 53.3627 56.1698 54.5288 57.5692 55.6297L58.8058 54.0578Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
25532
26053
|
|
|
25533
26054
|
var img$4 = "data:image/svg+xml,%3csvg width='100' height='100' viewBox='0 0 100 100' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M70.75 57.0625C70.1875 61.875 68.4062 65.5938 65.4062 68.2188C62.4271 70.8229 58.4583 72.125 53.5 72.125C48.125 72.125 43.8125 70.1979 40.5625 66.3438C37.3333 62.4896 35.7188 57.3333 35.7188 50.875V46.5C35.7188 42.2708 36.4688 38.5521 37.9688 35.3438C39.4896 32.1354 41.6354 29.6771 44.4062 27.9688C47.1771 26.2396 50.3854 25.375 54.0312 25.375C58.8646 25.375 62.7396 26.7292 65.6562 29.4375C68.5729 32.125 70.2708 35.8542 70.75 40.625H64.7188C64.1979 37 63.0625 34.375 61.3125 32.75C59.5833 31.125 57.1562 30.3125 54.0312 30.3125C50.1979 30.3125 47.1875 31.7292 45 34.5625C42.8333 37.3958 41.75 41.4271 41.75 46.6562V51.0625C41.75 56 42.7812 59.9271 44.8438 62.8438C46.9062 65.7604 49.7917 67.2188 53.5 67.2188C56.8333 67.2188 59.3854 66.4688 61.1562 64.9688C62.9479 63.4479 64.1354 60.8125 64.7188 57.0625H70.75Z' fill='%235E5E5E'/%3e%3cpath d='M70.75 57.0625L71.7432 57.1786L71.8737 56.0625H70.75V57.0625ZM65.4062 68.2188L66.0644 68.9717L66.0648 68.9713L65.4062 68.2188ZM40.5625 66.3438L39.796 66.986L39.798 66.9884L40.5625 66.3438ZM37.9688 35.3438L37.0651 34.9154L37.0629 34.9202L37.9688 35.3438ZM44.4062 27.9688L44.9311 28.82L44.9357 28.8171L44.4062 27.9688ZM65.6562 29.4375L64.9758 30.1703L64.9786 30.1729L65.6562 29.4375ZM70.75 40.625V41.625H71.8555L71.745 40.5251L70.75 40.625ZM64.7188 40.625L63.7289 40.7672L63.8522 41.625H64.7188V40.625ZM61.3125 32.75L60.6277 33.4787L60.632 33.4828L61.3125 32.75ZM45 34.5625L44.2085 33.9514L44.2056 33.955L45 34.5625ZM61.1562 64.9688L61.8026 65.7318L61.8034 65.7311L61.1562 64.9688ZM64.7188 57.0625V56.0625H63.8623L63.7306 56.9088L64.7188 57.0625ZM69.7568 56.9464C69.2165 61.5683 67.5228 65.038 64.7477 67.4662L66.0648 68.9713C69.2897 66.1495 71.1585 62.1817 71.7432 57.1786L69.7568 56.9464ZM64.7481 67.4658C61.9938 69.8734 58.2797 71.125 53.5 71.125V73.125C58.637 73.125 62.8603 71.7724 66.0644 68.9717L64.7481 67.4658ZM53.5 71.125C48.3975 71.125 44.3731 69.3115 41.327 65.6991L39.798 66.9884C43.2519 71.0843 47.8525 73.125 53.5 73.125V71.125ZM41.329 65.7015C38.2893 62.0735 36.7188 57.1666 36.7188 50.875H34.7188C34.7188 57.5 36.3774 62.9057 39.796 66.986L41.329 65.7015ZM36.7188 50.875V46.5H34.7188V50.875H36.7188ZM36.7188 46.5C36.7188 42.3892 37.4475 38.8198 38.8746 35.7673L37.0629 34.9202C35.49 38.2844 34.7188 42.1525 34.7188 46.5H36.7188ZM38.8724 35.7721C40.3183 32.7219 42.3396 30.4177 44.9311 28.82L43.8814 27.1175C40.9313 28.9364 38.6609 31.549 37.0651 34.9154L38.8724 35.7721ZM44.9357 28.8171C47.5297 27.1983 50.5502 26.375 54.0312 26.375V24.375C50.2206 24.375 46.8245 25.2809 43.8768 27.1204L44.9357 28.8171ZM54.0312 26.375C58.6692 26.375 62.282 27.6689 64.9758 30.1703L66.3367 28.7047C63.1971 25.7894 59.06 24.375 54.0312 24.375V26.375ZM64.9786 30.1729C67.6794 32.6615 69.2949 36.1442 69.755 40.7249L71.745 40.5251C71.2467 35.5641 69.4664 31.5885 66.3339 28.7021L64.9786 30.1729ZM70.75 39.625H64.7188V41.625H70.75V39.625ZM65.7086 40.4828C65.1717 36.7462 63.9795 33.8618 61.993 32.0172L60.632 33.4828C62.1455 34.8882 63.2241 37.2538 63.7289 40.7672L65.7086 40.4828ZM61.9973 32.0213C60.03 30.1725 57.3278 29.3125 54.0312 29.3125V31.3125C56.9847 31.3125 59.1366 32.0775 60.6277 33.4787L61.9973 32.0213ZM54.0312 29.3125C49.9135 29.3125 46.6003 30.8534 44.2085 33.9514L45.7915 35.1736C47.7747 32.605 50.4823 31.3125 54.0312 31.3125V29.3125ZM44.2056 33.955C41.8562 37.0275 40.75 41.3059 40.75 46.6562H42.75C42.75 41.5483 43.8105 37.7642 45.7944 35.17L44.2056 33.955ZM40.75 46.6562V51.0625H42.75V46.6562H40.75ZM40.75 51.0625C40.75 56.1298 41.8075 60.2821 44.0273 63.4211L45.6602 62.2664C43.755 59.5721 42.75 55.8702 42.75 51.0625H40.75ZM44.0273 63.4211C46.2855 66.6146 49.4817 68.2188 53.5 68.2188V66.2188C50.1016 66.2188 47.527 64.9062 45.6602 62.2664L44.0273 63.4211ZM53.5 68.2188C56.9687 68.2188 59.7865 67.4395 61.8026 65.7318L60.5099 64.2057C58.9843 65.498 56.698 66.2188 53.5 66.2188V68.2188ZM61.8034 65.7311C63.8616 63.9841 65.1079 61.0665 65.7069 57.2162L63.7306 56.9088C63.1629 60.5585 62.0343 62.9118 60.5091 64.2064L61.8034 65.7311ZM64.7188 58.0625H70.75V56.0625H64.7188V58.0625Z' fill='%235E5E5E'/%3e%3c/svg%3e";
|
|
25534
26055
|
|
|
@@ -25567,28 +26088,28 @@ const AssemblyModeCmds = (drawingId, rootId) => {
|
|
|
25567
26088
|
FastenedOrigin: {
|
|
25568
26089
|
label: 'Add Fastened Origin',
|
|
25569
26090
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25570
|
-
url: img$
|
|
26091
|
+
url: img$7
|
|
25571
26092
|
}),
|
|
25572
26093
|
callback: wrapper(addFastenedOrigin)
|
|
25573
26094
|
},
|
|
25574
26095
|
Fastened: {
|
|
25575
26096
|
label: 'Add Fastened',
|
|
25576
26097
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25577
|
-
url: img$
|
|
26098
|
+
url: img$6
|
|
25578
26099
|
}),
|
|
25579
26100
|
callback: wrapper(addFastened)
|
|
25580
26101
|
},
|
|
25581
26102
|
Slider: {
|
|
25582
26103
|
label: 'Add Slider',
|
|
25583
26104
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25584
|
-
url: img$
|
|
26105
|
+
url: img$5
|
|
25585
26106
|
}),
|
|
25586
26107
|
callback: wrapper(addSlider)
|
|
25587
26108
|
},
|
|
25588
26109
|
Revolute: {
|
|
25589
26110
|
label: 'Add Revolute',
|
|
25590
26111
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25591
|
-
url: img$
|
|
26112
|
+
url: img$y
|
|
25592
26113
|
}),
|
|
25593
26114
|
callback: wrapper(addRevolute)
|
|
25594
26115
|
},
|
|
@@ -25792,7 +26313,7 @@ const useOptionCommands = () => {
|
|
|
25792
26313
|
}, {
|
|
25793
26314
|
label: 'Vertices',
|
|
25794
26315
|
icon: /*#__PURE__*/React__default.createElement(Icon, {
|
|
25795
|
-
url: img$
|
|
26316
|
+
url: img$N
|
|
25796
26317
|
}),
|
|
25797
26318
|
isChecked: showVertices,
|
|
25798
26319
|
command: () => setShowVertices(!showVertices)
|
|
@@ -26109,4 +26630,4 @@ const Menu = _ref => {
|
|
|
26109
26630
|
}, "..."));
|
|
26110
26631
|
};
|
|
26111
26632
|
|
|
26112
|
-
export { index$a as AppearanceEditor, index$
|
|
26633
|
+
export { index$a as AppearanceEditor, index$C as Boolean, index$c as BoundingBoxInfo, index$y as Box, CADApi, CSysDisplay, index$s as Chamfer, index$l as CircularPattern, index$v as CompositeCurve, CompositeCurveObj, index$u as Cone, Constraints, ContextMenu, index$w as Cylinder, index$5 as Cylindrical, index$D as Dimensions, Drawing, EditMode, index$1 as EntityDeletion, index$b as Expressions, index$B as Extrusion, index$8 as Fastened, index$9 as FastenedOrigin, FeaturePlugin, index$t as Fillet, FtVisibilityController$1 as FtVisibilityController, GeometryOverridesManager, GlobalPlugins, HUD, HoveredConstraintDisplay, index$2 as Import, index$m as LinearPattern, MateScope, index$j as Measure, Menu, Messages, index$k as Mirror, ModelTree, Outline, index$3 as Parallel, index$4 as Planar, PluginGeometryBounds, index as ProductManagement, Readfile$1 as Readfile, index$6 as Revolute, index$z as Revolve, index$q as Rotate, SelectedMateObj, SideBar, index$i as Sketch, index$o as Slice, index$n as SliceBySheet, index$7 as Slider, Solids, index$x as Sphere, ToolBar, index$p as TransformByCsys, index$r as Translate, TreeObjScope, index$A as Twist, ViewOptionButtons, ViewPlugButtons, index$h as WorkAxis, WorkAxisObj, index$d as WorkCSys, WorkCSysObj, index$e as WorkCoordSystem, WorkCoordSystemObj, index$g as WorkPlane, WorkPlaneObj, index$f as WorkPoint, WorkPointObj, getCADState, getMateRefIds, useAllObjects, useCADStore, useEditMode, useHasPending, useIsLoading, useIsSketchActive, useOperationSequence, useOverrideGeometryColor, useVisibleSolids };
|