gs-cae-design 1.1.48 → 1.1.50

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 (86) hide show
  1. package/README.md +21 -0
  2. package/docs/classes/CommandInterfaceManager.md +45 -0
  3. package/docs/classes/CommonInterfaceManager.md +2 -2
  4. package/lib/.gz +0 -0
  5. package/lib/CAEDesign.common-report.html +2 -2
  6. package/lib/CAEDesign.common.js +154 -33
  7. package/lib/CAEDesign.umd-report.html +2 -2
  8. package/lib/CAEDesign.umd.js +154 -33
  9. package/lib/CAEDesign.umd.min-report.html +2 -2
  10. package/lib/CAEDesign.umd.min.js +154 -33
  11. package/package.json +1 -1
  12. package/src/axiosRequestExport.ts +10 -10
  13. package/src/caeCardEditor/caeCardObjects/sacinp/cardWGTJT.ts +20 -1
  14. package/src/caeCardEditor/caeCardObjects/seainp/cardLOADCN.ts +3 -0
  15. package/src/gsDevFx/managers/datReaderManager.ts +101 -1
  16. package/src/gsDevFx/managers/datWriterManager.ts +14 -0
  17. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +45 -0
  18. package/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.ts +26 -33
  19. package/src/gsDevFx/managers/interfaceManagers/viewInterfaceManager.ts +4 -2
  20. package/src/gsDevFx/managers/persistenceManager.ts +6 -0
  21. package/src/gsDevFx/objects/caeLightObject/caeLightObject.ts +0 -2
  22. package/src/gsDevFx/objects/caeObjects/memberObject.ts +1 -1
  23. package/src/gsDevFx/objects/caeObjects/objectColors.ts +1 -0
  24. package/src/gsDevFx/objects/caeObjects/plateObject.ts +6 -6
  25. package/src/gsDevFx/objects/loadObjects/loadGroupObject.ts +3 -0
  26. package/src/gsDevFx/objects/pretreatmentObjects/colorDivComponentGroupObject.ts +4 -4
  27. package/src/gsDevFx/objects/weightObjects/instanceJointWeightObject.ts +75 -0
  28. package/src/gsDevFx/objects/weightObjects/instanceWeightBaseObject.ts +82 -0
  29. package/src/gsDevFx/objects/weightObjects/jointWeightObject.ts +129 -0
  30. package/src/gsDevFx/objects/weightObjects/weightGroupObject.ts +92 -0
  31. package/src/gsDevFx/objects/weightObjects/weightIdObject.ts +63 -0
  32. package/src/gsDevFx/operators/cameraMouse.ts +1 -1
  33. package/src/install.ts +8 -5
  34. package/src/viewerWrapper/commands/aftertreatment/showShipImpact/commandShowShipImpact.ts +6 -1
  35. package/src/viewerWrapper/commands/editPlateOffsetUnified/commandEditPlateOffsetUnified.ts +1 -1
  36. package/src/viewerWrapper/commands/pretreatment/addJointWeight/addJointWeightConfig.ts +85 -0
  37. package/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.ts +337 -0
  38. package/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.ts +404 -0
  39. package/src/viewerWrapper/commands/pretreatment/editJointWeight/editJointWeightConfig.ts +85 -0
  40. package/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.ts +303 -0
  41. package/src/viewerWrapper/commands/pretreatment/viewWeightProperty/viewWeightPropertyConfig.ts +69 -0
  42. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTJT.d.ts +2 -0
  43. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTJT.d.ts.map +1 -1
  44. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLOADCN.d.ts.map +1 -1
  45. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +2 -0
  46. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  47. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  48. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +6 -0
  49. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  50. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts +1 -1
  51. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts.map +1 -1
  52. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/viewInterfaceManager.d.ts.map +1 -1
  53. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  54. package/types/caeDesign/src/gsDevFx/objects/caeLightObject/caeLightObject.d.ts.map +1 -1
  55. package/types/caeDesign/src/gsDevFx/objects/caeObjects/objectColors.d.ts +1 -0
  56. package/types/caeDesign/src/gsDevFx/objects/caeObjects/objectColors.d.ts.map +1 -1
  57. package/types/caeDesign/src/gsDevFx/objects/loadObjects/loadGroupObject.d.ts.map +1 -1
  58. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceJointWeightObject.d.ts +10 -0
  59. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceJointWeightObject.d.ts.map +1 -0
  60. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceWeightBaseObject.d.ts +24 -0
  61. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceWeightBaseObject.d.ts.map +1 -0
  62. package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts +23 -0
  63. package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts.map +1 -0
  64. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightGroupObject.d.ts +15 -0
  65. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightGroupObject.d.ts.map +1 -0
  66. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightIdObject.d.ts +12 -0
  67. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightIdObject.d.ts.map +1 -0
  68. package/types/caeDesign/src/install.d.ts.map +1 -1
  69. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/showShipImpact/commandShowShipImpact.d.ts.map +1 -1
  70. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addJointWeight/addJointWeightConfig.d.ts +5 -0
  71. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addJointWeight/addJointWeightConfig.d.ts.map +1 -0
  72. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.d.ts +31 -0
  73. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.d.ts.map +1 -0
  74. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts +35 -0
  75. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts.map +1 -0
  76. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/editJointWeightConfig.d.ts +5 -0
  77. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/editJointWeightConfig.d.ts.map +1 -0
  78. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts +24 -0
  79. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts.map +1 -0
  80. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/viewWeightPropertyConfig.d.ts +8 -0
  81. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/viewWeightPropertyConfig.d.ts.map +1 -0
  82. package/types/ceecDesign/src/axiosRequestExport.d.ts +0 -3
  83. package/types/ceecDesign/src/axiosRequestExport.d.ts.map +0 -1
  84. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts +1 -0
  85. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts.map +1 -1
  86. package/types/ceecDesign/src/utils/cookie.d.ts.map +0 -1
