mxdraw 0.0.1

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.
Files changed (49) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +0 -0
  3. package/dist/lib/MxCore/MxDrawObject/MxDrawObject.js +242 -0
  4. package/dist/lib/MxCore/MxDrawObject/MxDrawObject.js.map +1 -0
  5. package/dist/lib/MxCore/MxFun/MxFun.js +408 -0
  6. package/dist/lib/MxCore/MxFun/MxFun.js.map +1 -0
  7. package/dist/lib/MxCore/MxJigCmdManager/McEdGetPointWorldDrawObjectClass/McEdGetPointWorldDrawObjectClass.js +93 -0
  8. package/dist/lib/MxCore/MxJigCmdManager/McEdGetPointWorldDrawObjectClass/McEdGetPointWorldDrawObjectClass.js.map +1 -0
  9. package/dist/lib/MxCore/MxJigCmdManager/MrxDbgUiPrPointClass/MrxDbgUiPrPointClass.js +139 -0
  10. package/dist/lib/MxCore/MxJigCmdManager/MrxDbgUiPrPointClass/MrxDbgUiPrPointClass.js.map +1 -0
  11. package/dist/lib/MxCore/MxJigCmdManager/index.js +8 -0
  12. package/dist/lib/MxCore/MxJigCmdManager/index.js.map +1 -0
  13. package/dist/lib/MxModule/MxThreeJS/MxThreeJS.js +205 -0
  14. package/dist/lib/MxModule/MxThreeJS/MxThreeJS.js.map +1 -0
  15. package/dist/lib/MxModule/MxThreeJS/MxThreeJS.mixin.js +91 -0
  16. package/dist/lib/MxModule/MxThreeJS/MxThreeJS.mixin.js.map +1 -0
  17. package/dist/lib/MxModule.js +31 -0
  18. package/dist/lib/MxModule.js.map +1 -0
  19. package/dist/lib/mxdraw.js +31 -0
  20. package/dist/lib/mxdraw.js.map +1 -0
  21. package/dist/lib/tools/algorithm/math.js +17 -0
  22. package/dist/lib/tools/algorithm/math.js.map +1 -0
  23. package/dist/lib/tools/algorithm/random.js +14 -0
  24. package/dist/lib/tools/algorithm/random.js.map +1 -0
  25. package/dist/lib/tools/dom/create.js +47 -0
  26. package/dist/lib/tools/dom/create.js.map +1 -0
  27. package/dist/lib/tools/formatting/index.js +21 -0
  28. package/dist/lib/tools/formatting/index.js.map +1 -0
  29. package/dist/lib/tools/three/index.js +27 -0
  30. package/dist/lib/tools/three/index.js.map +1 -0
  31. package/dist/mxdraw.es5.js +112943 -0
  32. package/dist/mxdraw.es5.js.map +1 -0
  33. package/dist/mxdraw.umd.js +112951 -0
  34. package/dist/mxdraw.umd.js.map +1 -0
  35. package/dist/types/MxCore/MxDrawObject/MxDrawObject.d.ts +195 -0
  36. package/dist/types/MxCore/MxFun/MxFun.d.ts +328 -0
  37. package/dist/types/MxCore/MxJigCmdManager/McEdGetPointWorldDrawObjectClass/McEdGetPointWorldDrawObjectClass.d.ts +69 -0
  38. package/dist/types/MxCore/MxJigCmdManager/MrxDbgUiPrPointClass/MrxDbgUiPrPointClass.d.ts +101 -0
  39. package/dist/types/MxCore/MxJigCmdManager/index.d.ts +3 -0
  40. package/dist/types/MxModule/MxThreeJS/MxThreeJS.d.ts +126 -0
  41. package/dist/types/MxModule/MxThreeJS/MxThreeJS.mixin.d.ts +2 -0
  42. package/dist/types/MxModule.d.ts +13 -0
  43. package/dist/types/mxdraw.d.ts +8 -0
  44. package/dist/types/tools/algorithm/math.d.ts +10 -0
  45. package/dist/types/tools/algorithm/random.d.ts +6 -0
  46. package/dist/types/tools/dom/create.d.ts +22 -0
  47. package/dist/types/tools/formatting/index.d.ts +7 -0
  48. package/dist/types/tools/three/index.d.ts +11 -0
  49. package/package.json +127 -0
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var MxModule_1 = require("../../../MxModule");
4
+ var _McEdGetPointWorldDraw;
5
+ // 创建动态绘制回调对象
6
+ var McEdGetPointWorldDrawObjectClass = /** @class */ (function () {
7
+ function McEdGetPointWorldDrawObjectClass() {
8
+ _McEdGetPointWorldDraw = new (MxModule_1._MxFun
9
+ .getMxJigCmdManager()
10
+ .McEdGetPointWorldDrawObjectClass())();
11
+ }
12
+ /**
13
+ * 绘制圆
14
+ * @param cen 圆心位置
15
+ * @param dRadius 圆半径
16
+ * @returns void
17
+ * @example
18
+ * ``` typescript
19
+ * new Mx.McEdGetPointWorldDrawObjectClass().drawCircle(new HTREE.Vector3(0,100,5), 6)
20
+ * ```
21
+ *
22
+ */
23
+ McEdGetPointWorldDrawObjectClass.prototype.drawCircle = function (cen, dRadius) {
24
+ return _McEdGetPointWorldDraw.drawCircle(cen, dRadius);
25
+ };
26
+ /**
27
+ * 绘制直线
28
+ * @param pt1 开始点
29
+ * @param pt2 结束点
30
+ * @returns void
31
+ * @example
32
+ * ``` typescript
33
+ * new Mx.McEdGetPointWorldDrawObjectClass().drawLine(new HTREE.Vector3(0,100,5), new HTREE.Vector3(0,600,5))
34
+ * ```
35
+ *
36
+ */
37
+ McEdGetPointWorldDrawObjectClass.prototype.drawLine = function (pt1, pt2) {
38
+ return _McEdGetPointWorldDraw.drawLine(pt1, pt2);
39
+ };
40
+ /**
41
+ * 绘制一个Three.js对象.
42
+ * @param ent THREE.Object3D对象
43
+ * @returns void
44
+ * @example
45
+ * ``` typescript
46
+ * new Mx.McEdGetPointWorldDrawObjectClass().drawEntity(new THREE.Object3D()))
47
+ * ```
48
+ *
49
+ */
50
+ McEdGetPointWorldDrawObjectClass.prototype.drawEntity = function (ent) {
51
+ return _McEdGetPointWorldDraw.drawEntity(ent);
52
+ };
53
+ /**
54
+ * 绘制一个文档对象
55
+ * @param sText 文本
56
+ * @param iSize 大小
57
+ * @param dAngle 角度
58
+ * @param pt 位置
59
+ * @returns void
60
+ * @example
61
+ * ``` typescript
62
+ * new Mx.McEdGetPointWorldDrawObjectClass().drawText("字符串" ,36 ,90 ,new HTREE.Vector3(0,100,5))
63
+ * ```
64
+ *
65
+ */
66
+ McEdGetPointWorldDrawObjectClass.prototype.drawText = function (sText, iSize, dAngle, pt) {
67
+ return _McEdGetPointWorldDraw.drawText(sText, iSize, dAngle, pt);
68
+ };
69
+ /**
70
+ * 设置动态绘制回调函数。
71
+ * @callback call 回调函数
72
+ * @param currentPoint 回调参数 当前位置
73
+ * @param pWorldDraw 回调参数 文档绘制对象 McEdGetPointWorldDrawObject
74
+ * @returns void
75
+ * @example
76
+ * ``` typescript
77
+ * new Mx.McEdGetPointWorldDrawObjectClass().setDraw((currentPoint, pWorldDraw)=> {
78
+ *
79
+ * })
80
+ * ```
81
+ *
82
+ */
83
+ McEdGetPointWorldDrawObjectClass.prototype.setDraw = function (call) {
84
+ return _McEdGetPointWorldDraw.setDraw(call);
85
+ };
86
+ // 获取真正的实例
87
+ McEdGetPointWorldDrawObjectClass.prototype._get = function () {
88
+ return _McEdGetPointWorldDraw;
89
+ };
90
+ return McEdGetPointWorldDrawObjectClass;
91
+ }());
92
+ exports.default = McEdGetPointWorldDrawObjectClass;
93
+ //# sourceMappingURL=McEdGetPointWorldDrawObjectClass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McEdGetPointWorldDrawObjectClass.js","sourceRoot":"","sources":["../../../../../src/MxCore/MxJigCmdManager/McEdGetPointWorldDrawObjectClass/McEdGetPointWorldDrawObjectClass.ts"],"names":[],"mappings":";;AACA,8CAA0C;AAC1C,IAAI,sBAAmD,CAAA;AACvD,aAAa;AACb;IACE;QACE,sBAAsB,GAAG,IAAI,CAAE,iBAAc;aAC1C,kBAAkB,EAAE;aACpB,gCAAgC,EAAE,CAAC,EAAE,CAAA;IAC1C,CAAC;IAED;;;;;;;;;;OAUG;IACH,qDAAU,GAAV,UAAW,GAAY,EAAE,OAAe;QACtC,OAAO,sBAAsB,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACxD,CAAC;IACD;;;;;;;;;;OAUG;IACH,mDAAQ,GAAR,UAAS,GAAY,EAAE,GAAY;QACjC,OAAO,sBAAsB,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAClD,CAAC;IAED;;;;;;;;;OASG;IACH,qDAAU,GAAV,UAAW,GAAoB;QAC7B,OAAO,sBAAsB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;IAC/C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,mDAAQ,GAAR,UAAS,KAAa,EAAE,KAAa,EAAE,MAAc,EAAE,EAAW;QAChE,OAAO,sBAAsB,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;IAClE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,kDAAO,GAAP,UAAQ,IAA8E;QACpF,OAAO,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,CAAC;IAED,UAAU;IACV,+CAAI,GAAJ;QACE,OAAO,sBAAsB,CAAA;IAC/B,CAAC;IACH,uCAAC;AAAD,CAAC,AAzFD,IAyFC"}
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var MxModule_1 = require("../../../MxModule");
4
+ var _MrxDbgUiPrPoint;
5
+ var MrxDbgUiPrPointClass = /** @class */ (function () {
6
+ function MrxDbgUiPrPointClass() {
7
+ _MrxDbgUiPrPoint = new (MxModule_1._MxFun.getMxJigCmdManager().getMrxDbgUiPrPointClass())();
8
+ }
9
+ /**
10
+ * 返回关键字列表
11
+ * @returns 关键词列表
12
+ */
13
+ MrxDbgUiPrPointClass.prototype.keyWords = function () {
14
+ return _MrxDbgUiPrPoint.keyWords();
15
+ };
16
+ /**
17
+ * 设置关键字列表
18
+ * @param keyWordList 关键词列表
19
+ * @returns void
20
+ */
21
+ MrxDbgUiPrPointClass.prototype.setKeyWords = function (keyWordList) {
22
+ return _MrxDbgUiPrPoint.setKeyWords(keyWordList);
23
+ };
24
+ /**
25
+ * 提示字符串
26
+ * @returns 提示消息
27
+ */
28
+ MrxDbgUiPrPointClass.prototype.message = function () {
29
+ return _MrxDbgUiPrPoint.message();
30
+ };
31
+ /**
32
+ * 设置提示字符串
33
+ * @param message 提示消息
34
+ * @returns 提示消息
35
+ */
36
+ MrxDbgUiPrPointClass.prototype.setMessage = function (message) {
37
+ return _MrxDbgUiPrPoint.setMessage(message);
38
+ };
39
+ /**
40
+ * 返回用户选择的关键字
41
+ * @returns 选择的关键字
42
+ */
43
+ MrxDbgUiPrPointClass.prototype.keyWordPicked = function () {
44
+ return _MrxDbgUiPrPoint.keyWordPicked();
45
+ };
46
+ /**
47
+ * 测试某一个关键字是否被用户选择
48
+ * @param matchKeyWord 要检测的关键字
49
+ * @returns true为真
50
+ */
51
+ MrxDbgUiPrPointClass.prototype.isKeyWordPicked = function (matchKeyWord) {
52
+ return _MrxDbgUiPrPoint.isKeyWordPicked(matchKeyWord);
53
+ };
54
+ /**
55
+ * 设置交互过程的动态绘制调用对象
56
+ * @param pDraw 动态绘制对象 McEdGetPointWorldDrawObject
57
+ * @returns true为真
58
+ */
59
+ MrxDbgUiPrPointClass.prototype.setUserDraw = function (pDraw) {
60
+ return _MrxDbgUiPrPoint.setUserDraw(pDraw._get());
61
+ };
62
+ /**
63
+ * 得以获取的点对象,Three.js坐标
64
+ * @returns 点对象 THREE.Vector3
65
+ */
66
+ MrxDbgUiPrPointClass.prototype.value = function () {
67
+ return _MrxDbgUiPrPoint.value();
68
+ };
69
+ /**
70
+ * 得以获取的点对象,DWG图纸坐标.
71
+ * @returns 点对象 DWG图纸坐标
72
+ */
73
+ MrxDbgUiPrPointClass.prototype.valueDocCoord = function () {
74
+ return _MrxDbgUiPrPoint.valueDocCoord();
75
+ };
76
+ /**
77
+ * 得到动态拖动的基点
78
+ * @returns 基点 THREE.Vector3
79
+ */
80
+ MrxDbgUiPrPointClass.prototype.basePt = function () {
81
+ return _MrxDbgUiPrPoint.basePt();
82
+ };
83
+ /**
84
+ * 设置动态拖动的基点
85
+ * @param basePt 基点 THREE.Vector3
86
+ * @returns 点对象 DWG图纸坐标
87
+ */
88
+ MrxDbgUiPrPointClass.prototype.setBasePt = function (basePt) {
89
+ return _MrxDbgUiPrPoint.setBasePt(basePt);
90
+ };
91
+ /**
92
+ * 设置使用动态拖动的基点
93
+ * @param useIt 是否设置 默认为false
94
+ * @returns void
95
+ */
96
+ MrxDbgUiPrPointClass.prototype.setUseBasePt = function (useIt) {
97
+ return _MrxDbgUiPrPoint.setUseBasePt(useIt);
98
+ };
99
+ /**
100
+ * 开始动态拖动
101
+ * @callback retcall
102
+ * @param status 用户交互输入函数返回值
103
+ * kCancel = -2, // 取消
104
+ * kNone = -1, // 空输入,当输入关键字和实体时会返回此值
105
+ * kOk = 0, // 获取用户输入成功
106
+ * kKeyWord = 1, // 用户输入了关键字
107
+ * @returns void
108
+ */
109
+ MrxDbgUiPrPointClass.prototype.go = function (retcall) {
110
+ return _MrxDbgUiPrPoint.go(retcall);
111
+ };
112
+ /**
113
+ * 动态拖动,连续取点,直到ESC退出。
114
+ * @callback retcall
115
+ * @param status 用户交互输入函数返回值
116
+ * @callback exitcall
117
+ * @param status 用户交互输入函数返回值
118
+ * kCancel = -2, // 取消
119
+ * kNone = -1, // 空输入,当输入关键字和实体时会返回此值
120
+ * kOk = 0, // 获取用户输入成功
121
+ * kKeyWord = 1, // 用户输入了关键字
122
+ * @returns void
123
+ */
124
+ MrxDbgUiPrPointClass.prototype.goWhile = function (retcall, exitcall) {
125
+ return _MrxDbgUiPrPoint.goWhile(retcall, exitcall);
126
+ };
127
+ /**
128
+ * 把动态绘制的对象,保留到图上。
129
+ * @callback callAddEntity
130
+ * @param ent THREE.Object3D
131
+ * @returns 点对象 DWG图纸坐标
132
+ */
133
+ MrxDbgUiPrPointClass.prototype.drawReserve = function (callAddEntity) {
134
+ return _MrxDbgUiPrPoint.drawReserve(callAddEntity);
135
+ };
136
+ return MrxDbgUiPrPointClass;
137
+ }());
138
+ exports.default = MrxDbgUiPrPointClass;
139
+ //# sourceMappingURL=MrxDbgUiPrPointClass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MrxDbgUiPrPointClass.js","sourceRoot":"","sources":["../../../../../src/MxCore/MxJigCmdManager/MrxDbgUiPrPointClass/MrxDbgUiPrPointClass.ts"],"names":[],"mappings":";;AACA,8CAA0C;AAC1C,IAAI,gBAAiC,CAAA;AAErC;IACE;QACE,gBAAgB,GAAG,IAAI,CAAE,iBAAc,CAAC,kBAAkB,EAAE,CAAC,uBAAuB,EAAE,CAAC,EAAE,CAAA;IAC3F,CAAC;IACD;;;OAGG;IACH,uCAAQ,GAAR;QACE,OAAO,gBAAgB,CAAC,QAAQ,EAAE,CAAA;IACpC,CAAC;IAED;;;;OAIG;IACH,0CAAW,GAAX,UAAY,WAAmB;QAC7B,OAAO,gBAAgB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAA;IAClD,CAAC;IAED;;;OAGG;IACH,sCAAO,GAAP;QACE,OAAO,gBAAgB,CAAC,OAAO,EAAE,CAAA;IACnC,CAAC;IAED;;;;OAIG;IACH,yCAAU,GAAV,UAAW,OAAe;QACxB,OAAO,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IAC7C,CAAC;IAED;;;OAGG;IACH,4CAAa,GAAb;QACE,OAAO,gBAAgB,CAAC,aAAa,EAAE,CAAA;IACzC,CAAC;IAED;;;;OAIG;IACH,8CAAe,GAAf,UAAgB,YAAoB;QAClC,OAAO,gBAAgB,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;IACvD,CAAC;IAED;;;;OAIG;IACH,0CAAW,GAAX,UAAY,KAAkC;QAC5C,OAAO,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAiC,CAAC,CAAA;IAClF,CAAC;IAED;;;OAGG;IACH,oCAAK,GAAL;QACE,OAAO,gBAAgB,CAAC,KAAK,EAAE,CAAA;IACjC,CAAC;IAED;;;OAGG;IACH,4CAAa,GAAb;QACE,OAAO,gBAAgB,CAAC,aAAa,EAAE,CAAA;IACzC,CAAC;IAED;;;OAGG;IACH,qCAAM,GAAN;QACE,OAAO,gBAAgB,CAAC,MAAM,EAAE,CAAA;IAClC,CAAC;IAED;;;;OAIG;IACH,wCAAS,GAAT,UAAU,MAAe;QACvB,OAAO,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAED;;;;OAIG;IACH,2CAAY,GAAZ,UAAa,KAAc;QACzB,OAAO,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC7C,CAAC;IAED;;;;;;;;;OASG;IACH,iCAAE,GAAF,UAAG,OAA+C;QAChD,OAAO,gBAAgB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;IACrC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,sCAAO,GAAP,UACE,OAA8C,EAC9C,QAAgD;QAEhD,OAAO,gBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;IACpD,CAAC;IAED;;;;;OAKG;IACH,0CAAW,GAAX,UAAY,aAAuC;QACjD,OAAO,gBAAgB,CAAC,WAAW,CAAC,aAAa,CAAC,CAAA;IACpD,CAAC;IACH,2BAAC;AAAD,CAAC,AApJD,IAoJC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MrxDbgUiPrPointClass = exports.McEdGetPointWorldDrawObjectClass = void 0;
4
+ var McEdGetPointWorldDrawObjectClass_1 = require("./McEdGetPointWorldDrawObjectClass/McEdGetPointWorldDrawObjectClass");
5
+ exports.McEdGetPointWorldDrawObjectClass = McEdGetPointWorldDrawObjectClass_1.default;
6
+ var MrxDbgUiPrPointClass_1 = require("./MrxDbgUiPrPointClass/MrxDbgUiPrPointClass");
7
+ exports.MrxDbgUiPrPointClass = MrxDbgUiPrPointClass_1.default;
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/MxCore/MxJigCmdManager/index.ts"],"names":[],"mappings":";;;AAAA,wHAAkH;AAEzG,2CAFF,0CAAgC,CAEE;AADzC,oFAA8E;AACnC,+BADpC,8BAAoB,CACoC"}
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var three_1 = require("three");
4
+ var math_1 = require("../../tools/algorithm/math");
5
+ var formatting_1 = require("../../tools/formatting");
6
+ var MxThreeJS = /** @class */ (function () {
7
+ function MxThreeJS() {
8
+ }
9
+ /**
10
+ * 创建Three.js直线对象。
11
+ * @param vPt1 THREE.Vector3 点1
12
+ * @param vPt1 THREE.Vector3 点2
13
+ * @param iColor 颜色
14
+ * @returns THREE.Line
15
+ * @example
16
+ * ```typescript
17
+ * Mx.MxThreeJS.createLine(new Three.Vector3(1,10,0), new Three.Vector3(1,300,0), 0)
18
+ * ```
19
+ */
20
+ MxThreeJS.prototype.createLine = function (vPt1, vPt2, iColor) {
21
+ var lineGeometry = new three_1.Geometry();
22
+ var lineMaterial = new three_1.LineBasicMaterial({ color: iColor });
23
+ lineGeometry.vertices.push(vPt1, vPt2);
24
+ return new three_1.Line(lineGeometry, lineMaterial);
25
+ };
26
+ /**
27
+ * 创建Three.js圆对象。
28
+ * @param mCenterPt 圆中心点
29
+ * @param dRadius 圆半径
30
+ * @param iColor 颜色
31
+ * @returns THREE.Object3D
32
+ * @example
33
+ * ```typescript
34
+ * Mx.MxThreeJS.createCircle(new Three.Vector3(1,10,0), 10, 0)
35
+ * ```
36
+ */
37
+ MxThreeJS.prototype.createCircle = function (mCenterPt, dRadius, iColor) {
38
+ var geometry = new three_1.CircleGeometry(dRadius, 64, 3, 2 * Math.PI);
39
+ var material = new three_1.LineBasicMaterial({ color: iColor });
40
+ geometry.vertices.shift();
41
+ var mEnt = new three_1.LineLoop(geometry, material);
42
+ mEnt.position.x = mCenterPt.x;
43
+ mEnt.position.y = mCenterPt.y;
44
+ mEnt.position.z = mCenterPt.z;
45
+ return mEnt;
46
+ };
47
+ /**
48
+ * 创建Three.js点对象。
49
+ * @param mPt 点位置
50
+ * @param iColor 颜色
51
+ * @returns THREE.Points
52
+ * @example
53
+ * ```typescript
54
+ * Mx.MxThreeJS.createPoint(new Three.Vector3(1,10,0), 0)
55
+ * ```
56
+ */
57
+ MxThreeJS.prototype.createPoint = function (mPt, iColor) {
58
+ var pointsGeometry = new three_1.Geometry();
59
+ pointsGeometry.vertices.push(mPt);
60
+ var pointsMaterial = new three_1.PointsMaterial({ color: iColor, size: 3 });
61
+ var points = new three_1.Points(pointsGeometry, pointsMaterial);
62
+ return points;
63
+ };
64
+ /**
65
+ * 创建Three.js 文字
66
+ * @param message 文字信息
67
+ * @param pt 位置
68
+ * @param iSize 文字大小
69
+ * @param fAngle 旋转角度
70
+ * @param iColor 颜色
71
+ * @returns THREE.Sprite
72
+ * @example
73
+ * ```typescript
74
+ * Mx.MxThreeJS.creatTextSprite("hello",new Three.Vector3(1,10,0), 90, 60, 0)
75
+ * ```
76
+ */
77
+ MxThreeJS.prototype.creatTextSprite = function (message, pt, iSize, fAngle, iColor) {
78
+ var textHeight = 256;
79
+ var canvas = document.createElement('canvas');
80
+ var context = canvas.getContext('2d');
81
+ var textWidth = 0;
82
+ var sFont = (0, formatting_1.formatString)('normal {0}px Arial', '' + textHeight);
83
+ /* istanbul ignore next */
84
+ if (context == null) {
85
+ /* istanbul ignore next */
86
+ return null;
87
+ }
88
+ context.font = sFont;
89
+ var metrics = context.measureText(message);
90
+ // 保证纹理的尺寸是2次方。
91
+ textWidth = (0, math_1.floorPowerOfTwo)(metrics.width) * 2;
92
+ canvas.width = textWidth;
93
+ canvas.height = textHeight;
94
+ context.font = sFont;
95
+ context.textAlign = 'center';
96
+ context.textBaseline = 'middle';
97
+ var sColor = (0, formatting_1.formatString)('#{0}', iColor.toString(16));
98
+ context.fillStyle = sColor;
99
+ context.fillText(message, textWidth / 2, textHeight / 2);
100
+ var texture = new three_1.Texture(canvas);
101
+ texture.needsUpdate = true;
102
+ var material = new three_1.SpriteMaterial({
103
+ transparent: true,
104
+ depthTest: false,
105
+ map: texture
106
+ });
107
+ //material.transparent = false;
108
+ material.rotation = fAngle;
109
+ var sprite = new three_1.Sprite(material);
110
+ sprite.scale.set((textWidth / textHeight) * iSize, iSize, 1);
111
+ sprite.position.set(pt.x, pt.y, pt.z);
112
+ return sprite;
113
+ };
114
+ /**
115
+ * 根据三角形数组,创建Three.js Mesh
116
+ * @param points 由三个点组成的数组
117
+ * @param iColor 颜色
118
+ * @param opacity 透明度
119
+ * @returns THREE.Mesh
120
+ * @example
121
+ * ```typescript
122
+ * Mx.MxThreeJS.createTriangle(
123
+ * [new THREE.Vector3(1,2,2),new THREE.Vector3(1,65,4),new THREE.Vector3(12,2,2)],
124
+ * 0,
125
+ * 1
126
+ * )
127
+ * ```
128
+ */
129
+ MxThreeJS.prototype.createTriangle = function (points, iColor, opacity) {
130
+ if (opacity === void 0) { opacity = 1.0; }
131
+ if (points.length < 3) {
132
+ return null;
133
+ }
134
+ var iLen = points.length;
135
+ var geometry = new three_1.Geometry();
136
+ for (var i = 0; i + 2 < iLen; i += 3) {
137
+ geometry.vertices.push(points[i]);
138
+ geometry.vertices.push(points[i + 1]);
139
+ geometry.vertices.push(points[i + 2]);
140
+ var face = new three_1.Face3(i, i + 1, i + 2);
141
+ geometry.faces.push(face);
142
+ }
143
+ geometry.computeFaceNormals();
144
+ geometry.computeVertexNormals();
145
+ // 如果需要renderOrder管用,必须在Material属性中,加入transparent: true,depthTest:false这两个值才行。
146
+ var material = new three_1.MeshBasicMaterial({
147
+ color: iColor,
148
+ transparent: true,
149
+ depthTest: false,
150
+ side: three_1.DoubleSide,
151
+ opacity: opacity
152
+ });
153
+ var mTriangle = new three_1.Mesh(geometry, material);
154
+ return mTriangle;
155
+ };
156
+ /**
157
+ * 创建连续直线
158
+ * @param points 由多个点组成的数组
159
+ * @param iColor 颜色
160
+ * @returns THREE.Line
161
+ * @example
162
+ * ```typescript
163
+ * Mx.MxThreeJS.createLines([new THREE.Vector3(1,2,2),new THREE.Vector3(1,65,4),new THREE.Vector3(12,2,2)], 0)
164
+ * ```
165
+ */
166
+ MxThreeJS.prototype.createLines = function (points, iColor) {
167
+ var lineGeometry = new three_1.Geometry();
168
+ lineGeometry.vertices = points;
169
+ //var lineMaterial = new LineBasicMaterial({ color: iColor,linewidth: 500 });
170
+ var lineMaterial = new three_1.LineBasicMaterial({ color: iColor });
171
+ var line = new three_1.Line(lineGeometry, lineMaterial);
172
+ return line;
173
+ };
174
+ /**
175
+ * 创建虚线
176
+ * @param points 由多个点组成的数组
177
+ * @param iColor 颜色
178
+ * @param dashSize 短划线的大小
179
+ * @param gapSize 短划线之间的距离
180
+ * @returns THREE.Line
181
+ * @example
182
+ * ```typescript
183
+ * Mx.MxThreeJS.createDashedLines([new THREE.Vector3(1,2,2),new THREE.Vector3(1,65,4),new THREE.Vector3(12,2,2)], 10, 20, 2)
184
+ * ```
185
+ */
186
+ MxThreeJS.prototype.createDashedLines = function (points, iColor, dashSize, gapSize) {
187
+ var lineGeometry = new three_1.Geometry();
188
+ lineGeometry.vertices = points;
189
+ var line = new three_1.Line(lineGeometry, new three_1.LineDashedMaterial({
190
+ color: iColor,
191
+ dashSize: dashSize,
192
+ gapSize: gapSize //短划线之间的距离
193
+ }));
194
+ line.computeLineDistances();
195
+ return line;
196
+ };
197
+ return MxThreeJS;
198
+ }());
199
+ /* istanbul ignore next */
200
+ if (typeof require === 'function') {
201
+ // test for nodejs environment
202
+ var Three = require('three');
203
+ }
204
+ exports.default = MxThreeJS;
205
+ //# sourceMappingURL=MxThreeJS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MxThreeJS.js","sourceRoot":"","sources":["../../../../src/MxModule/MxThreeJS/MxThreeJS.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var three_1 = require("three");
4
+ var SVGLoader_1 = require("three/examples/jsm/loaders/SVGLoader");
5
+ var three_2 = require("../../tools/three");
6
+ function default_1(MxThreeJS) {
7
+ MxThreeJS.createImage = function (pos, w, h, imageUrlPath, callResult) {
8
+ new three_1.TextureLoader().load(imageUrlPath, function (texture) {
9
+ var geometry = new three_1.PlaneGeometry(w, w);
10
+ // 测试 transparent: true,打开,renderOrder才管用。
11
+ var materialTexture = new three_1.MeshLambertMaterial({
12
+ map: texture,
13
+ transparent: true,
14
+ side: three_1.DoubleSide
15
+ });
16
+ if (materialTexture.map)
17
+ materialTexture.map.needsUpdate = true;
18
+ (0, three_2.setGeometryPostion)(geometry, pos);
19
+ //var mesh = new Mesh(geometry, material);
20
+ var mesh = new three_1.Mesh(geometry, materialTexture);
21
+ mesh.material['depthTest'] = false;
22
+ //mesh.renderOrder = renderOrder;
23
+ callResult(mesh);
24
+ }, undefined, function (err) {
25
+ console.log(err);
26
+ callResult(null);
27
+ });
28
+ };
29
+ MxThreeJS.loadSVG = function (url, x, y, scale, color, callResult) {
30
+ var loader = new SVGLoader_1.SVGLoader();
31
+ loader.load(url, function (data) {
32
+ var aryMeterial = [];
33
+ var paths = data.paths;
34
+ var group = new three_1.Group();
35
+ group.scale.multiplyScalar(scale);
36
+ group.position.x = x;
37
+ group.position.y = y;
38
+ group.scale.y *= -1;
39
+ var drawStrokes = true;
40
+ var strokesWireframe = false;
41
+ var drawFillShapes = true;
42
+ var fillShapesWireframe = false;
43
+ for (var i = 0; i < paths.length; i++) {
44
+ var path = paths[i];
45
+ var fillColor = path.userData.style.fill;
46
+ if (drawFillShapes && fillColor !== undefined && fillColor !== 'none') {
47
+ var material = new three_1.MeshBasicMaterial({
48
+ color: color ? color : new three_1.Color().setStyle(fillColor),
49
+ opacity: path.userData.style.fillOpacity,
50
+ transparent: path.userData.style.fillOpacity < 1,
51
+ side: three_1.DoubleSide,
52
+ depthWrite: false,
53
+ wireframe: fillShapesWireframe
54
+ });
55
+ var shapes = path.toShapes(true);
56
+ for (var j = 0; j < shapes.length; j++) {
57
+ var shape = shapes[j];
58
+ var geometry = new three_1.ShapeBufferGeometry(shape);
59
+ var mesh = new three_1.Mesh(geometry, material);
60
+ group.add(mesh);
61
+ }
62
+ aryMeterial.push(material);
63
+ }
64
+ var strokeColor = path.userData.style.stroke;
65
+ if (drawStrokes && strokeColor !== undefined && strokeColor !== 'none') {
66
+ var material = new three_1.MeshBasicMaterial({
67
+ color: color ? color : new three_1.Color().setStyle(strokeColor),
68
+ opacity: path.userData.style.strokeOpacity,
69
+ transparent: path.userData.style.strokeOpacity < 1,
70
+ side: three_1.DoubleSide,
71
+ depthWrite: false,
72
+ wireframe: strokesWireframe
73
+ });
74
+ for (var j = 0, jl = path.subPaths.length; j < jl; j++) {
75
+ var subPath = path.subPaths[j];
76
+ var geometry = SVGLoader_1.SVGLoader.pointsToStroke(subPath.getPoints(), path.userData.style, 12, 0.001);
77
+ if (geometry) {
78
+ var mesh = new three_1.Mesh(geometry, material);
79
+ group.add(mesh);
80
+ }
81
+ }
82
+ aryMeterial.push(material);
83
+ }
84
+ }
85
+ callResult(group, aryMeterial);
86
+ //scene.add( group );
87
+ });
88
+ };
89
+ }
90
+ exports.default = default_1;
91
+ //# sourceMappingURL=MxThreeJS.mixin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MxThreeJS.mixin.js","sourceRoot":"","sources":["../../../../src/MxModule/MxThreeJS/MxThreeJS.mixin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports._MxFun = void 0;
4
+ var MxFun_1 = require("./MxCore/MxFun/MxFun");
5
+ var MxThreeJS_1 = require("./MxModule/MxThreeJS/MxThreeJS");
6
+ var MxThreeJS_mixin_1 = require("./MxModule/MxThreeJS/MxThreeJS.mixin");
7
+ var MxJigCmdManager_1 = require("./MxCore/MxJigCmdManager");
8
+ var MxDocumentReady = function (requireFun) {
9
+ exports._MxFun = requireFun('./MxFun').MxFun;
10
+ };
11
+ var $;
12
+ (function () {
13
+ window.MxDocumentReady = MxDocumentReady;
14
+ })();
15
+ var MxModule = /** @class */ (function () {
16
+ function MxModule(Jquery) {
17
+ // 动态绘制回调对象
18
+ this.McEdGetPointWorldDrawObjectClass = MxJigCmdManager_1.McEdGetPointWorldDrawObjectClass;
19
+ // 取点对象
20
+ this.MrxDbgUiPrPointClass = MxJigCmdManager_1.MrxDbgUiPrPointClass;
21
+ $ = Jquery;
22
+ // 加载模块
23
+ this.MxFun = new MxFun_1.default(exports._MxFun);
24
+ this.MxThreeJS = new MxThreeJS_1.default();
25
+ // 混入
26
+ (0, MxThreeJS_mixin_1.default)(this.MxThreeJS);
27
+ }
28
+ return MxModule;
29
+ }());
30
+ exports.default = MxModule;
31
+ //# sourceMappingURL=MxModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MxModule.js","sourceRoot":"","sources":["../../src/MxModule.ts"],"names":[],"mappings":";;;AAAA,8CAA8C;AAE9C,4DAA4D;AAC5D,wEAAiE;AAEjE,4DAAiG;AAGjG,IAAM,eAAe,GAAG,UAAC,UAAwD;IAC/E,cAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAA;AACtC,CAAC,CAAA;AACD,IAAI,CAAe,CAClB;AAAA,CAAC;IACA,MAAM,CAAC,eAAe,GAAG,eAAe,CAAA;AAC1C,CAAC,CAAC,EAAE,CAAA;AAEJ;IAOE,kBAAY,MAAoB;QAJhC,WAAW;QACX,qCAAgC,GAAG,kDAAgC,CAAA;QACnE,OAAO;QACP,yBAAoB,GAAG,sCAAoB,CAAA;QAEzC,CAAC,GAAG,MAAM,CAAA;QACV,OAAO;QACP,IAAI,CAAC,KAAK,GAAG,IAAI,eAAW,CAAC,cAAM,CAAC,CAAA;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAe,EAAE,CAAA;QACtC,KAAK;QACL,IAAA,yBAAc,EAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAChC,CAAC;IACH,eAAC;AAAD,CAAC,AAfD,IAeC;AAED,kBAAe,QAAQ,CAAA"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ //src/index.ts
19
+ var jquery_1 = require("jquery");
20
+ require("element-resize-event-polyfill");
21
+ var MxModule_1 = require("./MxModule");
22
+ require("./lib/mxfun.min.js");
23
+ var Mx = /** @class */ (function (_super) {
24
+ __extends(Mx, _super);
25
+ function Mx() {
26
+ return _super.call(this, jquery_1.default) || this;
27
+ }
28
+ return Mx;
29
+ }(MxModule_1.default));
30
+ exports.default = new Mx();
31
+ //# sourceMappingURL=mxdraw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mxdraw.js","sourceRoot":"","sources":["../../src/mxdraw.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,cAAc;AACd,iCAAsB;AACtB,yCAAsC;AACtC,uCAAiC;AACjC,8BAA2B;AAC3B;IAAiB,sBAAQ;IACvB;eACE,kBAAM,gBAAC,CAAC;IACV,CAAC;IACH,SAAC;AAAD,CAAC,AAJD,CAAiB,kBAAQ,GAIxB;AAED,kBAAe,IAAI,EAAE,EAAE,CAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ /**
3
+ * 计算纹理的尺寸,保证纹理的尺寸是2次方。
4
+ * @param value 纹理的尺寸
5
+ * @returns number 纹理的尺寸是2次方
6
+ * @example
7
+ * ```
8
+ * floorPowerOfTwo(36)
9
+ * ```
10
+ * */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.floorPowerOfTwo = void 0;
13
+ function floorPowerOfTwo(value) {
14
+ return Math.pow(2, Math.floor(Math.log(value) / Math.LN2));
15
+ }
16
+ exports.floorPowerOfTwo = floorPowerOfTwo;
17
+ //# sourceMappingURL=math.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../../../src/tools/algorithm/math.ts"],"names":[],"mappings":";AAAA;;;;;;;;KAQK;;;AAEL,SAAgB,eAAe,CAAC,KAAa;IAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAC5D,CAAC;AAFD,0CAEC"}