mxcad 1.0.392 → 1.0.394
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/mxcad.d.ts +63 -2
- package/dist/mxcad.es.js +418 -2
- package/dist/mxcad.umd.js +3 -3
- package/dist/wasm/2d/mxdrawassembly_min.js +2148 -2147
- package/dist/wasm/2d/mxdrawassembly_min.wasm +0 -0
- package/dist/wasm/2d-st/mxdrawassembly_min.js +2147 -2146
- package/dist/wasm/2d-st/mxdrawassembly_minst.wasm +0 -0
- package/dist/wasm/2d-x64/mxdrawassembly_min.js +1700 -1700
- package/dist/wasm/2d-x64/mxdrawassembly_min.wasm +0 -0
- package/dist/wasm/2d-x64-st/mxdrawassembly_min.js +1645 -1645
- package/dist/wasm/2d-x64-st/mxdrawassembly_minst.wasm +0 -0
- package/package.json +2 -1
package/dist/mxcad.d.ts
CHANGED
|
@@ -634,6 +634,8 @@ export declare class McGePoint3d {
|
|
|
634
634
|
* ```
|
|
635
635
|
*/
|
|
636
636
|
toVector3(): THREE.Vector3;
|
|
637
|
+
get vector3(): THREE.Vector3;
|
|
638
|
+
set vector3(val: THREE.Vector3);
|
|
637
639
|
/** 将three.js 的向量设置成点
|
|
638
640
|
* @example
|
|
639
641
|
* ```ts
|
|
@@ -912,6 +914,9 @@ export declare class McGeVector3d {
|
|
|
912
914
|
* ```
|
|
913
915
|
* */
|
|
914
916
|
toVector3(): THREE.Vector3;
|
|
917
|
+
setFromVector3(val: THREE.Vector3): this;
|
|
918
|
+
get vector3(): THREE.Vector3;
|
|
919
|
+
set vector3(val: THREE.Vector3);
|
|
915
920
|
/**
|
|
916
921
|
* 复制对象的值
|
|
917
922
|
* @param val 三维向量对象
|
|
@@ -1111,6 +1116,13 @@ export declare class McGeVector3d {
|
|
|
1111
1116
|
* */
|
|
1112
1117
|
mult(val: number): this;
|
|
1113
1118
|
/**
|
|
1119
|
+
* 使用矩阵变换该向量
|
|
1120
|
+
* @param leftSide 变换矩阵
|
|
1121
|
+
* @returns 变换后的向量对象
|
|
1122
|
+
* @example
|
|
1123
|
+
*/
|
|
1124
|
+
transformBy(leftSide: McGeMatrix3d): this;
|
|
1125
|
+
/**
|
|
1114
1126
|
* 获取或设置向量 X 坐标。
|
|
1115
1127
|
* @param val x轴坐标
|
|
1116
1128
|
* @example
|
|
@@ -1404,6 +1416,15 @@ export declare class McGeMatrix3d {
|
|
|
1404
1416
|
* ```
|
|
1405
1417
|
*/
|
|
1406
1418
|
getDatas(): string;
|
|
1419
|
+
setDatas(str: string): boolean;
|
|
1420
|
+
/**
|
|
1421
|
+
* 矩阵定义数据
|
|
1422
|
+
* @example
|
|
1423
|
+
* ```ts
|
|
1424
|
+
* ```
|
|
1425
|
+
*/
|
|
1426
|
+
get matrix4(): THREE.Matrix4;
|
|
1427
|
+
set matrix4(mat: THREE.Matrix4);
|
|
1407
1428
|
/**
|
|
1408
1429
|
* 返回THREE.Matrix4
|
|
1409
1430
|
* @example
|
|
@@ -2029,7 +2050,7 @@ export declare class McGeBound {
|
|
|
2029
2050
|
*/
|
|
2030
2051
|
addPoints(pts: McGePoint3dArray | McGePoint3d[]): void;
|
|
2031
2052
|
}
|
|
2032
|
-
/** 坐标转换类型
|
|
2053
|
+
/** 坐标转换类型 ,该类只是为我们MxCAD的兼容的代码的调用,不会向用户导出*/
|
|
2033
2054
|
export declare class MxCoordConvertType {
|
|
2034
2055
|
/** 文档坐标转cad坐标
|
|
2035
2056
|
* @param pt 三维点的对象
|
|
@@ -2103,7 +2124,7 @@ export declare class MxCoordConvertType {
|
|
|
2103
2124
|
*/
|
|
2104
2125
|
cad2doc2(x: number, y: number, z: number): THREE.Vector3;
|
|
2105
2126
|
}
|
|
2106
|
-
/**
|
|
2127
|
+
/** 提供坐标转换方法,该类只是为我们MxCAD的兼容的代码的调用,不会向用户导出 */
|
|
2107
2128
|
export declare let MxCoordConvert: MxCoordConvertType;
|
|
2108
2129
|
/**
|
|
2109
2130
|
* 检索一个CAD(计算机辅助设计)过滤器
|
|
@@ -12014,6 +12035,45 @@ export declare class McObject {
|
|
|
12014
12035
|
* ```
|
|
12015
12036
|
*/
|
|
12016
12037
|
protected creaeCallId(): number;
|
|
12038
|
+
/** cad坐标转绘图修正的小坐标系
|
|
12039
|
+
* @param pt 点的对象
|
|
12040
|
+
*/
|
|
12041
|
+
cadToSmallcoord(pt: McGePoint3d): McGePoint3d;
|
|
12042
|
+
/** 绘图修正的小坐标系转cad坐标
|
|
12043
|
+
* @param pt 点的对象
|
|
12044
|
+
*/
|
|
12045
|
+
smallcoordToCad(pt: McGePoint3d): McGePoint3d;
|
|
12046
|
+
viewCoord2Cad(pt: McGePoint3d): McGePoint3d;
|
|
12047
|
+
/**
|
|
12048
|
+
*CAD坐标到视区坐标.
|
|
12049
|
+
* @returns number
|
|
12050
|
+
* @example
|
|
12051
|
+
* ```typescript
|
|
12052
|
+
*
|
|
12053
|
+
*
|
|
12054
|
+
* ```
|
|
12055
|
+
*/
|
|
12056
|
+
cadCoord2View(pt: McGePoint3d): McGePoint3d;
|
|
12057
|
+
/**
|
|
12058
|
+
*CAD长度到视区长度
|
|
12059
|
+
* @returns number
|
|
12060
|
+
* @example
|
|
12061
|
+
* ```typescript
|
|
12062
|
+
*
|
|
12063
|
+
*
|
|
12064
|
+
* ```
|
|
12065
|
+
*/
|
|
12066
|
+
cadCoordLong2View(l: number): number;
|
|
12067
|
+
/**
|
|
12068
|
+
*视区长度到CAD长度
|
|
12069
|
+
* @returns number
|
|
12070
|
+
* @example
|
|
12071
|
+
* ```typescript
|
|
12072
|
+
*
|
|
12073
|
+
*
|
|
12074
|
+
* ```
|
|
12075
|
+
*/
|
|
12076
|
+
viewCoordLong2Cad(l: number): number;
|
|
12017
12077
|
/**
|
|
12018
12078
|
* 得到临时绘制模块
|
|
12019
12079
|
* @example
|
|
@@ -16544,6 +16604,7 @@ export declare function Mx_Erase(): Promise<void>;
|
|
|
16544
16604
|
* 绘制矩形
|
|
16545
16605
|
*/
|
|
16546
16606
|
export declare const drawRectang: () => Promise<void>;
|
|
16607
|
+
export declare function MxRegistCommand(): void;
|
|
16547
16608
|
/**
|
|
16548
16609
|
* 将数据进行 Base64 编码
|
|
16549
16610
|
* @param str 目标数据
|
package/dist/mxcad.es.js
CHANGED
|
@@ -14596,7 +14596,7 @@ win.McDrawObjectEvent_asciiToUTF8 = function (hexstr) {
|
|
|
14596
14596
|
return MxG2312Obj.decodeFromGb2312Imp(hexstr);
|
|
14597
14597
|
};
|
|
14598
14598
|
|
|
14599
|
-
const version$1 = "1.0.
|
|
14599
|
+
const version$1 = "1.0.393";
|
|
14600
14600
|
|
|
14601
14601
|
var isSharedArrayBuffer = "SharedArrayBuffer" in window;
|
|
14602
14602
|
var isCdn = document.currentScript && /unpkg\.com\/mxcad/.test(document.currentScript.src);
|
|
@@ -22217,6 +22217,40 @@ var McObject = /*#__PURE__*/function () {
|
|
|
22217
22217
|
value: function creaeCallId() {
|
|
22218
22218
|
return Math.round(Math.random() * 1e7);
|
|
22219
22219
|
}
|
|
22220
|
+
}, {
|
|
22221
|
+
key: "cadToSmallcoord",
|
|
22222
|
+
value: function cadToSmallcoord(pt) {
|
|
22223
|
+
var v = this.mxdraw.toSmallcoord2(pt.x, pt.y, pt.z);
|
|
22224
|
+
return new McGePoint3d(v.x, v.y, v.z);
|
|
22225
|
+
}
|
|
22226
|
+
}, {
|
|
22227
|
+
key: "smallcoordToCad",
|
|
22228
|
+
value: function smallcoordToCad(pt) {
|
|
22229
|
+
var v = this.mxdraw.fromSmallcoord2(pt.x, pt.y, pt.z);
|
|
22230
|
+
return new McGePoint3d(v.x, v.y, v.z);
|
|
22231
|
+
}
|
|
22232
|
+
}, {
|
|
22233
|
+
key: "viewCoord2Cad",
|
|
22234
|
+
value: function viewCoord2Cad(pt) {
|
|
22235
|
+
var v = this.mxdraw.viewCoord2Cad(pt.x, pt.y, pt.z);
|
|
22236
|
+
return new McGePoint3d(v.x, v.y, v.z);
|
|
22237
|
+
}
|
|
22238
|
+
}, {
|
|
22239
|
+
key: "cadCoord2View",
|
|
22240
|
+
value: function cadCoord2View(pt) {
|
|
22241
|
+
var v = this.mxdraw.cadCoord2View(pt.x, pt.y, pt.z);
|
|
22242
|
+
return new McGePoint3d(v.x, v.y, v.z);
|
|
22243
|
+
}
|
|
22244
|
+
}, {
|
|
22245
|
+
key: "cadCoordLong2View",
|
|
22246
|
+
value: function cadCoordLong2View(l) {
|
|
22247
|
+
return this.mxdraw.cadCoordLong2View(l);
|
|
22248
|
+
}
|
|
22249
|
+
}, {
|
|
22250
|
+
key: "viewCoordLong2Cad",
|
|
22251
|
+
value: function viewCoordLong2Cad(l) {
|
|
22252
|
+
return this.mxdraw.viewCoordLong2Cad(l);
|
|
22253
|
+
}
|
|
22220
22254
|
}, {
|
|
22221
22255
|
key: "getTempDraw",
|
|
22222
22256
|
value: function getTempDraw() {
|
|
@@ -24518,6 +24552,16 @@ var McGePoint3d = /*#__PURE__*/function () {
|
|
|
24518
24552
|
value: function toVector3() {
|
|
24519
24553
|
return new THREE.Vector3(this.imp.x, this.imp.y, this.imp.z);
|
|
24520
24554
|
}
|
|
24555
|
+
}, {
|
|
24556
|
+
key: "vector3",
|
|
24557
|
+
get: function get() {
|
|
24558
|
+
return new THREE.Vector3(this.imp.x, this.imp.y, this.imp.z);
|
|
24559
|
+
},
|
|
24560
|
+
set: function set(val) {
|
|
24561
|
+
this.imp.x = val.x;
|
|
24562
|
+
this.imp.y = val.y;
|
|
24563
|
+
this.imp.z = val.z;
|
|
24564
|
+
}
|
|
24521
24565
|
}, {
|
|
24522
24566
|
key: "setFromVector3",
|
|
24523
24567
|
value: function setFromVector3(val) {
|
|
@@ -24637,6 +24681,24 @@ var McGeVector3d = /*#__PURE__*/function () {
|
|
|
24637
24681
|
value: function toVector3() {
|
|
24638
24682
|
return new THREE.Vector3(this.imp.x, this.imp.y, this.imp.z);
|
|
24639
24683
|
}
|
|
24684
|
+
}, {
|
|
24685
|
+
key: "setFromVector3",
|
|
24686
|
+
value: function setFromVector3(val) {
|
|
24687
|
+
this.imp.x = val.x;
|
|
24688
|
+
this.imp.y = val.y;
|
|
24689
|
+
this.imp.z = val.z;
|
|
24690
|
+
return this;
|
|
24691
|
+
}
|
|
24692
|
+
}, {
|
|
24693
|
+
key: "vector3",
|
|
24694
|
+
get: function get() {
|
|
24695
|
+
return new THREE.Vector3(this.imp.x, this.imp.y, this.imp.z);
|
|
24696
|
+
},
|
|
24697
|
+
set: function set(val) {
|
|
24698
|
+
this.imp.x = val.x;
|
|
24699
|
+
this.imp.y = val.y;
|
|
24700
|
+
this.imp.z = val.z;
|
|
24701
|
+
}
|
|
24640
24702
|
}, {
|
|
24641
24703
|
key: "copy",
|
|
24642
24704
|
value: function copy(val) {
|
|
@@ -24735,6 +24797,12 @@ var McGeVector3d = /*#__PURE__*/function () {
|
|
|
24735
24797
|
this.imp.mult(val);
|
|
24736
24798
|
return this;
|
|
24737
24799
|
}
|
|
24800
|
+
}, {
|
|
24801
|
+
key: "transformBy",
|
|
24802
|
+
value: function transformBy(leftSide) {
|
|
24803
|
+
this.imp.transformBy(leftSide.imp);
|
|
24804
|
+
return this;
|
|
24805
|
+
}
|
|
24738
24806
|
}, {
|
|
24739
24807
|
key: "x",
|
|
24740
24808
|
get: function get() {
|
|
@@ -24893,6 +24961,19 @@ var McGeMatrix3d = /*#__PURE__*/function () {
|
|
|
24893
24961
|
value: function getDatas() {
|
|
24894
24962
|
return this.imp.getDatas();
|
|
24895
24963
|
}
|
|
24964
|
+
}, {
|
|
24965
|
+
key: "setDatas",
|
|
24966
|
+
value: function setDatas(str) {
|
|
24967
|
+
return this.imp.setDatas(str);
|
|
24968
|
+
}
|
|
24969
|
+
}, {
|
|
24970
|
+
key: "matrix4",
|
|
24971
|
+
get: function get() {
|
|
24972
|
+
return this.toMatrix4();
|
|
24973
|
+
},
|
|
24974
|
+
set: function set(mat) {
|
|
24975
|
+
this.imp.setDatas(JSON.stringify(mat.toArray()));
|
|
24976
|
+
}
|
|
24896
24977
|
}, {
|
|
24897
24978
|
key: "toMatrix4",
|
|
24898
24979
|
value: function toMatrix4() {
|
|
@@ -40923,6 +41004,332 @@ MxFun.on("init", function () {
|
|
|
40923
41004
|
MxFun.addCommand("Mx_Ellipse", drawMxDbEllipse);
|
|
40924
41005
|
});
|
|
40925
41006
|
|
|
41007
|
+
function Mx_Ucs() {
|
|
41008
|
+
return _Mx_Ucs.apply(this, arguments);
|
|
41009
|
+
}
|
|
41010
|
+
function _Mx_Ucs() {
|
|
41011
|
+
_Mx_Ucs = _asyncToGenerator(/*#__PURE__*/regenerator.mark(function _callee() {
|
|
41012
|
+
var mxcad, getUcsOriginPoint, originPt, ret, dLen, ucsToWcsMat, getAngle, angle, angleRet;
|
|
41013
|
+
return regenerator.wrap(function _callee$(_context) {
|
|
41014
|
+
while (1) switch (_context.prev = _context.next) {
|
|
41015
|
+
case 0:
|
|
41016
|
+
mxcad = MxCpp.getCurrentMxCAD();
|
|
41017
|
+
getUcsOriginPoint = new MxCADUiPrPoint();
|
|
41018
|
+
getUcsOriginPoint.setMessage("\u6307\u5B9A UCS \u7684\u539F\u70B9");
|
|
41019
|
+
getUcsOriginPoint.setKeyWords("[\u5BF9\u8C61(O)]<\u4E16\u754C>");
|
|
41020
|
+
getUcsOriginPoint.clearLastInputPoint();
|
|
41021
|
+
_context.next = 7;
|
|
41022
|
+
return getUcsOriginPoint.go();
|
|
41023
|
+
case 7:
|
|
41024
|
+
originPt = _context.sent;
|
|
41025
|
+
ret = getUcsOriginPoint.getStatus();
|
|
41026
|
+
if (!(ret === MrxDbgUiPrBaseReturn.kNone)) {
|
|
41027
|
+
_context.next = 13;
|
|
41028
|
+
break;
|
|
41029
|
+
}
|
|
41030
|
+
mxcad.database.ucsMatrix = McGeMatrix3d.kIdentity;
|
|
41031
|
+
MxFun.acutPrintf("\n \u8BBE\u7F6E\u6210\u4E16\u754C\u5750\u6807\u7CFB\u6210\u529F");
|
|
41032
|
+
return _context.abrupt("return");
|
|
41033
|
+
case 13:
|
|
41034
|
+
if (!(ret === MrxDbgUiPrBaseReturn.kKeyWord)) {
|
|
41035
|
+
_context.next = 19;
|
|
41036
|
+
break;
|
|
41037
|
+
}
|
|
41038
|
+
if (!getUcsOriginPoint.isKeyWordPicked("O")) {
|
|
41039
|
+
_context.next = 18;
|
|
41040
|
+
break;
|
|
41041
|
+
}
|
|
41042
|
+
_context.next = 17;
|
|
41043
|
+
return Mx_Ucs_ByObject(mxcad);
|
|
41044
|
+
case 17:
|
|
41045
|
+
return _context.abrupt("return");
|
|
41046
|
+
case 18:
|
|
41047
|
+
return _context.abrupt("return");
|
|
41048
|
+
case 19:
|
|
41049
|
+
if (!originPt) {
|
|
41050
|
+
_context.next = 41;
|
|
41051
|
+
break;
|
|
41052
|
+
}
|
|
41053
|
+
dLen = MxFun.screenCoordLong2Doc(50);
|
|
41054
|
+
ucsToWcsMat = new McGeMatrix3d().setToTranslation(new McGeVector3d(originPt.x, originPt.y, originPt.z));
|
|
41055
|
+
getAngle = new MxCADUiPrAngle();
|
|
41056
|
+
getAngle.setMessage("\u6307\u5B9A X \u8F74\u4E0A\u7684\u70B9\u6216 <\u63A5\u53D7>");
|
|
41057
|
+
getAngle.setBasePt(originPt);
|
|
41058
|
+
getAngle.setUserDraw(function (currentPoint, pWorldDraw) {
|
|
41059
|
+
var mat = ucsToWcsMat.clone().postMultBy(new McGeMatrix3d().setToRotation(currentPoint.sub(originPt).angle(), McGeVector3d.kZAxis, McGePoint3d.kOrigin));
|
|
41060
|
+
var pt1 = new McGePoint3d(0, 0, 0);
|
|
41061
|
+
var pt2 = new McGePoint3d(dLen, 0, 0);
|
|
41062
|
+
var pt3 = new McGePoint3d(0, dLen, 0);
|
|
41063
|
+
pt1.transformBy(mat);
|
|
41064
|
+
pt2.transformBy(mat);
|
|
41065
|
+
pt3.transformBy(mat);
|
|
41066
|
+
pt1 = mxcad.cadToSmallcoord(pt1);
|
|
41067
|
+
pt2 = mxcad.cadToSmallcoord(pt2);
|
|
41068
|
+
pt3 = mxcad.cadToSmallcoord(pt3);
|
|
41069
|
+
var arrowLen = dLen * 0.15;
|
|
41070
|
+
var halfAngle = Math.PI / 12;
|
|
41071
|
+
pWorldDraw.setColor(16711680);
|
|
41072
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt1.x, pt1.y, pt1.z), new THREE.Vector3(pt2.x, pt2.y, pt2.z), void 0, true);
|
|
41073
|
+
var xDir = new McGeVector3d(1, 0, 0);
|
|
41074
|
+
var xPerp = new McGeVector3d(0, 1, 0);
|
|
41075
|
+
xDir.transformBy(mat);
|
|
41076
|
+
xPerp.transformBy(mat);
|
|
41077
|
+
var xArrowBase = new McGePoint3d(pt2.x - arrowLen * xDir.x, pt2.y - arrowLen * xDir.y, pt2.z - arrowLen * xDir.z);
|
|
41078
|
+
var xArrowL = new McGePoint3d(xArrowBase.x + arrowLen * Math.sin(halfAngle) * xPerp.x, xArrowBase.y + arrowLen * Math.sin(halfAngle) * xPerp.y, xArrowBase.z + arrowLen * Math.sin(halfAngle) * xPerp.z);
|
|
41079
|
+
var xArrowR = new McGePoint3d(xArrowBase.x - arrowLen * Math.sin(halfAngle) * xPerp.x, xArrowBase.y - arrowLen * Math.sin(halfAngle) * xPerp.y, xArrowBase.z - arrowLen * Math.sin(halfAngle) * xPerp.z);
|
|
41080
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt2.x, pt2.y, pt2.z), new THREE.Vector3(xArrowL.x, xArrowL.y, xArrowL.z), void 0, true);
|
|
41081
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt2.x, pt2.y, pt2.z), new THREE.Vector3(xArrowR.x, xArrowR.y, xArrowR.z), void 0, true);
|
|
41082
|
+
pWorldDraw.setColor(65280);
|
|
41083
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt1.x, pt1.y, pt1.z), new THREE.Vector3(pt3.x, pt3.y, pt3.z), void 0, true);
|
|
41084
|
+
var yDir = new McGeVector3d(0, 1, 0);
|
|
41085
|
+
var yPerp = new McGeVector3d(-1, 0, 0);
|
|
41086
|
+
yDir.transformBy(mat);
|
|
41087
|
+
yPerp.transformBy(mat);
|
|
41088
|
+
var yArrowBase = new McGePoint3d(pt3.x - arrowLen * yDir.x, pt3.y - arrowLen * yDir.y, pt3.z - arrowLen * yDir.z);
|
|
41089
|
+
var yArrowL = new McGePoint3d(yArrowBase.x + arrowLen * Math.sin(halfAngle) * yPerp.x, yArrowBase.y + arrowLen * Math.sin(halfAngle) * yPerp.y, yArrowBase.z + arrowLen * Math.sin(halfAngle) * yPerp.z);
|
|
41090
|
+
var yArrowR = new McGePoint3d(yArrowBase.x - arrowLen * Math.sin(halfAngle) * yPerp.x, yArrowBase.y - arrowLen * Math.sin(halfAngle) * yPerp.y, yArrowBase.z - arrowLen * Math.sin(halfAngle) * yPerp.z);
|
|
41091
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt3.x, pt3.y, pt3.z), new THREE.Vector3(yArrowL.x, yArrowL.y, yArrowL.z), void 0, true);
|
|
41092
|
+
pWorldDraw.drawLine(new THREE.Vector3(pt3.x, pt3.y, pt3.z), new THREE.Vector3(yArrowR.x, yArrowR.y, yArrowR.z), void 0, true);
|
|
41093
|
+
});
|
|
41094
|
+
_context.next = 28;
|
|
41095
|
+
return getAngle.go();
|
|
41096
|
+
case 28:
|
|
41097
|
+
angle = _context.sent;
|
|
41098
|
+
angleRet = getAngle.getStatus();
|
|
41099
|
+
if (!(angleRet === MrxDbgUiPrBaseReturn.kNone)) {
|
|
41100
|
+
_context.next = 33;
|
|
41101
|
+
break;
|
|
41102
|
+
}
|
|
41103
|
+
_context.next = 38;
|
|
41104
|
+
break;
|
|
41105
|
+
case 33:
|
|
41106
|
+
if (!(angleRet === MrxDbgUiPrBaseReturn.kOk)) {
|
|
41107
|
+
_context.next = 37;
|
|
41108
|
+
break;
|
|
41109
|
+
}
|
|
41110
|
+
ucsToWcsMat.postMultBy(new McGeMatrix3d().setToRotation(angle, McGeVector3d.kZAxis, McGePoint3d.kOrigin));
|
|
41111
|
+
_context.next = 38;
|
|
41112
|
+
break;
|
|
41113
|
+
case 37:
|
|
41114
|
+
return _context.abrupt("return");
|
|
41115
|
+
case 38:
|
|
41116
|
+
mxcad.database.ucsMatrix = ucsToWcsMat;
|
|
41117
|
+
MxFun.acutPrintf("\n \u8BBE\u7F6EUCS\u5750\u6807\u7CFB\u6210\u529F");
|
|
41118
|
+
return _context.abrupt("return");
|
|
41119
|
+
case 41:
|
|
41120
|
+
case "end":
|
|
41121
|
+
return _context.stop();
|
|
41122
|
+
}
|
|
41123
|
+
}, _callee);
|
|
41124
|
+
}));
|
|
41125
|
+
return _Mx_Ucs.apply(this, arguments);
|
|
41126
|
+
}
|
|
41127
|
+
function Mx_Plan() {
|
|
41128
|
+
return _Mx_Plan.apply(this, arguments);
|
|
41129
|
+
}
|
|
41130
|
+
function _Mx_Plan() {
|
|
41131
|
+
_Mx_Plan = _asyncToGenerator(/*#__PURE__*/regenerator.mark(function _callee2() {
|
|
41132
|
+
var mxcad, prKeyword, ret, ucsMatrix, vec, dAng2, dAng, getAngle, _getAngle;
|
|
41133
|
+
return regenerator.wrap(function _callee2$(_context2) {
|
|
41134
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
41135
|
+
case 0:
|
|
41136
|
+
mxcad = MxCpp.getCurrentMxCAD();
|
|
41137
|
+
prKeyword = new MxCADUiPrPoint();
|
|
41138
|
+
prKeyword.setMessage("\u8F93\u5165\u9009\u9879");
|
|
41139
|
+
prKeyword.setKeyWords("[\u5F53\u524D UCS(C)/\u4E16\u754C(W)/\u89D2\u5EA6(A)/\u76F8\u5BF9\u89D2\u5EA6(X)]<\u5F53\u524D UCS>");
|
|
41140
|
+
prKeyword.clearLastInputPoint();
|
|
41141
|
+
_context2.next = 7;
|
|
41142
|
+
return prKeyword.go();
|
|
41143
|
+
case 7:
|
|
41144
|
+
ret = prKeyword.getStatus();
|
|
41145
|
+
if (!(ret === MrxDbgUiPrBaseReturn.kNone || prKeyword.isKeyWordPicked("C"))) {
|
|
41146
|
+
_context2.next = 16;
|
|
41147
|
+
break;
|
|
41148
|
+
}
|
|
41149
|
+
ucsMatrix = mxcad.database.ucsMatrix;
|
|
41150
|
+
vec = McGeVector3d.kXAxis.clone().transformBy(ucsMatrix);
|
|
41151
|
+
dAng2 = vec.angleTo2(McGeVector3d.kXAxis, McGeVector3d.kNegateZAxis);
|
|
41152
|
+
dAng2 = normalizeAngle(dAng2);
|
|
41153
|
+
mxcad.zoomAngle(dAng2);
|
|
41154
|
+
MxFun.acutPrintf("\n \u89C6\u533A\u65CB\u8F6C\u6210\u529F,\u89D2\u5EA6 = " + (dAng2 * 180 / Math.PI).toFixed(2) + " \u5EA6");
|
|
41155
|
+
return _context2.abrupt("return");
|
|
41156
|
+
case 16:
|
|
41157
|
+
if (!(ret !== MrxDbgUiPrBaseReturn.kOk && ret !== MrxDbgUiPrBaseReturn.kKeyWord)) {
|
|
41158
|
+
_context2.next = 18;
|
|
41159
|
+
break;
|
|
41160
|
+
}
|
|
41161
|
+
return _context2.abrupt("return");
|
|
41162
|
+
case 18:
|
|
41163
|
+
dAng = 0;
|
|
41164
|
+
if (!prKeyword.isKeyWordPicked("W")) {
|
|
41165
|
+
_context2.next = 23;
|
|
41166
|
+
break;
|
|
41167
|
+
}
|
|
41168
|
+
dAng = 0;
|
|
41169
|
+
_context2.next = 50;
|
|
41170
|
+
break;
|
|
41171
|
+
case 23:
|
|
41172
|
+
if (!prKeyword.isKeyWordPicked("A")) {
|
|
41173
|
+
_context2.next = 36;
|
|
41174
|
+
break;
|
|
41175
|
+
}
|
|
41176
|
+
getAngle = new MxCADUiPrAngle();
|
|
41177
|
+
getAngle.setMessage("\u8F93\u5165\u89C6\u533A\u65CB\u8F6C\u89D2\u5EA6");
|
|
41178
|
+
_context2.next = 28;
|
|
41179
|
+
return getAngle.go();
|
|
41180
|
+
case 28:
|
|
41181
|
+
_context2.t0 = _context2.sent;
|
|
41182
|
+
if (!(_context2.t0 !== null)) {
|
|
41183
|
+
_context2.next = 33;
|
|
41184
|
+
break;
|
|
41185
|
+
}
|
|
41186
|
+
dAng = -getAngle.value();
|
|
41187
|
+
_context2.next = 34;
|
|
41188
|
+
break;
|
|
41189
|
+
case 33:
|
|
41190
|
+
return _context2.abrupt("return");
|
|
41191
|
+
case 34:
|
|
41192
|
+
_context2.next = 50;
|
|
41193
|
+
break;
|
|
41194
|
+
case 36:
|
|
41195
|
+
if (!prKeyword.isKeyWordPicked("X")) {
|
|
41196
|
+
_context2.next = 49;
|
|
41197
|
+
break;
|
|
41198
|
+
}
|
|
41199
|
+
_getAngle = new MxCADUiPrAngle();
|
|
41200
|
+
_getAngle.setMessage("\u8F93\u5165\u89C6\u533A\u65CB\u8F6C\u89D2\u5EA6");
|
|
41201
|
+
_context2.next = 41;
|
|
41202
|
+
return _getAngle.go();
|
|
41203
|
+
case 41:
|
|
41204
|
+
_context2.t1 = _context2.sent;
|
|
41205
|
+
if (!(_context2.t1 !== null)) {
|
|
41206
|
+
_context2.next = 46;
|
|
41207
|
+
break;
|
|
41208
|
+
}
|
|
41209
|
+
dAng = mxcad.mxdraw.getViewAngle() - _getAngle.value();
|
|
41210
|
+
_context2.next = 47;
|
|
41211
|
+
break;
|
|
41212
|
+
case 46:
|
|
41213
|
+
return _context2.abrupt("return");
|
|
41214
|
+
case 47:
|
|
41215
|
+
_context2.next = 50;
|
|
41216
|
+
break;
|
|
41217
|
+
case 49:
|
|
41218
|
+
return _context2.abrupt("return");
|
|
41219
|
+
case 50:
|
|
41220
|
+
dAng = normalizeAngle(dAng);
|
|
41221
|
+
mxcad.zoomAngle(dAng);
|
|
41222
|
+
MxFun.acutPrintf("\n \u89C6\u533A\u65CB\u8F6C\u6210\u529F,\u89D2\u5EA6 = " + (dAng * 180 / Math.PI).toFixed(2) + " \u5EA6");
|
|
41223
|
+
case 53:
|
|
41224
|
+
case "end":
|
|
41225
|
+
return _context2.stop();
|
|
41226
|
+
}
|
|
41227
|
+
}, _callee2);
|
|
41228
|
+
}));
|
|
41229
|
+
return _Mx_Plan.apply(this, arguments);
|
|
41230
|
+
}
|
|
41231
|
+
function normalizeAngle(angle) {
|
|
41232
|
+
var twoPI = 2 * Math.PI;
|
|
41233
|
+
if (angle > twoPI) {
|
|
41234
|
+
angle = angle % twoPI;
|
|
41235
|
+
}
|
|
41236
|
+
if (angle < 0) {
|
|
41237
|
+
angle = angle % twoPI;
|
|
41238
|
+
angle = twoPI + angle;
|
|
41239
|
+
}
|
|
41240
|
+
if (Math.abs(angle - twoPI) < 1e-4) {
|
|
41241
|
+
angle = 0;
|
|
41242
|
+
}
|
|
41243
|
+
return angle;
|
|
41244
|
+
}
|
|
41245
|
+
function Mx_Ucs_ByObject(_x) {
|
|
41246
|
+
return _Mx_Ucs_ByObject.apply(this, arguments);
|
|
41247
|
+
}
|
|
41248
|
+
function _Mx_Ucs_ByObject() {
|
|
41249
|
+
_Mx_Ucs_ByObject = _asyncToGenerator(/*#__PURE__*/regenerator.mark(function _callee3(mxcad) {
|
|
41250
|
+
var getEnt, filter, id, curve, ptPick, onPtRet, onPt, vecRet, vec, ptsRet, pteRet, pts, pte, ptOrigin, directionVec, distToStart, distToEnd, dAng, ucsToWcsMat;
|
|
41251
|
+
return regenerator.wrap(function _callee3$(_context3) {
|
|
41252
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
41253
|
+
case 0:
|
|
41254
|
+
getEnt = new MxCADUiPrEntity();
|
|
41255
|
+
getEnt.setMessage("\n\u9009\u62E9\u5BF9\u9F50 UCS \u7684\u5BF9\u8C61:");
|
|
41256
|
+
filter = new MxCADResbuf();
|
|
41257
|
+
filter.AddMcDbEntityTypes("LINE,*POLYLINE,ARC");
|
|
41258
|
+
getEnt.setFilter(filter);
|
|
41259
|
+
_context3.next = 7;
|
|
41260
|
+
return getEnt.go();
|
|
41261
|
+
case 7:
|
|
41262
|
+
id = _context3.sent;
|
|
41263
|
+
if (!(getEnt.getStatus() !== MrxDbgUiPrBaseReturn.kOk)) {
|
|
41264
|
+
_context3.next = 10;
|
|
41265
|
+
break;
|
|
41266
|
+
}
|
|
41267
|
+
return _context3.abrupt("return");
|
|
41268
|
+
case 10:
|
|
41269
|
+
curve = id.getMcDbEntity();
|
|
41270
|
+
if (curve) {
|
|
41271
|
+
_context3.next = 14;
|
|
41272
|
+
break;
|
|
41273
|
+
}
|
|
41274
|
+
console.log("\u65E0\u6CD5\u83B7\u53D6\u66F2\u7EBF\u5BF9\u8C61");
|
|
41275
|
+
return _context3.abrupt("return");
|
|
41276
|
+
case 14:
|
|
41277
|
+
ptPick = getEnt.getDocPickPoint();
|
|
41278
|
+
if (ptPick) {
|
|
41279
|
+
_context3.next = 17;
|
|
41280
|
+
break;
|
|
41281
|
+
}
|
|
41282
|
+
return _context3.abrupt("return");
|
|
41283
|
+
case 17:
|
|
41284
|
+
onPtRet = curve.getClosestPointTo(ptPick, false);
|
|
41285
|
+
if (onPtRet.ret) {
|
|
41286
|
+
_context3.next = 20;
|
|
41287
|
+
break;
|
|
41288
|
+
}
|
|
41289
|
+
return _context3.abrupt("return");
|
|
41290
|
+
case 20:
|
|
41291
|
+
onPt = onPtRet.val;
|
|
41292
|
+
vecRet = curve.getFirstDeriv(onPt);
|
|
41293
|
+
if (vecRet.ret) {
|
|
41294
|
+
_context3.next = 24;
|
|
41295
|
+
break;
|
|
41296
|
+
}
|
|
41297
|
+
return _context3.abrupt("return");
|
|
41298
|
+
case 24:
|
|
41299
|
+
vec = vecRet.val;
|
|
41300
|
+
ptsRet = curve.getStartPoint();
|
|
41301
|
+
pteRet = curve.getEndPoint();
|
|
41302
|
+
if (!(!ptsRet.ret || !pteRet.ret)) {
|
|
41303
|
+
_context3.next = 29;
|
|
41304
|
+
break;
|
|
41305
|
+
}
|
|
41306
|
+
return _context3.abrupt("return");
|
|
41307
|
+
case 29:
|
|
41308
|
+
pts = ptsRet.val;
|
|
41309
|
+
pte = pteRet.val;
|
|
41310
|
+
ptOrigin = pts;
|
|
41311
|
+
directionVec = vec;
|
|
41312
|
+
distToStart = onPt.distanceTo(pts);
|
|
41313
|
+
distToEnd = onPt.distanceTo(pte);
|
|
41314
|
+
if (distToEnd < distToStart) {
|
|
41315
|
+
ptOrigin = pte;
|
|
41316
|
+
directionVec = new McGeVector3d(-vec.x, -vec.y, -vec.z);
|
|
41317
|
+
}
|
|
41318
|
+
dAng = directionVec.angleTo2(McGeVector3d.kXAxis, McGeVector3d.kNegateZAxis);
|
|
41319
|
+
ucsToWcsMat = new McGeMatrix3d();
|
|
41320
|
+
ucsToWcsMat.setToTranslation(new McGeVector3d(ptOrigin.x, ptOrigin.y, ptOrigin.z));
|
|
41321
|
+
ucsToWcsMat = ucsToWcsMat.postMultBy(new McGeMatrix3d().setToRotation(dAng, McGeVector3d.kZAxis, McGePoint3d.kOrigin));
|
|
41322
|
+
mxcad.database.ucsMatrix = ucsToWcsMat;
|
|
41323
|
+
MxFun.acutPrintf("\n UCS\u5DF2\u6839\u636E\u5BF9\u8C61\u5BF9\u9F50");
|
|
41324
|
+
case 42:
|
|
41325
|
+
case "end":
|
|
41326
|
+
return _context3.stop();
|
|
41327
|
+
}
|
|
41328
|
+
}, _callee3);
|
|
41329
|
+
}));
|
|
41330
|
+
return _Mx_Ucs_ByObject.apply(this, arguments);
|
|
41331
|
+
}
|
|
41332
|
+
|
|
40926
41333
|
var material;
|
|
40927
41334
|
function createThickLine(start, end) {
|
|
40928
41335
|
var width = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : MxFun.viewCoordLong2Cad(4);
|
|
@@ -46217,6 +46624,7 @@ MxFun.on("init", function () {
|
|
|
46217
46624
|
MxFun.addCommand("Mx_WindowZoom", Mx_WindowZoom);
|
|
46218
46625
|
MxFun.addCommand("Mx_ZoomE", Mx_ZoomE);
|
|
46219
46626
|
MxFun.addCommand("Mx_Plan90CW", Mx_Plan90CW);
|
|
46627
|
+
MxFun.addCommand("Mx_Plan", Mx_Plan);
|
|
46220
46628
|
MxFun.addCommand("Mx_Offset", Mx_Offset);
|
|
46221
46629
|
MxFun.addCommand("Mx_Regen", Mx_Regen);
|
|
46222
46630
|
MxFun.addCommand("Mx_Mirror", Mx_Mirror, MxType.MxCommandFlag.MCRX_CMD_NO_CLEAR_SELECT);
|
|
@@ -46761,6 +47169,13 @@ MxFun.on("init", function () {
|
|
|
46761
47169
|
MxFun.addCommand("Mx_Rectang", drawRectang);
|
|
46762
47170
|
});
|
|
46763
47171
|
|
|
47172
|
+
function MxRegistCommand() {
|
|
47173
|
+
MxFun.addCommand("Mx_Ucs", Mx_Ucs);
|
|
47174
|
+
}
|
|
47175
|
+
MxFun.on("init", function () {
|
|
47176
|
+
MxRegistCommand();
|
|
47177
|
+
});
|
|
47178
|
+
|
|
46764
47179
|
function b64Encode(str) {
|
|
46765
47180
|
return btoa(unescape(encodeURIComponent(str)));
|
|
46766
47181
|
}
|
|
@@ -104353,6 +104768,7 @@ const mxcad = /*#__PURE__*/Object.freeze(/*#__PURE__*/Object.defineProperty({
|
|
|
104353
104768
|
drawEllipticalArc,
|
|
104354
104769
|
Mx_Erase,
|
|
104355
104770
|
drawRectang,
|
|
104771
|
+
MxRegistCommand,
|
|
104356
104772
|
MxMap,
|
|
104357
104773
|
MxMapAddRasterTileLayer,
|
|
104358
104774
|
MxMapAddGoogleCnLayer,
|
|
@@ -104365,4 +104781,4 @@ globalThis.Buffer = buffer$1.Buffer;
|
|
|
104365
104781
|
globalThis.Buffer.alloc = buffer$1.Buffer.alloc;
|
|
104366
104782
|
globalThis.Buffer.from = buffer$1.Buffer.from;
|
|
104367
104783
|
|
|
104368
|
-
export { ColorIndexType, ColorMethod, DxfCode, FetchAttributes, IMcDbDwgFiler, IsZero, MLineJustificationType, McAppType, McCmColor, McDb, McDb2LineAngularDimension, McDbAlignedDimension, McDbArc, McDbAttribute, McDbAttributeDefinition, McDbBackgroundEntity, McDbBlockReference, McDbBlockTable, McDbBlockTableRecord, McDbCircle, McDbCurve, McDbCustomEntity, McDbDatabase, McDbDiametricDimension, McDbDictionary, McDbDimStyleTable, McDbDimStyleTableRecord, McDbDimension, McDbEllipse, McDbEntity, McDbGroup, McDbHatch$1 as McDbHatch, McDbLayerTable, McDbLayerTableRecord, McDbLine, McDbLinetypeTable, McDbLinetypeTableRecord, McDbMLine, McDbMText, McDbMxRegion, McDbObject, McDbObjectArray, McDbPoint, McDbPolyline, McDbProxyEntity, McDbRadialDimension, McDbRasterImage, McDbRasterImageDef, McDbRay, McDbRotatedDimension, McDbSpatialFilter, McDbSpline, McDbText, McDbTextStyleTable, McDbTextStyleTableRecord, McDbViewport, McDbWipeout, McDbXline, McDbXlsxTable, McDbXrecord, McGeBound, McGeDoubleArray, McGeLongArray, McGeMatrix3d, McGePoint3d, McGePoint3dArray, McGeStringArray, McGeVector3d, McObject, McObjectId, McObjectIdType, McObjectTempDraw, McRxObject, MxCADBaseCustomElement, MxCADBaseCustomText, MxCADCloneType, MxCADMText, MxCADPluginBase, MxCADPluginMapDefaultData, MxCADPluginSampleCode, MxCADResbuf, MxCADSelectionSet, MxCADSelectionSetStatus, MxCADTempForbiddenIntelliSelect, MxCADUiPrAngle, MxCADUiPrBase, MxCADUiPrDist, MxCADUiPrEntity, MxCADUiPrInt, MxCADUiPrKeyWord, MxCADUiPrPoint, MxCADUiPrPointTransform, MxCADUiPrString, MxCADUtility, MxCADUtilityClass, MxCADWorldDraw, MxCADWorldDrawType, MxCanvas2Image, MxCheckTheBrowser, MxCompare, MxCooperate, MxCoordConvert, MxCoordConvertType, MxCpp, MxCppType, MxMap, MxMapAddGoogleCnLayer, MxMapAddRasterTileLayer, MxModifyColor, MxPropertiesWindowCustom, MxPropertiesWindowCustomValue, MxPropertiesWindowCustomValueType, MxTIFFLoader, MxTools, Mx_About, Mx_Erase, TableRenderDirection, _ML_String, b64Decode, b64Encode, copyMcDbEntityProperties, crateHexString, createCursor, createMcCmColor, createMdGeLongLongArrayFormAryId, createMxCad, mxcad as default, downloadFile, downloadFileFromUrl, drawArc, drawCircle, drawEllipticalArc, drawLine, drawMText, drawPolyLine, drawPolygon, drawRectang, drawText, getColorUtils, getFileFromUrl, getFilterImp, getJsonFromUrl, loadMxCADassembly, mx_gcj02_To_gps84, mx_gps84_To_gcj02, postEmscriptenIndexedDBFile, postMemoryFile, saveAsFileDialog, setMcCmColor };
|
|
104784
|
+
export { ColorIndexType, ColorMethod, DxfCode, FetchAttributes, IMcDbDwgFiler, IsZero, MLineJustificationType, McAppType, McCmColor, McDb, McDb2LineAngularDimension, McDbAlignedDimension, McDbArc, McDbAttribute, McDbAttributeDefinition, McDbBackgroundEntity, McDbBlockReference, McDbBlockTable, McDbBlockTableRecord, McDbCircle, McDbCurve, McDbCustomEntity, McDbDatabase, McDbDiametricDimension, McDbDictionary, McDbDimStyleTable, McDbDimStyleTableRecord, McDbDimension, McDbEllipse, McDbEntity, McDbGroup, McDbHatch$1 as McDbHatch, McDbLayerTable, McDbLayerTableRecord, McDbLine, McDbLinetypeTable, McDbLinetypeTableRecord, McDbMLine, McDbMText, McDbMxRegion, McDbObject, McDbObjectArray, McDbPoint, McDbPolyline, McDbProxyEntity, McDbRadialDimension, McDbRasterImage, McDbRasterImageDef, McDbRay, McDbRotatedDimension, McDbSpatialFilter, McDbSpline, McDbText, McDbTextStyleTable, McDbTextStyleTableRecord, McDbViewport, McDbWipeout, McDbXline, McDbXlsxTable, McDbXrecord, McGeBound, McGeDoubleArray, McGeLongArray, McGeMatrix3d, McGePoint3d, McGePoint3dArray, McGeStringArray, McGeVector3d, McObject, McObjectId, McObjectIdType, McObjectTempDraw, McRxObject, MxCADBaseCustomElement, MxCADBaseCustomText, MxCADCloneType, MxCADMText, MxCADPluginBase, MxCADPluginMapDefaultData, MxCADPluginSampleCode, MxCADResbuf, MxCADSelectionSet, MxCADSelectionSetStatus, MxCADTempForbiddenIntelliSelect, MxCADUiPrAngle, MxCADUiPrBase, MxCADUiPrDist, MxCADUiPrEntity, MxCADUiPrInt, MxCADUiPrKeyWord, MxCADUiPrPoint, MxCADUiPrPointTransform, MxCADUiPrString, MxCADUtility, MxCADUtilityClass, MxCADWorldDraw, MxCADWorldDrawType, MxCanvas2Image, MxCheckTheBrowser, MxCompare, MxCooperate, MxCoordConvert, MxCoordConvertType, MxCpp, MxCppType, MxMap, MxMapAddGoogleCnLayer, MxMapAddRasterTileLayer, MxModifyColor, MxPropertiesWindowCustom, MxPropertiesWindowCustomValue, MxPropertiesWindowCustomValueType, MxRegistCommand, MxTIFFLoader, MxTools, Mx_About, Mx_Erase, TableRenderDirection, _ML_String, b64Decode, b64Encode, copyMcDbEntityProperties, crateHexString, createCursor, createMcCmColor, createMdGeLongLongArrayFormAryId, createMxCad, mxcad as default, downloadFile, downloadFileFromUrl, drawArc, drawCircle, drawEllipticalArc, drawLine, drawMText, drawPolyLine, drawPolygon, drawRectang, drawText, getColorUtils, getFileFromUrl, getFilterImp, getJsonFromUrl, loadMxCADassembly, mx_gcj02_To_gps84, mx_gps84_To_gcj02, postEmscriptenIndexedDBFile, postMemoryFile, saveAsFileDialog, setMcCmColor };
|