@@ -0,0 +1,337 @@
1
+ import { CameraMouse } from "../../../../gsDevFx/operators/cameraMouse";
2
+ import { CommandComponent } from "../../commandComponent";
3
+ import { CAEObjectPreSelector } from "../../../../gsDevFx/operators/cAEObjectPreSelector";
4
+ import { CAEObjectSelector } from "../../../../gsDevFx/operators/caeObjectSelector";
5
+ import { CommandSelect } from "../../../../gsDevFx/commands/commandSelect";
6
+ import { SelectorFiliter } from "../../../../gsDevFx/managers/interfaceManagers/selectionInterfaceManager";
7
+ import AddJointWeightConfig from "./addJointWeightConfig";
8
+ import { WeightGroupObject } from "../../../../gsDevFx/objects/weightObjects/weightGroupObject";
9
+ import { WeightIdObject } from "../../../../gsDevFx/objects/weightObjects/weightIdObject";
10
+ import { JointWeightObject } from "../../../../gsDevFx/objects/weightObjects/jointWeightObject";
11
+ import { JointObject } from "../../../../gsDevFx/objects/caeObjects/jointObject";
12
+ import { DesignBaseObject } from "gs-ceec-design";
13
+ import { BusinessState } from "gs-ceec-design";
14
+ import { Longan } from "gs-bim-air";
15
+ import { CaeNumber } from "../../../../utility/utility";
16
+
17
+ export default class CommandAddJointWeight extends CommandComponent {
18
+ typeName: string = "CommandAddJointWeight";
19
+
20
+ config: AddJointWeightConfig;
21
+ preSelector: CAEObjectPreSelector = null;
22
+ caeObjectSelector: CAEObjectSelector = null;
23
+
24
+ weightGroupRO: WeightGroupObject = null;
25
+ weightIdRO: WeightIdObject = null;
26
+ expectFilter = SelectorFiliter.Joint;
27
+
28
+ constructor() {
29
+ super();
30
+ }
31
+
32
+ begin(): void {
33
+ this.changeOperators();
34
+
35
+ console.log("CommandAddJointWeight");
36
+ this.config = new AddJointWeightConfig();
37
+ this.config.show();
38
+ }
39
+
40
+ restore(): void {
41
+ this.changeOperators();
42
+ this.config.show();
43
+ }
44
+
45
+ changeOperators(): void {
46
+ // 进入命令前清空选中与高亮.
47
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
48
+ this.viewer.updateDisplay();
49
+
50
+ // 清空操作器.
51
+ this.viewer.operatorManager.clear();
52
+ // 添加操作器
53
+ this.viewer.operatorManager.add(new CameraMouse());
54
+
55
+ this.preSelector = new CAEObjectPreSelector();
56
+ this.viewer.operatorManager.add(this.preSelector);
57
+ this.viewer.selectionInterfaceManager.selectorFilter = this.expectFilter;
58
+
59
+ this.caeObjectSelector = new CAEObjectSelector();
60
+ this.viewer.operatorManager.add(this.caeObjectSelector);
61
+ //this.caeObjectSelector.isMultiSelect = true;
62
+
63
+ this.caeObjectSelector.lButtonUp.add(() => {
64
+ setTimeout(() => {
65
+ this.updatePanel();
66
+ }, 0);
67
+ });
68
+ }
69
+
70
+ end(): void {
71
+ this.config.hide();
72
+ super.end();
73
+
74
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
75
+ this.viewer.updateDisplay();
76
+
77
+ if (this.weightGroupRO) {
78
+ this.weightGroupRO.inactive(this.viewer);
79
+ }
80
+
81
+ let commandSelect = new CommandSelect();
82
+ this.process.commandManager.execute(commandSelect);
83
+ }
84
+
85
+ commandOk(): void {
86
+ let data = this.config.properties.items[0].data;
87
+
88
+ let weightGroupID = data.weightGroupID.value;
89
+ let weightID = data.weightID.value;
90
+ if (!weightGroupID) {
91
+ // 没有填质量组数组
92
+ data.tip.value = 3;
93
+ return;
94
+ }
95
+
96
+ let isLegal1 = WeightGroupObject.checkNamelegal(weightGroupID);
97
+ if(!isLegal1) {
98
+ data.tip.value = 4;
99
+ return;
100
+ }
101
+
102
+ let isLegal2 = WeightGroupObject.checkWeightIdNamelegal(weightID);
103
+ if(!isLegal2) {
104
+ data.tip.value = 5;
105
+ return;
106
+ }
107
+
108
+ if (!weightID) {
109
+ // 没有填质量ID数据
110
+ data.tip.value = 3;
111
+ return;
112
+ }
113
+
114
+ let selectedJoints = data.selectedJoints;
115
+ let selectedObjects = new Longan.List<JointObject>();
116
+ if (selectedJoints.listOptions.list.length === 0) {
117
+ // 没有选择点
118
+ data.tip.value = 2;
119
+ return;
120
+ }
121
+
122
+ let factorData = this.config.properties.items[1].data;
123
+ let axisData = this.config.properties.items[2].data;
124
+
125
+ if(!factorData.xFactor.value && !factorData.yFactor.value && !factorData.zFactor.value && !axisData.xAxis.value && !axisData.yAxis.value && !axisData.zAxis.value) {
126
+ data.tip.value = 7;
127
+ return;
128
+ }
129
+
130
+ if(!Number(factorData.xFactor.value) && !Number(factorData.yFactor.value) && !Number(factorData.zFactor.value) && !Number(axisData.xAxis.value) && !Number(axisData.yAxis.value) && !Number(axisData.zAxis.value)) {
131
+ data.tip.value = 7;
132
+ return;
133
+ }
134
+
135
+ let errorNames = "";
136
+ let jointNames = new Array<string>();
137
+ for (let i = 0; i < data.selectedJoints.listOptions.list.length; i++) {
138
+ jointNames.push(data.selectedJoints.listOptions.list[i].label);
139
+ }
140
+ for (let i = 0; i < jointNames.length; i++) {
141
+ let joint = this.process.findCaeObjectByNameInChildObject(
142
+ this.process.caeRenderObjectTreeManager.jointNode,
143
+ jointNames[i]
144
+ );
145
+ if (joint instanceof JointObject) {
146
+ selectedObjects.add(joint);
147
+ } else {
148
+ errorNames += jointNames[i] + ",";
149
+ }
150
+ }
151
+ errorNames = errorNames.substring(0, errorNames.length - 1);
152
+
153
+ if (
154
+ selectedJoints.listOptions.list.length === 1 &&
155
+ selectedObjects.count() === 0
156
+ ) {
157
+ data.tip.value = 6 + "," + errorNames;
158
+ return;
159
+ }
160
+
161
+ if (selectedObjects) {
162
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
163
+
164
+ // 添加点质量.
165
+ this.weightGroupRO =
166
+ this.getAndCreateWeightGroupObjectByName(weightGroupID);
167
+ this.weightIdRO = this.getAndCreateWeightIdObjectByName(
168
+ this.weightGroupRO,
169
+ weightID
170
+ );
171
+
172
+ for (let i = 0; i < selectedObjects.count(); i++) {
173
+ let selectedObj = selectedObjects.items[i];
174
+ let jointWeight = null;
175
+ for (let j = 0; j < this.weightIdRO.childObjects.length; j++) {
176
+ let weight = this.weightIdRO.childObjects[j];
177
+ if (weight instanceof JointWeightObject) {
178
+ if (weight.jointName === selectedObj.name) {
179
+ jointWeight = weight;
180
+ weight.businessState = BusinessState.Editing;
181
+ break;
182
+ }
183
+ }
184
+ }
185
+ if (!jointWeight) {
186
+ jointWeight = new JointWeightObject(weightGroupID, weightID);
187
+ jointWeight.name = "Joint:" + selectedObj.name;
188
+ jointWeight.businessState = BusinessState.Creating;
189
+ jointWeight.jointName = selectedObj.name;
190
+
191
+ this.process.addRenderObject(this.weightIdRO, jointWeight);
192
+ }
193
+ jointWeight.weight = CaeNumber(data.weight.value);
194
+ jointWeight.density = CaeNumber(data.density.value);
195
+
196
+ jointWeight.xFactor = CaeNumber(factorData.xFactor.value);
197
+ jointWeight.yFactor = CaeNumber(factorData.yFactor.value);
198
+ jointWeight.zFactor = CaeNumber(factorData.zFactor.value);
199
+
200
+ jointWeight.xAxis = CaeNumber(axisData.xAxis.value);
201
+ jointWeight.yAxis = CaeNumber(axisData.yAxis.value);
202
+ jointWeight.zAxis = CaeNumber(axisData.zAxis.value);
203
+ }
204
+
205
+ this.viewer.updateDisplay();
206
+ if (errorNames) {
207
+ data.tip.value = 1 + "," + errorNames;
208
+ } else {
209
+ data.tip.value = 1;
210
+ }
211
+ }
212
+ }
213
+
214
+ updatePanel() {
215
+ if (
216
+ this.viewer.selectionInterfaceManager.selectorFilter === this.expectFilter
217
+ ) {
218
+ // 更新面板的选中点列表.
219
+ let data = this.config.properties.items[0].data;
220
+ data.selectedJoints.listOptions.list = [];
221
+ let objects = this.caeObjectSelector.selectedRenderObjects;
222
+ for (let i = 0; i < objects.count(); i++) {
223
+ let object = objects.items[i];
224
+ if (object instanceof JointObject) {
225
+ data.selectedJoints.listOptions.list.push({
226
+ value: object.id,
227
+ label: object.name,
228
+ });
229
+ }
230
+ }
231
+ }
232
+ }
233
+
234
+ private getAndCreateWeightGroupObjectByName(weightGroupID: string) {
235
+ let weightGroupRO = this.getWeightGroupObjectByName(weightGroupID);
236
+
237
+ if (!weightGroupRO) {
238
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
239
+ "前处理可视化辅助"
240
+ ) as DesignBaseObject;
241
+
242
+ let weightGroupParent = this.process.findCaeObjectByNameInChildObject(
243
+ pretreatmentRO,
244
+ "附加质量"
245
+ ) as DesignBaseObject;
246
+
247
+ if (!weightGroupParent) {
248
+ weightGroupParent = new DesignBaseObject();
249
+ weightGroupParent.businessState = BusinessState.Creating;
250
+ weightGroupParent.name = "附加质量";
251
+ this.process.addRenderObject(pretreatmentRO, weightGroupParent);
252
+ }
253
+
254
+ weightGroupRO = new WeightGroupObject(weightGroupID);
255
+ weightGroupRO.businessState = BusinessState.Creating;
256
+ this.process.addRenderObject(weightGroupParent, weightGroupRO);
257
+ } else {
258
+ weightGroupRO.businessState = BusinessState.Editing;
259
+ }
260
+
261
+ return weightGroupRO;
262
+ }
263
+
264
+ private getWeightGroupObjectByName(weightGroupID: string) {
265
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
266
+ "前处理可视化辅助"
267
+ ) as DesignBaseObject;
268
+ let weightGroupParent =
269
+ this.viewer.process.findCaeObjectByNameInChildObject(
270
+ pretreatmentRO,
271
+ "附加质量"
272
+ ) as DesignBaseObject;
273
+
274
+ if (!weightGroupParent) {
275
+ weightGroupParent = new DesignBaseObject();
276
+ weightGroupParent.businessState = BusinessState.Creating;
277
+ weightGroupParent.name = "附加质量";
278
+ this.process.addRenderObject(pretreatmentRO, weightGroupParent);
279
+ }
280
+
281
+ let weightGroupRO = this.process.findCaeObjectByNameInChildObject(
282
+ weightGroupParent,
283
+ weightGroupID
284
+ ) as WeightGroupObject;
285
+
286
+ return weightGroupRO;
287
+ }
288
+
289
+ private getWeightIdObjectByName(
290
+ weightGroup: WeightGroupObject,
291
+ weightID: string
292
+ ) {
293
+ let weightIdRO = this.process.findCaeObjectByNameInChildObject(
294
+ weightGroup,
295
+ weightID
296
+ ) as WeightIdObject;
297
+
298
+ return weightIdRO;
299
+ }
300
+
301
+ private getAndCreateWeightIdObjectByName(
302
+ weightGroup: WeightGroupObject,
303
+ weightID: string
304
+ ) {
305
+ let weightIdRO = this.getWeightIdObjectByName(weightGroup, weightID);
306
+ if (!weightIdRO) {
307
+ weightIdRO = new WeightIdObject(weightID);
308
+ weightIdRO.businessState = BusinessState.Creating;
309
+ this.process.addRenderObject(weightGroup, weightIdRO);
310
+ } else {
311
+ weightIdRO.businessState = BusinessState.Editing;
312
+ }
313
+
314
+ return weightIdRO;
315
+ }
316
+
317
+ getWeightGroups() {
318
+ let weightGroups =
319
+ this.viewer.process.findRenderObjectsByType("WeightGroupObject");
320
+ return weightGroups;
321
+ }
322
+
323
+ getWeightIds(weightGroupID: string) {
324
+ let weightGroups = this.getWeightGroups();
325
+ let weightIds = new Array<WeightIdObject>();
326
+ for (let i = 0; i < weightGroups.length; i++) {
327
+ if (weightGroups[i].name === weightGroupID) {
328
+ for (let j = 0; j < weightGroups[i].childObjects.length; j++) {
329
+ let weightId = weightGroups[i].childObjects[j] as WeightIdObject;
330
+ weightIds.push(weightId);
331
+ }
332
+ }
333
+ }
334
+
335
+ return weightIds;
336
+ }
337
+ }