mxdraw 0.1.16 → 0.1.21
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/dist/lib/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.js +128 -1
- package/dist/lib/MxModule/McEdGetPointWorldDrawObject/index.js +5 -1
- package/dist/lib/MxModule/McGeVector3d/McGeVector3d.js +2 -1
- package/dist/lib/MxModule/McGeVector3d/index.js +3 -1
- package/dist/lib/MxModule/McGiWorldDraw/McGiWorldDraw.js +3 -1
- package/dist/lib/MxModule/McGiWorldDraw/index.js +2 -1
- package/dist/lib/MxModule/McGiWorldDrawType/McGiWorldDrawType.js +19 -1
- package/dist/lib/MxModule/McGiWorldDrawType/index.js +4 -1
- package/dist/lib/MxModule/MrxDbgUiPrBaseReturn/MrxDbgUiPrBaseReturn.js +31 -1
- package/dist/lib/MxModule/MrxDbgUiPrBaseReturn/index.js +5 -1
- package/dist/lib/MxModule/MrxDbgUiPrPoint/MrxDbgUiPrPointClass.js +159 -1
- package/dist/lib/MxModule/MrxDbgUiPrPoint/index.js +5 -1
- package/dist/lib/MxModule/MxDbAlignedDimension/MxDbAlignedDimension.js +213 -1
- package/dist/lib/MxModule/MxDbAlignedDimension/index.js +5 -1
- package/dist/lib/MxModule/MxDbEntity/MxDbEntity.js +258 -1
- package/dist/lib/MxModule/MxDbEntity/index.js +5 -1
- package/dist/lib/MxModule/MxDbImage/MxDbImage.js +160 -1
- package/dist/lib/MxModule/MxDbImage/index.js +5 -1
- package/dist/lib/MxModule/MxDbLine/MxDbLine.js +94 -1
- package/dist/lib/MxModule/MxDbLine/index.js +5 -1
- package/dist/lib/MxModule/MxDbPolyline/MxDbPolyline.js +97 -0
- package/dist/lib/MxModule/MxDbPolyline/index.js +5 -0
- package/dist/lib/MxModule/MxDbRect/MxDbRect.js +273 -1
- package/dist/lib/MxModule/MxDbRect/index.js +4 -1
- package/dist/lib/MxModule/MxDbSVG/MxDbSVG.js +419 -1
- package/dist/lib/MxModule/MxDbSVG/index.js +5 -1
- package/dist/lib/MxModule/MxDbSVGText/MxDbSVGText.js +21 -1
- package/dist/lib/MxModule/MxDbSVGText/index.js +5 -1
- package/dist/lib/MxModule/MxDrawObject/MxDrawObject.js +782 -1
- package/dist/lib/MxModule/MxDrawObject/index.js +5 -1
- package/dist/lib/MxModule/MxFilters/MxFilters.js +201 -1
- package/dist/lib/MxModule/MxFilters/index.js +4 -1
- package/dist/lib/MxModule/MxFun/MxFun.js +676 -1
- package/dist/lib/MxModule/MxFun/index.js +4 -1
- package/dist/lib/MxModule/MxThreeJS/MxThreeJS.js +283 -1
- package/dist/lib/MxModule/MxThreeJS/MxThreeJS.mixin.js +146 -1
- package/dist/lib/MxModule/MxThreeJS/SVGLoader.js +1862 -1
- package/dist/lib/MxModule/MxThreeJS/index.js +7 -1
- package/dist/lib/MxModule/MxType/MxType.js +27 -1
- package/dist/lib/MxModule/MxType/index.js +4 -1
- package/dist/lib/MxModule/Mxassembly/Mxassembly.js +20 -1
- package/dist/lib/MxModule/Mxassembly/index.js +9 -1
- package/dist/lib/MxModule/loadCoreCode/index.js +5 -1
- package/dist/lib/MxModule/loadCoreCode/loadCoreCode.js +125 -1
- package/dist/lib/MxModule/loadCoreCode/mxUiData.js +312 -1
- package/dist/lib/MxModule/loadCoreCode/mxcadassembly_es5.js +1519 -1
- package/dist/lib/MxModule/loadCoreCode/mxfun.es5.js +7363 -1
- package/dist/lib/MxModule/store/PubsubClass.js +40 -1
- package/dist/lib/MxModule/store/StoreClass.js +73 -1
- package/dist/lib/MxModule/store/index.js +19 -1
- package/dist/lib/MxModule/store/store.js +25 -1
- package/dist/lib/MxModule/useCanvasResizeListener/index.js +5 -1
- package/dist/lib/MxModule/useCanvasResizeListener/useCanvasResizeListener.js +95 -1
- package/dist/lib/doc.js +38 -1
- package/dist/lib/mxdraw.js +67 -1
- package/dist/lib/tools/algorithm/math.js +16 -1
- package/dist/lib/tools/algorithm/random.js +13 -1
- package/dist/lib/tools/dom/create.js +47 -1
- package/dist/lib/tools/dynamicImport/index.js +243 -1
- package/dist/lib/tools/formatting/index.js +20 -1
- package/dist/lib/tools/proxy/index.js +17 -1
- package/dist/lib/tools/three/index.js +124 -1
- package/dist/lib/types/McEdGetPointWorldDrawObject.js +2 -1
- package/dist/lib/types/MrxDbgUiPrPoint.js +2 -1
- package/dist/lib/types/MxCADObject.js +2 -1
- package/dist/lib/types/MxDrawObject.js +2 -1
- package/dist/lib/types/MxFun.js +2 -1
- package/dist/lib/types/Mxassembly.js +2 -1
- package/dist/types/MxModule/McEdGetPointWorldDrawObject/McEdGetPointWorldDrawObjectClass.d.ts +1 -0
- package/dist/types/MxModule/McGiWorldDraw/McGiWorldDraw.d.ts +1 -0
- package/dist/types/MxModule/MrxDbgUiPrPoint/MrxDbgUiPrPointClass.d.ts +2 -1
- package/dist/types/MxModule/MxDbEntity/MxDbEntity.d.ts +1 -0
- package/dist/types/MxModule/MxDbLine/MxDbLine.d.ts +2 -2
- package/dist/types/MxModule/MxDbPolyline/MxDbPolyline.d.ts +21 -0
- package/dist/types/MxModule/MxDbPolyline/index.d.ts +3 -0
- package/dist/types/MxModule/MxDbSVG/MxDbSVG.d.ts +1 -0
- package/dist/types/MxModule/MxDbSVGText/MxDbSVGText.d.ts +1 -0
- package/dist/types/MxModule/MxFun/MxFun.d.ts +7 -2
- package/dist/types/MxModule/MxThreeJS/MxThreeJS.d.ts +2 -0
- package/dist/types/MxModule/MxType/MxType.d.ts +1 -0
- package/dist/types/MxModule/loadCoreCode/mxUiData.d.ts +3 -3
- package/dist/types/MxModule/store/StoreClass.d.ts +10 -4
- package/dist/types/MxModule/store/store.d.ts +2 -2
- package/dist/types/mxdraw.d.ts +9 -2
- package/dist/types/types/MxFun.d.ts +6 -0
- package/package.json +1 -1
- package/dist/mxdraw.es5.js +0 -1
- package/dist/mxdraw.umd.js +0 -1
|
@@ -1 +1,243 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.dynamicCreateMxObject = exports.dynamicImport = void 0;
|
|
40
|
+
// 动态导入模块化JS文件
|
|
41
|
+
function dynamicImport(path) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
43
|
+
var data, _a;
|
|
44
|
+
return __generator(this, function (_b) {
|
|
45
|
+
switch (_b.label) {
|
|
46
|
+
case 0:
|
|
47
|
+
_a = path;
|
|
48
|
+
switch (_a) {
|
|
49
|
+
case 'jquery': return [3 /*break*/, 1];
|
|
50
|
+
case 'element-resize-event-polyfill': return [3 /*break*/, 3];
|
|
51
|
+
}
|
|
52
|
+
return [3 /*break*/, 5];
|
|
53
|
+
case 1: return [4 /*yield*/, dynamicImportJquery()];
|
|
54
|
+
case 2:
|
|
55
|
+
data = _b.sent();
|
|
56
|
+
return [3 /*break*/, 5];
|
|
57
|
+
case 3: return [4 /*yield*/, dynamicImportResize()];
|
|
58
|
+
case 4:
|
|
59
|
+
data = _b.sent();
|
|
60
|
+
return [3 /*break*/, 5];
|
|
61
|
+
case 5: return [2 /*return*/, data];
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
exports.dynamicImport = dynamicImport;
|
|
67
|
+
// 动态引入element-resize-event-polyfill库
|
|
68
|
+
/* istanbul ignore next */
|
|
69
|
+
function dynamicImportResize() {
|
|
70
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
71
|
+
var moduleData, e_1;
|
|
72
|
+
return __generator(this, function (_a) {
|
|
73
|
+
switch (_a.label) {
|
|
74
|
+
case 0:
|
|
75
|
+
_a.trys.push([0, 2, , 3]);
|
|
76
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('element-resize-event-polyfill'); })];
|
|
77
|
+
case 1:
|
|
78
|
+
moduleData = _a.sent();
|
|
79
|
+
if (moduleData.default) {
|
|
80
|
+
return [2 /*return*/, moduleData.default];
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
return [2 /*return*/, moduleData];
|
|
84
|
+
}
|
|
85
|
+
return [3 /*break*/, 3];
|
|
86
|
+
case 2:
|
|
87
|
+
e_1 = _a.sent();
|
|
88
|
+
console.log('import动态导入:' + 'element-resize-event-polyfill' + '失败!', e_1);
|
|
89
|
+
return [3 /*break*/, 3];
|
|
90
|
+
case 3: return [2 /*return*/];
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
// 动态导入JQ
|
|
96
|
+
/* istanbul ignore next */
|
|
97
|
+
function dynamicImportJquery() {
|
|
98
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
99
|
+
var moduleData, e_2;
|
|
100
|
+
return __generator(this, function (_a) {
|
|
101
|
+
switch (_a.label) {
|
|
102
|
+
case 0:
|
|
103
|
+
_a.trys.push([0, 2, , 3]);
|
|
104
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('jquery'); })];
|
|
105
|
+
case 1:
|
|
106
|
+
moduleData = _a.sent();
|
|
107
|
+
if (moduleData.default) {
|
|
108
|
+
return [2 /*return*/, moduleData.default];
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
return [2 /*return*/, moduleData];
|
|
112
|
+
}
|
|
113
|
+
return [3 /*break*/, 3];
|
|
114
|
+
case 2:
|
|
115
|
+
e_2 = _a.sent();
|
|
116
|
+
console.log('import动态导入:' + 'jquery' + '失败!', e_2);
|
|
117
|
+
return [3 /*break*/, 3];
|
|
118
|
+
case 3: return [2 /*return*/];
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
/* istanbul ignore next */
|
|
124
|
+
function dynamicCreateMxObject(sTypeName) {
|
|
125
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
126
|
+
var moduleData, _a, e_3, e_4, e_5, e_6, e_7, e_8, e_9;
|
|
127
|
+
return __generator(this, function (_b) {
|
|
128
|
+
switch (_b.label) {
|
|
129
|
+
case 0:
|
|
130
|
+
_a = sTypeName;
|
|
131
|
+
switch (_a) {
|
|
132
|
+
case 'MxDbSVG': return [3 /*break*/, 1];
|
|
133
|
+
case 'MxDbImage': return [3 /*break*/, 5];
|
|
134
|
+
case 'MxDbLine': return [3 /*break*/, 9];
|
|
135
|
+
case 'MxDbRect': return [3 /*break*/, 13];
|
|
136
|
+
case 'MxDbSVGText': return [3 /*break*/, 17];
|
|
137
|
+
case 'MxDbPolyline': return [3 /*break*/, 21];
|
|
138
|
+
case 'MxDbAlignedDimension': return [3 /*break*/, 25];
|
|
139
|
+
}
|
|
140
|
+
return [3 /*break*/, 29];
|
|
141
|
+
case 1:
|
|
142
|
+
_b.trys.push([1, 3, , 4]);
|
|
143
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbSVG'); })];
|
|
144
|
+
case 2:
|
|
145
|
+
// @ts-ignore
|
|
146
|
+
moduleData = _b.sent();
|
|
147
|
+
return [3 /*break*/, 4];
|
|
148
|
+
case 3:
|
|
149
|
+
e_3 = _b.sent();
|
|
150
|
+
console.log('import:' + sTypeName + 'error!', e_3);
|
|
151
|
+
return [3 /*break*/, 4];
|
|
152
|
+
case 4: return [3 /*break*/, 29];
|
|
153
|
+
case 5:
|
|
154
|
+
_b.trys.push([5, 7, , 8]);
|
|
155
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbImage'); })];
|
|
156
|
+
case 6:
|
|
157
|
+
// @ts-ignore
|
|
158
|
+
moduleData = _b.sent();
|
|
159
|
+
return [3 /*break*/, 8];
|
|
160
|
+
case 7:
|
|
161
|
+
e_4 = _b.sent();
|
|
162
|
+
console.log('import:' + sTypeName + 'error!', e_4);
|
|
163
|
+
return [3 /*break*/, 8];
|
|
164
|
+
case 8: return [3 /*break*/, 29];
|
|
165
|
+
case 9:
|
|
166
|
+
_b.trys.push([9, 11, , 12]);
|
|
167
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbLine'); })];
|
|
168
|
+
case 10:
|
|
169
|
+
// @ts-ignore
|
|
170
|
+
moduleData = _b.sent();
|
|
171
|
+
return [3 /*break*/, 12];
|
|
172
|
+
case 11:
|
|
173
|
+
e_5 = _b.sent();
|
|
174
|
+
console.log('import:' + sTypeName + 'error!', e_5);
|
|
175
|
+
return [3 /*break*/, 12];
|
|
176
|
+
case 12: return [3 /*break*/, 29];
|
|
177
|
+
case 13:
|
|
178
|
+
_b.trys.push([13, 15, , 16]);
|
|
179
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbRect'); })];
|
|
180
|
+
case 14:
|
|
181
|
+
// @ts-ignore
|
|
182
|
+
moduleData = _b.sent();
|
|
183
|
+
return [3 /*break*/, 16];
|
|
184
|
+
case 15:
|
|
185
|
+
e_6 = _b.sent();
|
|
186
|
+
console.log('import:' + sTypeName + 'error!', e_6);
|
|
187
|
+
return [3 /*break*/, 16];
|
|
188
|
+
case 16: return [3 /*break*/, 29];
|
|
189
|
+
case 17:
|
|
190
|
+
_b.trys.push([17, 19, , 20]);
|
|
191
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbSVGText'); })];
|
|
192
|
+
case 18:
|
|
193
|
+
// @ts-ignore
|
|
194
|
+
moduleData = _b.sent();
|
|
195
|
+
return [3 /*break*/, 20];
|
|
196
|
+
case 19:
|
|
197
|
+
e_7 = _b.sent();
|
|
198
|
+
console.log('import:' + sTypeName + 'error!', e_7);
|
|
199
|
+
return [3 /*break*/, 20];
|
|
200
|
+
case 20: return [3 /*break*/, 29];
|
|
201
|
+
case 21:
|
|
202
|
+
_b.trys.push([21, 23, , 24]);
|
|
203
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbPolyline'); })];
|
|
204
|
+
case 22:
|
|
205
|
+
// @ts-ignore
|
|
206
|
+
moduleData = _b.sent();
|
|
207
|
+
return [3 /*break*/, 24];
|
|
208
|
+
case 23:
|
|
209
|
+
e_8 = _b.sent();
|
|
210
|
+
console.log('import:' + sTypeName + 'error!', e_8);
|
|
211
|
+
return [3 /*break*/, 24];
|
|
212
|
+
case 24: return [3 /*break*/, 29];
|
|
213
|
+
case 25:
|
|
214
|
+
_b.trys.push([25, 27, , 28]);
|
|
215
|
+
return [4 /*yield*/, Promise.resolve().then(function () { return require('../../MxModule/MxDbAlignedDimension'); })];
|
|
216
|
+
case 26:
|
|
217
|
+
// @ts-ignore
|
|
218
|
+
moduleData = _b.sent();
|
|
219
|
+
return [3 /*break*/, 28];
|
|
220
|
+
case 27:
|
|
221
|
+
e_9 = _b.sent();
|
|
222
|
+
console.log('import:' + sTypeName + 'error!', e_9);
|
|
223
|
+
return [3 /*break*/, 28];
|
|
224
|
+
case 28: return [3 /*break*/, 29];
|
|
225
|
+
case 29:
|
|
226
|
+
if (moduleData) {
|
|
227
|
+
if (moduleData.default) {
|
|
228
|
+
return [2 /*return*/, moduleData.default];
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
return [2 /*return*/, moduleData];
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
else {
|
|
235
|
+
console.log('mx dynmac load:' + sTypeName + ' failed');
|
|
236
|
+
return [2 /*return*/, null];
|
|
237
|
+
}
|
|
238
|
+
return [2 /*return*/];
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
exports.dynamicCreateMxObject = dynamicCreateMxObject;
|
|
@@ -1 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.formatString = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* 格式化字符串
|
|
6
|
+
* @param str 字符串 {1} 替换为 ...val对应坐标下的值
|
|
7
|
+
* @param ...val 剩余参数 对应坐标值
|
|
8
|
+
* @returns 格式化后的字符串
|
|
9
|
+
*/
|
|
10
|
+
function formatString(str) {
|
|
11
|
+
var val = [];
|
|
12
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
13
|
+
val[_i - 1] = arguments[_i];
|
|
14
|
+
}
|
|
15
|
+
for (var index = 0; index < val.length; index++) {
|
|
16
|
+
str = str.replace("{".concat(index, "}"), val[index]);
|
|
17
|
+
}
|
|
18
|
+
return str;
|
|
19
|
+
}
|
|
20
|
+
exports.formatString = formatString;
|
|
@@ -1 +1,17 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.objectMethodProxy = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* JS对象方法代理
|
|
6
|
+
* @param obj 代理对象
|
|
7
|
+
* @param proxyObj 需要代理的对象
|
|
8
|
+
* @param name 需要代理的方法属性名称
|
|
9
|
+
*/
|
|
10
|
+
function objectMethodProxy(obj, proxyObj, name) {
|
|
11
|
+
Object.defineProperty(obj, name, {
|
|
12
|
+
get: function () {
|
|
13
|
+
return proxyObj[name];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
exports.objectMethodProxy = objectMethodProxy;
|
|
@@ -1 +1,124 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.computeRectPoints = exports.getToGenerateRoundedCorners = exports.repairGeometryFaceVertexUvs = exports.setGeometrPostion = void 0;
|
|
4
|
+
var three_1 = require("three");
|
|
5
|
+
/**
|
|
6
|
+
* 移动geometry坐标。
|
|
7
|
+
* @param geometry Three的Geometry对象
|
|
8
|
+
* @param pos 移动后的坐标
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* setGeometryPostion(new THREE.Geometry(), new THREE.Vector3(3,10,0))
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
*/
|
|
15
|
+
function setGeometrPostion(geometry, pos) {
|
|
16
|
+
for (var i = 0; i < geometry.vertices.length; i++) {
|
|
17
|
+
geometry.vertices[i].x += pos.x;
|
|
18
|
+
geometry.vertices[i].y += pos.y;
|
|
19
|
+
geometry.vertices[i].z += pos.z;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.setGeometrPostion = setGeometrPostion;
|
|
23
|
+
/**
|
|
24
|
+
* 生成圆角时修复纹理对应的 uvs
|
|
25
|
+
* @param geometry 几何体
|
|
26
|
+
* */
|
|
27
|
+
function repairGeometryFaceVertexUvs(geometry) {
|
|
28
|
+
geometry.computeBoundingBox();
|
|
29
|
+
var min = geometry.boundingBox.min;
|
|
30
|
+
var max = geometry.boundingBox.max;
|
|
31
|
+
var offset = new three_1.Vector2(0 - min.x, 0 - min.y);
|
|
32
|
+
var size = new three_1.Vector2(max.x - min.x, max.y - min.y);
|
|
33
|
+
geometry.faceVertexUvs[0] = [];
|
|
34
|
+
var faces = geometry.faces;
|
|
35
|
+
for (var i = 0; i < faces.length; i++) {
|
|
36
|
+
var face = faces[i];
|
|
37
|
+
var v1 = geometry.vertices[face.a];
|
|
38
|
+
var v2 = geometry.vertices[face.b];
|
|
39
|
+
var v3 = geometry.vertices[face.c];
|
|
40
|
+
geometry.faceVertexUvs[0].push([
|
|
41
|
+
new three_1.Vector2((v1.x + offset.x) / size.x, (v1.y + offset.y) / size.y),
|
|
42
|
+
new three_1.Vector2((v2.x + offset.x) / size.x, (v2.y + offset.y) / size.y),
|
|
43
|
+
new three_1.Vector2((v3.x + offset.x) / size.x, (v3.y + offset.y) / size.y)
|
|
44
|
+
]);
|
|
45
|
+
}
|
|
46
|
+
geometry.uvsNeedUpdate = true;
|
|
47
|
+
return geometry;
|
|
48
|
+
}
|
|
49
|
+
exports.repairGeometryFaceVertexUvs = repairGeometryFaceVertexUvs;
|
|
50
|
+
/**
|
|
51
|
+
* 获取生成圆角的points定点位置
|
|
52
|
+
* @param points 生成圆角前
|
|
53
|
+
* @param cornerRadius 圆角值
|
|
54
|
+
* @param isClose 生成圆角的图形是否是闭合的
|
|
55
|
+
* */
|
|
56
|
+
function getToGenerateRoundedCorners(points, cornerRadius, isClose) {
|
|
57
|
+
if (isClose === void 0) { isClose = true; }
|
|
58
|
+
if (cornerRadius.length > 0) {
|
|
59
|
+
var curve = new three_1.CurvePath();
|
|
60
|
+
if (!isClose) {
|
|
61
|
+
points.push(points[0]);
|
|
62
|
+
}
|
|
63
|
+
for (var i = 0; i < points.length - 1; i++) {
|
|
64
|
+
//作为拐弯的弧度
|
|
65
|
+
var R = cornerRadius[i] || 0;
|
|
66
|
+
if (i === 0 && !isClose) {
|
|
67
|
+
var dir = points[0].clone().sub(points[1]);
|
|
68
|
+
dir.normalize();
|
|
69
|
+
var p2_1 = points[1].clone();
|
|
70
|
+
p2_1.add(dir.clone().multiplyScalar(R));
|
|
71
|
+
var line = new three_1.LineCurve3(points[0], p2_1);
|
|
72
|
+
curve.curves.push(line);
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
// 计算三个点构成的两条线的方向
|
|
76
|
+
var dir1 = !isClose || points[i - 1]
|
|
77
|
+
? points[i - 1].clone().sub(points[i])
|
|
78
|
+
: points[points.length - 1].clone().sub(points[0]);
|
|
79
|
+
dir1.normalize();
|
|
80
|
+
/* istanbul ignore next */
|
|
81
|
+
var dir2 = !isClose || points[i + 1]
|
|
82
|
+
? points[i + 1].clone().sub(points[i])
|
|
83
|
+
: points[1].clone().sub(points[0]);
|
|
84
|
+
dir2.normalize();
|
|
85
|
+
var p12_ = points[i].clone();
|
|
86
|
+
p12_.add(dir1.clone().multiplyScalar(R));
|
|
87
|
+
var p1 = points[i].clone().add(dir1.clone().multiplyScalar(R));
|
|
88
|
+
var p2 = points[i].clone();
|
|
89
|
+
var p3 = points[i].clone().add(dir2.clone().multiplyScalar(R));
|
|
90
|
+
var beziercurve = new three_1.QuadraticBezierCurve3(p1, p2, p3);
|
|
91
|
+
if (i === points.length - 2) {
|
|
92
|
+
var line1 = points[i].clone();
|
|
93
|
+
line1.add(dir2.clone().multiplyScalar(R));
|
|
94
|
+
var line2 = points[i + 1].clone();
|
|
95
|
+
isClose ? line2.add(dir2.clone().multiplyScalar(-R)) : line2.add(dir2.clone());
|
|
96
|
+
var line = new three_1.LineCurve3(line1, line2);
|
|
97
|
+
curve.curves.push(beziercurve, line);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// 把转换曲线和直线插入曲线中
|
|
101
|
+
curve.curves.push(beziercurve);
|
|
102
|
+
}
|
|
103
|
+
if (i === 0) {
|
|
104
|
+
points.push(points[0]);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
return curve.getPoints(50);
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
return points;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.getToGenerateRoundedCorners = getToGenerateRoundedCorners;
|
|
114
|
+
/**
|
|
115
|
+
* 计算矩形点位
|
|
116
|
+
* @param pt1 点1
|
|
117
|
+
* @param pt3 点3
|
|
118
|
+
* */
|
|
119
|
+
function computeRectPoints(pt1, pt3) {
|
|
120
|
+
var pt2 = pt1.clone().set(pt3.x, pt1.y, pt3.z);
|
|
121
|
+
var pt4 = pt3.clone().set(pt1.x, pt3.y, pt1.z);
|
|
122
|
+
return [pt1, pt2, pt3, pt4];
|
|
123
|
+
}
|
|
124
|
+
exports.computeRectPoints = computeRectPoints;
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
package/dist/lib/types/MxFun.js
CHANGED
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** @module McGiWorldDraw*/
|
|
2
2
|
import McGiWorldDrawType from '../McGiWorldDrawType';
|
|
3
3
|
import MxDrawObject from '../MxDrawObject';
|
|
4
|
+
import { ColorType } from '../MxType/MxType';
|
|
4
5
|
/**
|
|
5
6
|
* McGiWorldDraw 用于构建一个动态绘制回调对象的规范接口
|
|
6
7
|
* @abstract 是 {@link MxDbEntity.worldDraw }必须实现的抽象回调方法中的回调对象 通过回调对象完成一些动态绘制任务
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/** @module MrxDbgUiPrPointClass */
|
|
2
2
|
import { MrxDbgUiPrBaseReturn } from '../../types/MrxDbgUiPrPoint';
|
|
3
|
+
import McEdGetPointWorldDrawObject from '../McEdGetPointWorldDrawObject';
|
|
3
4
|
/**
|
|
4
5
|
* MrxDbgUiPrPoint 用于构建一个取点对象
|
|
5
6
|
* @example ```typescript
|
|
@@ -46,7 +47,7 @@ export default class MrxDbgUiPrPoint {
|
|
|
46
47
|
* @param pDraw {@link McEdGetPointWorldDrawObject | 动态绘制调用对象}
|
|
47
48
|
* @returns void
|
|
48
49
|
*/
|
|
49
|
-
setUserDraw(pDraw:
|
|
50
|
+
setUserDraw(pDraw: McEdGetPointWorldDrawObject | ((currentPoint: THREE.Vector3, pWorldDraw: McEdGetPointWorldDrawObject) => void)): void;
|
|
50
51
|
/**
|
|
51
52
|
* 得以获取的点对象,Three.js坐标
|
|
52
53
|
* @returns 点对象 THREE.THREE.Vector3
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/** @module MxDbEntity*/
|
|
2
2
|
import McGiWorldDraw from '../McGiWorldDraw';
|
|
3
3
|
import MxDrawObject from '../MxDrawObject';
|
|
4
|
+
import { ColorType } from '../MxType/MxType';
|
|
4
5
|
/**
|
|
5
6
|
* MxDbEntity 用于构建一个自定义对象的抽象类(该类无法实例化 请通过继承的方式对其抽象方法进行实现)
|
|
6
7
|
* @description MxDbEntity 属于 abstract class(抽象类) 主要用途是通过继承这个类实现一个用于动态绘制的回调对象
|
|
@@ -6,8 +6,8 @@ import MxDbEntity from '../MxDbEntity';
|
|
|
6
6
|
* MxDbLine 直线对象.
|
|
7
7
|
*/
|
|
8
8
|
export default class MxDbLine extends MxDbEntity {
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
pt1: THREE.Vector3;
|
|
10
|
+
pt2: THREE.Vector3;
|
|
11
11
|
getTypeName(): string;
|
|
12
12
|
worldDraw(pWorldDraw: McGiWorldDraw): void;
|
|
13
13
|
setPoint1(pt1: THREE.Vector3): void;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** @module MxDbPolyline*/
|
|
2
|
+
import * as THREE from 'three';
|
|
3
|
+
import McGiWorldDraw from '../McGiWorldDraw';
|
|
4
|
+
import MxDbEntity from '../MxDbEntity';
|
|
5
|
+
/**
|
|
6
|
+
* MxDbPolyline 多义线对象.
|
|
7
|
+
*/
|
|
8
|
+
export default class MxDbPolyline extends MxDbEntity {
|
|
9
|
+
points: THREE.Vector3[];
|
|
10
|
+
getTypeName(): string;
|
|
11
|
+
worldDraw(pWorldDraw: McGiWorldDraw): void;
|
|
12
|
+
getGripPoints(): THREE.Vector3[];
|
|
13
|
+
moveGripPointsAt(index: number, offset: THREE.Vector3): boolean;
|
|
14
|
+
create(): MxDbEntity;
|
|
15
|
+
dwgIn(obj: any): boolean;
|
|
16
|
+
dwgOut(obj: any): object;
|
|
17
|
+
addVertexAt(pt: THREE.Vector3): void;
|
|
18
|
+
numVerts(): number;
|
|
19
|
+
getPointAt(index: number): THREE.Vector3 | null;
|
|
20
|
+
setPointAt(index: number, pt: THREE.Vector3): boolean;
|
|
21
|
+
}
|
|
@@ -415,7 +415,7 @@ export default class MxFun {
|
|
|
415
415
|
*
|
|
416
416
|
* ```
|
|
417
417
|
*/
|
|
418
|
-
loadImageMaterial(imageUrlPath: string, callResult: (material: MeshLambertMaterial) => void):
|
|
418
|
+
loadImageMaterial(imageUrlPath: string, callResult: (material: MeshLambertMaterial) => void | null): Promise<MeshLambertMaterial | null>;
|
|
419
419
|
/**
|
|
420
420
|
* 判断点是否在一个闭合的多边形区域。
|
|
421
421
|
* @param p
|
|
@@ -490,6 +490,11 @@ export default class MxFun {
|
|
|
490
490
|
* @param msCmdText 用户输入的数据 input输入框输入的文本信息
|
|
491
491
|
* @param keyCode 按键Code input输入框的onKeydown事件的event事件对象的keyCode属性
|
|
492
492
|
* */
|
|
493
|
-
setCommandLineInputData(msCmdText: string, keyCode:
|
|
493
|
+
setCommandLineInputData(msCmdText: string, keyCode: number): void;
|
|
494
|
+
/**
|
|
495
|
+
* 监听指针(鼠标光标)移动变化的坐标信息
|
|
496
|
+
* @parma callback 回调函数中返回坐标信息
|
|
497
|
+
* */
|
|
498
|
+
listenForCoordTip(callback: (coordTip: string) => void): void;
|
|
494
499
|
}
|
|
495
500
|
export {};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Vector3, Line, Object3D, Points, Sprite, Mesh, MeshBasicMaterial } from 'three';
|
|
2
|
+
declare type ColorType = number | string | THREE.Color;
|
|
2
3
|
/**
|
|
3
4
|
* MxThreeJS 模块
|
|
4
5
|
* ##### 使用说明:
|
|
@@ -165,3 +166,4 @@ export default class MxThreeJS {
|
|
|
165
166
|
*/
|
|
166
167
|
loadSVG(url: string, color?: ColorType, callResult?: (threeobj: Object3D, aryMeterial: Array<MeshBasicMaterial>) => void): Promise<THREE.Object3D | null>;
|
|
167
168
|
}
|
|
169
|
+
export {};
|
|
@@ -61,7 +61,7 @@ declare class MxDynamicInput {
|
|
|
61
61
|
} | undefined;
|
|
62
62
|
}
|
|
63
63
|
export declare class MxVueInterface {
|
|
64
|
-
mSetCoordFun: ((
|
|
64
|
+
mSetCoordFun: ((coordTip: string) => void) | undefined;
|
|
65
65
|
mUpdateCursorFun: (() => void) | undefined;
|
|
66
66
|
mOnKeydownEvent: ((arg0: any) => void) | undefined;
|
|
67
67
|
mCursorType: string;
|
|
@@ -81,10 +81,10 @@ export declare class MxVueInterface {
|
|
|
81
81
|
mTitleButtonBarData: any;
|
|
82
82
|
mLayerComboxData: any;
|
|
83
83
|
mColorComboxData: any;
|
|
84
|
-
mountSetCoordFun: (fun: ((
|
|
84
|
+
mountSetCoordFun: (fun: ((coordTip: string) => void) | undefined) => void;
|
|
85
85
|
mountUpdateCursorFun: (fun: (() => void) | undefined) => void;
|
|
86
86
|
mountKeydownEvent: (fun: ((arg0: any) => void) | undefined) => void;
|
|
87
|
-
onKeydown: (keyCode:
|
|
87
|
+
onKeydown: (keyCode: number) => void;
|
|
88
88
|
setTipCoord: (str: any) => void;
|
|
89
89
|
getCursorType: () => string;
|
|
90
90
|
setCursorType: (curtype: string) => void;
|
|
@@ -6,12 +6,18 @@ export default class Store<T> {
|
|
|
6
6
|
mutations: {
|
|
7
7
|
[x: string | number]: Function;
|
|
8
8
|
};
|
|
9
|
-
state:
|
|
10
|
-
[x: string | number]: any;
|
|
11
|
-
};
|
|
9
|
+
state: T;
|
|
12
10
|
status: string;
|
|
13
11
|
events: PubSub;
|
|
14
|
-
constructor(params:
|
|
12
|
+
constructor(params: {
|
|
13
|
+
state: T;
|
|
14
|
+
mutations: {
|
|
15
|
+
[x: string | number]: Function;
|
|
16
|
+
};
|
|
17
|
+
actions: {
|
|
18
|
+
[x: string | number]: Function;
|
|
19
|
+
};
|
|
20
|
+
});
|
|
15
21
|
/**
|
|
16
22
|
* 调用active方法 触发修改状态前的异步行为
|
|
17
23
|
* @param actionKey 方法名称
|