gs-cae-design 1.1.60 → 1.1.62

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 (171) hide show
  1. package/README.md +21 -0
  2. package/docs/classes/CommandInterfaceManager.md +37 -0
  3. package/docs/classes/CommonInterfaceManager.md +13 -0
  4. package/lib/.gz +0 -0
  5. package/lib/CAEDesign.common-report.html +2 -2
  6. package/lib/CAEDesign.common.js +163 -119
  7. package/lib/CAEDesign.umd-report.html +2 -2
  8. package/lib/CAEDesign.umd.js +163 -119
  9. package/lib/CAEDesign.umd.min-report.html +2 -2
  10. package/lib/CAEDesign.umd.min.js +163 -119
  11. package/package.json +1 -1
  12. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.ts +12 -4
  13. package/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.ts +1 -2
  14. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.ts +21 -1
  15. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.ts +21 -1
  16. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFWT.ts +21 -1
  17. package/src/caeCardEditor/caeCardObjects/sacinp/cardWINSHL.ts +109 -0
  18. package/src/caeCardEditor/caeCardObjects/seainp/cardCDM.ts +17 -0
  19. package/src/caeCardEditor/caeCardObjects/seainp/cardCURR.ts +6 -1
  20. package/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.ts +15 -2
  21. package/src/caeCardEditor/caeCardObjects/seainp/cardWAVE.ts +2 -0
  22. package/src/caeCardEditor/caeCardObjects/seainp/cardWIND.ts +1 -1
  23. package/src/gsDevFx/managers/caeRenderObjectTreeManager.ts +1 -2
  24. package/src/gsDevFx/managers/cloudMemberTransformManager.ts +6 -0
  25. package/src/gsDevFx/managers/datReaderManager.ts +434 -184
  26. package/src/gsDevFx/managers/datWriterManager.ts +26 -2
  27. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +35 -0
  28. package/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.ts +11 -1
  29. package/src/gsDevFx/managers/persistenceManager.ts +4 -2
  30. package/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.ts +2 -2
  31. package/src/gsDevFx/objects/caeObjects/memberObject.ts +4 -0
  32. package/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.ts +95 -0
  33. package/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.ts +19 -24
  34. package/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.ts +106 -0
  35. package/src/gsDevFx/objects/loadObjects/currLoadObject.ts +16 -0
  36. package/src/gsDevFx/objects/loadObjects/loadConditionObject.ts +12 -2
  37. package/src/gsDevFx/objects/loadObjects/waveLoadObject.ts +3 -1
  38. package/src/gsDevFx/objects/loadObjects/windLoadObject.ts +6 -6
  39. package/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.ts +6 -0
  40. package/src/gsDevFx/process.ts +17 -2
  41. package/src/gsDevFx/viewer.ts +1 -4
  42. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.ts +60 -0
  43. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/commandAddCoefficientDragMass.ts +167 -0
  44. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.ts +50 -24
  45. package/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.ts +46 -19
  46. package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.ts +30 -4
  47. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/addWaveLoadConfig.ts +22 -22
  48. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.ts +90 -26
  49. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.ts +1 -1
  50. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.ts +37 -22
  51. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.ts +93 -8
  52. package/src/viewerWrapper/commands/aftertreatment/editDeadLoad/commandEditDeadLoad.ts +299 -0
  53. package/src/viewerWrapper/commands/aftertreatment/editDeadLoad/editDeadLoadConfig.ts +175 -0
  54. package/src/viewerWrapper/commands/aftertreatment/editJointLoad/commandEditJointLoad.ts +1 -1
  55. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.ts +134 -8
  56. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.ts +84 -11
  57. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.ts +1 -1
  58. package/src/viewerWrapper/commands/commandSplitMemberBase.ts +14 -0
  59. package/src/viewerWrapper/commands/createGrup/commandCreateGrup.ts +1 -0
  60. package/src/viewerWrapper/commands/createSection/commandCreateSection.ts +2 -0
  61. package/src/viewerWrapper/commands/editGrup/commandEditGrup.ts +30 -40
  62. package/src/viewerWrapper/commands/editSection/commandEditSection.ts +4 -0
  63. package/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.ts +5 -1
  64. package/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.ts +1 -1
  65. package/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.ts +80 -2
  66. package/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.ts +88 -1
  67. package/src/viewerWrapper/commands/pretreatment/importBoreholes/commandImportBoreholes.ts +23 -7
  68. package/src/viewerWrapper/commands/pretreatment/importBoreholes/importBoreholesConfig.ts +4 -0
  69. package/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.ts +34 -1
  70. package/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.ts +0 -0
  71. package/src/viewerWrapper/commands/pretreatment/windArea/windAreaConfig.ts +69 -0
  72. package/src/viewerWrapper/commands/pretreatment/windShield/commandWindShield.ts +147 -0
  73. package/src/viewerWrapper/commands/pretreatment/windShield/windShieldConfig.ts +81 -0
  74. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts +7 -4
  75. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts.map +1 -1
  76. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.d.ts.map +1 -1
  77. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts +2 -0
  78. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts.map +1 -1
  79. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.d.ts +2 -0
  80. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.d.ts.map +1 -1
  81. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFWT.d.ts +2 -0
  82. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFWT.d.ts.map +1 -1
  83. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWINSHL.d.ts +84 -0
  84. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWINSHL.d.ts.map +1 -0
  85. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardCDM.d.ts +2 -0
  86. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardCDM.d.ts.map +1 -1
  87. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardCURR.d.ts.map +1 -1
  88. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.d.ts +2 -0
  89. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.d.ts.map +1 -1
  90. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWAVE.d.ts.map +1 -1
  91. package/types/caeDesign/src/gsDevFx/managers/caeRenderObjectTreeManager.d.ts.map +1 -1
  92. package/types/caeDesign/src/gsDevFx/managers/cloudMemberTransformManager.d.ts.map +1 -1
  93. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +9 -6
  94. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  95. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  96. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +6 -0
  97. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  98. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts +2 -0
  99. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts.map +1 -1
  100. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  101. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.d.ts +1 -1
  102. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.d.ts.map +1 -1
  103. package/types/caeDesign/src/gsDevFx/objects/caeObjects/memberObject.d.ts.map +1 -1
  104. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.d.ts +20 -0
  105. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.d.ts.map +1 -0
  106. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts +2 -1
  107. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts.map +1 -1
  108. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.d.ts +23 -0
  109. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.d.ts.map +1 -0
  110. package/types/caeDesign/src/gsDevFx/objects/loadObjects/currLoadObject.d.ts.map +1 -1
  111. package/types/caeDesign/src/gsDevFx/objects/loadObjects/loadConditionObject.d.ts.map +1 -1
  112. package/types/caeDesign/src/gsDevFx/objects/loadObjects/waveLoadObject.d.ts.map +1 -1
  113. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts +1 -1
  114. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts.map +1 -1
  115. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.d.ts.map +1 -1
  116. package/types/caeDesign/src/gsDevFx/process.d.ts +7 -0
  117. package/types/caeDesign/src/gsDevFx/process.d.ts.map +1 -1
  118. package/types/caeDesign/src/gsDevFx/propertyComponents/propertyComponent.vue.d.ts +13 -0
  119. package/types/caeDesign/src/gsDevFx/viewer.d.ts.map +1 -1
  120. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.d.ts +8 -0
  121. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.d.ts.map +1 -0
  122. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/commandAddCoefficientDragMass.d.ts +18 -0
  123. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/commandAddCoefficientDragMass.d.ts.map +1 -0
  124. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts +1 -1
  125. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts.map +1 -1
  126. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.d.ts +5 -0
  127. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.d.ts.map +1 -1
  128. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts +1 -0
  129. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts.map +1 -1
  130. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts +1 -1
  131. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts.map +1 -1
  132. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts +1 -1
  133. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts.map +1 -1
  134. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts +4 -0
  135. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts.map +1 -1
  136. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editDeadLoad/commandEditDeadLoad.d.ts +29 -0
  137. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editDeadLoad/commandEditDeadLoad.d.ts.map +1 -0
  138. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editDeadLoad/editDeadLoadConfig.d.ts +12 -0
  139. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editDeadLoad/editDeadLoadConfig.d.ts.map +1 -0
  140. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts +4 -0
  141. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts.map +1 -1
  142. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts +4 -0
  143. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts.map +1 -1
  144. package/types/caeDesign/src/viewerWrapper/commands/commandSplitMemberBase.d.ts.map +1 -1
  145. package/types/caeDesign/src/viewerWrapper/commands/createGrup/commandCreateGrup.d.ts.map +1 -1
  146. package/types/caeDesign/src/viewerWrapper/commands/createSection/commandCreateSection.d.ts.map +1 -1
  147. package/types/caeDesign/src/viewerWrapper/commands/editGrup/commandEditGrup.d.ts.map +1 -1
  148. package/types/caeDesign/src/viewerWrapper/commands/editSection/commandEditSection.d.ts.map +1 -1
  149. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.d.ts.map +1 -1
  150. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts +2 -0
  151. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts.map +1 -1
  152. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts +2 -0
  153. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts.map +1 -1
  154. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/importBoreholes/commandImportBoreholes.d.ts.map +1 -1
  155. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/importBoreholes/importBoreholesConfig.d.ts.map +1 -1
  156. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.d.ts +2 -0
  157. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.d.ts.map +1 -1
  158. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts +1 -0
  159. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts.map +1 -0
  160. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/windAreaConfig.d.ts +5 -0
  161. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/windAreaConfig.d.ts.map +1 -0
  162. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windShield/commandWindShield.d.ts +16 -0
  163. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windShield/commandWindShield.d.ts.map +1 -0
  164. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windShield/windShieldConfig.d.ts +6 -0
  165. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windShield/windShieldConfig.d.ts.map +1 -0
  166. package/types/ceecDesign/src/api/renderObjectServices.d.ts +15 -0
  167. package/types/ceecDesign/src/api/renderObjectServices.d.ts.map +1 -0
  168. package/types/ceecDesign/src/axiosRequestExport.d.ts +0 -3
  169. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts +18 -0
  170. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts.map +1 -0
  171. package/types/ceecDesign/src/utils/cookie.d.ts.map +0 -1
@@ -0,0 +1,299 @@
1
+ import { CommandComponent } from "../../commandComponent";
2
+ import EditDeadLoadConfig from "./editDeadLoadConfig";
3
+ import { LoadConditionObject } from "../../../../gsDevFx/objects/loadObjects/loadConditionObject";
4
+ import { DeadLoadObject } from "../../../../gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject";
5
+ import { DesignBaseObject } from "gs-ceec-design";
6
+ import { BusinessState } from "gs-ceec-design";
7
+ import { LoadCombinationGroupObject } from "../../../../gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject";
8
+ export default class CommandEditDeadLoad extends CommandComponent {
9
+ typeName = "CommandEditDeadLoad";
10
+ config: EditDeadLoadConfig;
11
+ loadConditionRO: LoadConditionObject = null;
12
+ currentDeadLoadRO: DeadLoadObject = null;
13
+ deadLoadRo: DeadLoadObject = null;
14
+ constructor() {
15
+ super();
16
+ }
17
+ begin(): void {
18
+ this.config = new EditDeadLoadConfig();
19
+ this.config.show();
20
+ this.changeOperators();
21
+ this.deadLoadRo = new DeadLoadObject();
22
+
23
+ this.config.loadConditionNameChange = () => {
24
+ this.showCurrentloadConditionName();
25
+ };
26
+ }
27
+ restore(): void {
28
+ this.changeOperators();
29
+ this.config.show();
30
+ this.config.refreshLoadCondition();
31
+ }
32
+
33
+ end(): void {
34
+ this.config.hide();
35
+ super.end();
36
+ }
37
+ commandOk(): void {
38
+ console.log("commandOk", this.config);
39
+ let data = this.config.properties.items[0].data;
40
+ data.tip.value = null;
41
+ const {
42
+ loadConditionName,
43
+ buoyancyCalculationMethod,
44
+ gravityDirection,
45
+ floodedConditionOverride,
46
+ waterDepthOverride,
47
+ mudlineElevationOverride,
48
+ waterDensityOverride,
49
+ includeBuoyancyBelowMudline,
50
+ includeMarineGrowthOnly,
51
+ dlRationalOption,
52
+ } = data;
53
+ // 水深覆盖值 填写值需>0,可为空;
54
+ if (
55
+ waterDepthOverride.value !== null &&
56
+ waterDepthOverride.value !== "" &&
57
+ waterDepthOverride.value < 0
58
+ ) {
59
+ data.tip.value = 2;
60
+ return;
61
+ }
62
+ // 覆盖水密度 填写值需>0,可为空;
63
+ if (
64
+ waterDensityOverride.value !== null &&
65
+ waterDensityOverride.value !== "" &&
66
+ waterDensityOverride.value < 0
67
+ ) {
68
+ data.tip.value = 3;
69
+ return;
70
+ }
71
+
72
+ // 校验结束
73
+ this.loadConditionRO = this.getAndCreateLoadConditionObjectByName(
74
+ loadConditionName.value
75
+ );
76
+ let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
77
+ this.loadConditionRO
78
+ );
79
+ for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
80
+ const item = loadGroupRO.childObjects[i] as DesignBaseObject;
81
+ item.tempDelete(this.viewer);
82
+ item.businessState = BusinessState.Deleting;
83
+ }
84
+ console.log("编辑前loadGroupRO", loadGroupRO);
85
+
86
+ this.deadLoadRo = new DeadLoadObject(loadConditionName.value);
87
+
88
+ let deadLoadObjectItem = this.deadLoadRo;
89
+
90
+ deadLoadObjectItem.businessState = BusinessState.Creating;
91
+ deadLoadObjectItem.loadConditionName = loadConditionName.value;
92
+ deadLoadObjectItem.buoyancyCalculationMethod =
93
+ buoyancyCalculationMethod.value;
94
+ deadLoadObjectItem.gravityDirection = gravityDirection.value;
95
+ deadLoadObjectItem.floodedConditionOverride =
96
+ floodedConditionOverride.value;
97
+ deadLoadObjectItem.waterDepthOverride = waterDepthOverride.value;
98
+ deadLoadObjectItem.mudlineElevationOverride =
99
+ mudlineElevationOverride.value;
100
+ deadLoadObjectItem.waterDensityOverride = waterDensityOverride.value;
101
+ deadLoadObjectItem.includeBuoyancyBelowMudline =
102
+ includeBuoyancyBelowMudline.value;
103
+ deadLoadObjectItem.includeMarineGrowthOnly = includeMarineGrowthOnly.value;
104
+ deadLoadObjectItem.dlRationalOption = dlRationalOption.value;
105
+ this.process.addRenderObject(loadGroupRO, deadLoadObjectItem);
106
+ // 添加荷载工况
107
+
108
+ data.tip.value = 6;
109
+ }
110
+ // 切换当前命令所需操作器(设置鼠标行为)
111
+ changeOperators(): void {
112
+ // 进入命令前清空选中与高亮.
113
+ // 进入命令前清空选中与高亮.
114
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
115
+ this.viewer.updateDisplay();
116
+
117
+ // 清空操作器.
118
+ this.viewer.operatorManager.clear();
119
+ }
120
+ // 获取荷载工况节点
121
+ updateLoadCondition(): void {
122
+ this.config.refreshLoadCondition();
123
+ }
124
+
125
+ // 删除指定荷载工况的自重荷载
126
+ deletLoadConditionObjectByName(loadConditionName) {
127
+ // 校验结束
128
+ this.loadConditionRO =
129
+ this.getAndCreateLoadConditionObjectByName(loadConditionName);
130
+ let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
131
+ this.loadConditionRO
132
+ );
133
+ for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
134
+ const item = loadGroupRO.childObjects[i] as DesignBaseObject;
135
+ item.tempDelete(this.viewer);
136
+ item.businessState = BusinessState.Deleting;
137
+ }
138
+ }
139
+ // 删除指定的荷载工况
140
+ deletLoadConditionByName(loadConditionName) {
141
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
142
+ "后处理计算结果"
143
+ ) as DesignBaseObject;
144
+
145
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
146
+ pretreatmentRO,
147
+ "荷载工况"
148
+ ) as DesignBaseObject;
149
+ let loadConditionRO = this.process.findCaeObjectByNameInChildObject(
150
+ conditionParent,
151
+ loadConditionName
152
+ ) as LoadConditionObject;
153
+ console.log("删除指定的荷载工况", loadConditionRO);
154
+ loadConditionRO.tempDelete(this.viewer);
155
+ loadConditionRO.businessState = BusinessState.Deleting;
156
+ this.config.refreshLoadCondition();
157
+ }
158
+ // 获取指定荷载工况名的节点
159
+ getLoadConditionObjectByName(loadConditionName: string) {
160
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
161
+ "后处理计算结果"
162
+ ) as DesignBaseObject;
163
+
164
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
165
+ pretreatmentRO,
166
+ "荷载工况"
167
+ ) as DesignBaseObject;
168
+
169
+ if (!conditionParent) {
170
+ conditionParent = new DesignBaseObject();
171
+ conditionParent.businessState = BusinessState.Creating;
172
+ conditionParent.name = "荷载工况";
173
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
174
+ }
175
+
176
+ let loadConditionRO = this.process.findCaeObjectByNameInChildObject(
177
+ conditionParent,
178
+ loadConditionName
179
+ ) as LoadConditionObject;
180
+ console.log("loadConditionRO", loadConditionRO);
181
+
182
+ return loadConditionRO;
183
+ }
184
+
185
+ deletLoadConditionFun(loadConditionName) {
186
+ const loadConditionRo =
187
+ this.getLoadConditionObjectByName(loadConditionName);
188
+ const childRo = this.process.findCaeObjectByNameInChildObject(
189
+ loadConditionRo,
190
+ "DEADLoads"
191
+ ) as DeadLoadObject;
192
+ console.log('deletLoadConditionFun',loadConditionRo,childRo);
193
+
194
+ if (childRo) {
195
+ // 如果有自重荷载的项,则删除自重荷载的项目
196
+ this.deletLoadConditionObjectByName(loadConditionName);
197
+ if (loadConditionRo.childObjects.length === 1) {
198
+ // 只有自重荷载这一项 删除这个荷载工况
199
+ this.deletLoadConditionByName(loadConditionName);
200
+ return {deletChild:true,deletLoadCondition:true}
201
+ }
202
+ return {deletChild:true,deletLoadCondition:false}
203
+ }
204
+ return {deletChild:false,deletLoadCondition:false}
205
+ }
206
+
207
+ private getAndCreateLoadConditionObjectByName(loadConditionName: string) {
208
+ let loadConditionRO = this.getLoadConditionObjectByName(loadConditionName);
209
+
210
+ if (!loadConditionRO) {
211
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
212
+ "后处理计算结果"
213
+ ) as DesignBaseObject;
214
+
215
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
216
+ pretreatmentRO,
217
+ "荷载工况"
218
+ ) as DesignBaseObject;
219
+
220
+ if (!conditionParent) {
221
+ conditionParent = new DesignBaseObject();
222
+ conditionParent.businessState = BusinessState.Creating;
223
+ conditionParent.name = "荷载工况";
224
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
225
+ }
226
+
227
+ loadConditionRO = new LoadConditionObject(loadConditionName);
228
+ loadConditionRO.businessState = BusinessState.Creating;
229
+ this.process.addRenderObject(conditionParent, loadConditionRO);
230
+ } else {
231
+ loadConditionRO.businessState = BusinessState.Editing;
232
+ }
233
+
234
+ return loadConditionRO;
235
+ }
236
+ private getAndCreateLoadGroupByLoadCondition(
237
+ loadCondition: LoadConditionObject
238
+ ) {
239
+ let loadGroupRO = this.process.findCaeObjectByNameInChildObject(
240
+ loadCondition,
241
+ "DEADLoads"
242
+ ) as DesignBaseObject;
243
+ if (!loadGroupRO) {
244
+ loadGroupRO = new DesignBaseObject();
245
+ loadGroupRO.name = "DEADLoads";
246
+ loadGroupRO.businessState = BusinessState.Creating;
247
+ this.process.addRenderObject(loadCondition, loadGroupRO);
248
+ } else {
249
+ loadGroupRO.businessState = BusinessState.Editing;
250
+ }
251
+
252
+ return loadGroupRO;
253
+ }
254
+
255
+ // 获取当前选中的荷载工况的自重荷载的值
256
+ showCurrentloadConditionName() {
257
+ console.log("获取当前选中的荷载工况的自重荷载的值!!!!!");
258
+ const info = {
259
+ buoyancyCalculationMethod: "", // 浮力计算方法
260
+ gravityDirection: "", // 重力方向
261
+ floodedConditionOverride: "", // 淹没条件覆盖选项
262
+ waterDepthOverride: null, //水深覆盖值
263
+ mudlineElevationOverride: null, //泥面高程覆盖值
264
+ waterDensityOverride: "", // 覆盖水密度
265
+ includeBuoyancyBelowMudline: false, //计算泥面以下浮力
266
+ includeMarineGrowthOnly: false, // 仅计算海生物附着重量
267
+ dlRationalOption: false, //启用精确法压力计算选项
268
+ };
269
+ const loadConditionName =
270
+ this.config.properties.items[0].data.loadConditionName.value;
271
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
272
+ "后处理计算结果"
273
+ ) as DesignBaseObject;
274
+
275
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
276
+ pretreatmentRO,
277
+ "荷载工况"
278
+ ) as DesignBaseObject;
279
+ let loadConditionRO = this.process.findCaeObjectByNameInChildObject(
280
+ conditionParent,
281
+ loadConditionName
282
+ ) as LoadConditionObject;
283
+ const deadLoadsGroup = loadConditionRO?.childObjects?.[0];
284
+ if (deadLoadsGroup?.name !== "DEADLoads") {
285
+ Object.keys(info).forEach((key) => {
286
+ this.config.properties.items[0].data[key].value = info[key];
287
+ });
288
+ return;
289
+ }
290
+ const activeItem = deadLoadsGroup.childObjects?.find(
291
+ (item) =>
292
+ item instanceof DeadLoadObject && item.checkBusinessStateIsActive()
293
+ );
294
+
295
+ Object.keys(info).forEach((key) => {
296
+ this.config.properties.items[0].data[key].value = activeItem[key];
297
+ });
298
+ }
299
+ }
@@ -0,0 +1,175 @@
1
+ import { Config } from "../../../../gsDevFx/propertyComponents/config";
2
+ import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
3
+ import { Process } from "../../../../gsDevFx/process";
4
+ import { LoadConditionObject } from "../../../../gsDevFx/objects/loadObjects/loadConditionObject";
5
+ import { DeadLoadObject } from "../../../../gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject";
6
+ export default class EditDeadLoadConfig extends Config {
7
+ loadConditionList: { value: any; name: string }[] = [];
8
+
9
+ constructor() {
10
+ super();
11
+ let property = new PropertyComponent();
12
+ property.name = "编辑自重荷载";
13
+ property.data = {
14
+ loadConditionName: {
15
+ name: "荷载工况",
16
+ value: null,
17
+ type: "select",
18
+ selectOptions: {
19
+ clearable: true,
20
+ selections: [],
21
+ change: () => {
22
+ this.loadConditionNameChange();
23
+ },
24
+ },
25
+ },
26
+ buoyancyCalculationMethod: {
27
+ name: "浮力计算方法",
28
+ value: null,
29
+ type: "select",
30
+ selectOptions: {
31
+ selections: [
32
+ { label: "海工法 – 仅考虑分布浮力", value: "M" },
33
+ { label: "精确法 – 考虑分布浮力与端部反力", value: "R" },
34
+ { label: "精确法 – 考虑水压衰减", value: "A" },
35
+ { label: "精确法 – 泥面以下浮力恒定处理", value: "P" },
36
+ ],
37
+ },
38
+ },
39
+ gravityDirection: {
40
+ name: "重力方向",
41
+ value: null,
42
+ type: "select",
43
+ selectOptions: {
44
+ selections: [
45
+ { label: "+X", value: "+X" },
46
+ { label: "+Y", value: "+Y" },
47
+ { label: "+Z", value: "+Z" },
48
+ { label: "-X", value: "-X" },
49
+ { label: "-Y", value: "-Y" },
50
+ { label: "-Z", value: "-Z" },
51
+ ],
52
+ },
53
+ },
54
+ floodedConditionOverride: {
55
+ name: "淹没条件覆盖选项",
56
+ value: null,
57
+ type: "select",
58
+ selectOptions: {
59
+ selections: [
60
+ { label: "无", value: "none" },
61
+ { label: "所有杆件不充水", value: "NFL" },
62
+ { label: "所有杆件充水", value: "FLD" },
63
+ ],
64
+ },
65
+ },
66
+ waterDepthOverride: {
67
+ name: "水深覆盖值",
68
+ value: null,
69
+ type: "select",
70
+ },
71
+ mudlineElevationOverride: {
72
+ name: "泥面高程覆盖值",
73
+ value: null,
74
+ },
75
+ waterDensityOverride: {
76
+ name: "覆盖水密度",
77
+ value: null,
78
+ },
79
+ includeBuoyancyBelowMudline: {
80
+ name: "计算泥面以下浮力",
81
+ value: false,
82
+ },
83
+ includeMarineGrowthOnly: {
84
+ name: "仅计算海生物附着重量",
85
+ value: false,
86
+ },
87
+ dlRationalOption: {
88
+ name: "启用精确法压力计算选项",
89
+ value: false,
90
+ },
91
+ tip: {
92
+ name: "提示",
93
+ value: null,
94
+ },
95
+ };
96
+ this.properties.add(property);
97
+ this.refreshLoadCondition();
98
+ setTimeout(() => {
99
+ this.refreshChildInfo();
100
+ }, 0);
101
+ }
102
+ refreshChildInfo() {
103
+ let property = this.properties.items[0];
104
+
105
+ if (this.loadConditionList.length === 0) {
106
+ return;
107
+ }
108
+ const loadConditionName = this.loadConditionList[0];
109
+ let info = {
110
+ loadConditionName,
111
+ buoyancyCalculationMethod: "", // 浮力计算方法
112
+ gravityDirection: "", // 重力方向
113
+ floodedConditionOverride: "", // 淹没条件覆盖选项
114
+ waterDepthOverride: null, //水深覆盖值
115
+ mudlineElevationOverride: null, //泥面高程覆盖值
116
+ waterDensityOverride: "", // 覆盖水密度
117
+ includeBuoyancyBelowMudline: false, //计算泥面以下浮力
118
+ includeMarineGrowthOnly: false, // 仅计算海生物附着重量
119
+ dlRationalOption: false, //启用精确法压力计算选项
120
+ };
121
+ let conditionParent =
122
+ Process.activeProcess.findRenderObjectByName("荷载工况");
123
+ let loadConditionRO =
124
+ Process.activeProcess.findCaeObjectByNameInChildObject(
125
+ conditionParent,
126
+ loadConditionName
127
+ ) as LoadConditionObject;
128
+ const deadLoadsGroup = loadConditionRO?.childObjects?.[0];
129
+ // 如果没有自重荷载的值,则设置为默认值
130
+ if (deadLoadsGroup?.name !== "DEADLoads") {
131
+ Object.keys(info).forEach((key) => {
132
+ let value = info[key];
133
+ property.data[key].value = value;
134
+ });
135
+ return;
136
+ }
137
+ // 如果有自重荷载的值
138
+ const activeItem = deadLoadsGroup.childObjects?.find(
139
+ (item) =>
140
+ item instanceof DeadLoadObject && item.checkBusinessStateIsActive()
141
+ );
142
+ Object.keys(info).forEach((key) => {
143
+ let value = activeItem[key];
144
+ property.data[key].value = value;
145
+ });
146
+ }
147
+ // 获取荷载工况数据
148
+ refreshLoadCondition() {
149
+ const loadConditionList = [];
150
+ let loadConditionGroup =
151
+ Process.activeProcess.findRenderObjectByName("荷载工况");
152
+
153
+ if (
154
+ loadConditionGroup?._childObjects &&
155
+ loadConditionGroup?._childObjects?.length
156
+ ) {
157
+ for (let i = 0; i < loadConditionGroup._childObjects.length; i++) {
158
+ let child = loadConditionGroup._childObjects[i];
159
+ if (
160
+ child instanceof LoadConditionObject &&
161
+ child.checkBusinessStateIsActive()
162
+ ) {
163
+ // 只添加有效的表面定义对象
164
+ if (child?.name) {
165
+ loadConditionList.push(child.name);
166
+ }
167
+ }
168
+ }
169
+ }
170
+ this.loadConditionList = loadConditionList;
171
+ console.log("loadConditionList", loadConditionList);
172
+ }
173
+ // 切换荷载工况
174
+ loadConditionNameChange() {}
175
+ }
@@ -186,7 +186,7 @@ export default class CommandEditJointLoad extends CommandComponent {
186
186
 
187
187
  for (let j = 0; j < loadGroupRO.childObjects.length; j++) {
188
188
  let load = loadGroupRO.childObjects[j];
189
- if (load instanceof JointLoadObject) {
189
+ if (load instanceof JointLoadObject && load.checkBusinessStateIsActive()) {
190
190
  if (load.jointName === selectedObj.name) {
191
191
  counter++;
192
192
  jointLoad = load;
@@ -8,7 +8,7 @@ import { DesignBaseObject } from "gs-ceec-design";
8
8
  import { LoadConditionObject } from "../../../../gsDevFx/objects/loadObjects/loadConditionObject";
9
9
  import { BusinessState } from "gs-ceec-design";
10
10
  import { CaeNumber } from "../../../../utility/utility";
11
- import { WaveLoadObject } from "../../../../gsDevFx/objects/loadObjects/waveLoadObject";
11
+ import { WaveLoadObject, WaveType, InputMode, CriticalPosition, PrintOption } from "../../../../gsDevFx/objects/loadObjects/waveLoadObject";
12
12
  import { SeastateLdopt } from "../../../../gsDevFx/objects/caeObjects/optionObjects/seastateLdopt"
13
13
  import { CardLDOPT } from "../../../../caeCardEditor/caeCardObjects/seainp/cardLDOPT"
14
14
 
@@ -20,6 +20,7 @@ export default class CommandEditWaveLoad extends CommandComponent {
20
20
  caeObjectSelector: CAEObjectSelector;
21
21
 
22
22
  loadConditionRO: LoadConditionObject = null;
23
+ loadGroupRO: DesignBaseObject = null;
23
24
 
24
25
  currentWaveLoadRO: WaveLoadObject = null;
25
26
 
@@ -34,6 +35,62 @@ export default class CommandEditWaveLoad extends CommandComponent {
34
35
  this.config = new EditWaveLoadConfig();
35
36
  this.config.show();
36
37
 
38
+ let data = this.config.properties.items[0].data;
39
+
40
+ data.waveType.selectOptions.selections = []
41
+ data.inputMode.selectOptions.selections = []
42
+ data.criticalPosition.selectOptions.selections = []
43
+ data.printOption.selectOptions.selections = []
44
+ if(this.viewer.commonInterfaceManager.showEnglishText) {
45
+ data.waveType.selectOptions.selections.push({label: "Airy", value: WaveType.AIRY })
46
+ // data.waveType.selectOptions.selections.push({label: "Airy Wave", value: WaveType.AIRC })
47
+ data.waveType.selectOptions.selections.push({label: "Stokes", value: WaveType.STOK })
48
+ // data.waveType.selectOptions.selections.push({label: "Stream", value: WaveType.STRE })
49
+ data.waveType.selectOptions.selections.push({label: "StreamN", value: WaveType.STRN })
50
+ // data.waveType.selectOptions.selections.push({label: "Cnoidal", value: WaveType.CNOI })
51
+ // data.waveType.selectOptions.selections.push({label: "Solitary", value: WaveType.SOLI })
52
+ // data.waveType.selectOptions.selections.push({label: "User", value: WaveType.LINE })
53
+ data.waveType.selectOptions.selections.push({label: "Repeat", value: WaveType.REPT })
54
+ data.inputMode.selectOptions.selections.push({ label: "Length", value: InputMode.Length})
55
+ data.inputMode.selectOptions.selections.push({ label: "Degrees", value: InputMode.Degrees})
56
+ data.inputMode.selectOptions.selections.push({ label: "Time", value: InputMode.Time})
57
+ data.criticalPosition.selectOptions.selections.push({ label: "Max overturning moment", value: CriticalPosition.MM })
58
+ data.criticalPosition.selectOptions.selections.push({ label: "Min overturning moment", value: CriticalPosition.NM })
59
+ data.criticalPosition.selectOptions.selections.push({ label: "Max base shear", value: CriticalPosition.MS })
60
+ data.criticalPosition.selectOptions.selections.push({ label: "Min base shear", value: CriticalPosition.NS })
61
+ data.criticalPosition.selectOptions.selections.push({ label: "Max upward force", value: CriticalPosition.MU })
62
+ data.criticalPosition.selectOptions.selections.push({ label: "Max downward force", value: CriticalPosition.MD })
63
+ data.criticalPosition.selectOptions.selections.push({ label: "All positions", value: CriticalPosition.AL })
64
+ data.printOption.selectOptions.selections.push({ label: "Minimum print", value: PrintOption.PrintOption0 })
65
+ data.printOption.selectOptions.selections.push({ label: "Overturning moment and shear", value: PrintOption.PrintOption1 })
66
+ data.printOption.selectOptions.selections.push({ label: "Sum of forces and moments about mudline", value: PrintOption.PrintOption2 })
67
+ data.printOption.selectOptions.selections.push({ label: "Velocity and acceleration of grid points", value: PrintOption.PrintOption3 })
68
+ }else {
69
+ data.waveType.selectOptions.selections.push({label: "线性波", value: WaveType.AIRY })
70
+ // data.waveType.selectOptions.selections.push({label: "线性波浪", value: WaveType.AIRC })
71
+ data.waveType.selectOptions.selections.push({label: "斯托克斯波", value: WaveType.STOK })
72
+ // data.waveType.selectOptions.selections.push({label: "精确流函数波", value: WaveType.STRE })
73
+ data.waveType.selectOptions.selections.push({label: "N阶流函数波", value: WaveType.STRN })
74
+ // data.waveType.selectOptions.selections.push({label: "椭圆余弦波", value: WaveType.CNOI })
75
+ // data.waveType.selectOptions.selections.push({label: "孤立波", value: WaveType.SOLI })
76
+ // data.waveType.selectOptions.selections.push({label: "用户自定义波", value: WaveType.LINE })
77
+ data.waveType.selectOptions.selections.push({label: "复用波浪设置", value: WaveType.REPT })
78
+ data.inputMode.selectOptions.selections.push({ label: "长度", value: InputMode.Length})
79
+ data.inputMode.selectOptions.selections.push({ label: "角度", value: InputMode.Degrees})
80
+ data.inputMode.selectOptions.selections.push({ label: "时间", value: InputMode.Time})
81
+ data.criticalPosition.selectOptions.selections.push({ label: "最大倾覆力矩", value: CriticalPosition.MM })
82
+ data.criticalPosition.selectOptions.selections.push({ label: "最小倾覆力矩", value: CriticalPosition.NM })
83
+ data.criticalPosition.selectOptions.selections.push({ label: "最大基底剪力", value: CriticalPosition.MS })
84
+ data.criticalPosition.selectOptions.selections.push({ label: "最小基底剪力", value: CriticalPosition.NS })
85
+ data.criticalPosition.selectOptions.selections.push({ label: "最大上拔力", value: CriticalPosition.MU })
86
+ data.criticalPosition.selectOptions.selections.push({ label: "最大下压力", value: CriticalPosition.MD })
87
+ data.criticalPosition.selectOptions.selections.push({ label: "所有位置 / 全工况", value: CriticalPosition.AL })
88
+ data.printOption.selectOptions.selections.push({ label: "最简输出", value: PrintOption.PrintOption0 })
89
+ data.printOption.selectOptions.selections.push({ label: "倾覆力矩与剪力", value: PrintOption.PrintOption1 })
90
+ data.printOption.selectOptions.selections.push({ label: "泥线处力与力矩合力", value: PrintOption.PrintOption2 })
91
+ data.printOption.selectOptions.selections.push({ label: "网格点速度与加速度", value: PrintOption.PrintOption3 })
92
+ }
93
+
37
94
  this.config.loadConditionChange = () => {
38
95
  let data = this.config.properties.items[0].data;
39
96
  let loadCondition = data.loadCondition.value
@@ -41,13 +98,13 @@ export default class CommandEditWaveLoad extends CommandComponent {
41
98
  this.loadConditionRO =
42
99
  this.getAndCreateLoadConditionObjectByName(loadCondition);
43
100
 
44
- let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
101
+ this.loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
45
102
  this.loadConditionRO
46
103
  );
47
104
 
48
105
  this.currentWaveLoadRO = null;
49
- for(let i = 0; i < loadGroupRO.childObjects.length; i++) {
50
- let waveLoad = loadGroupRO.childObjects[i] as WaveLoadObject;
106
+ for(let i = 0; i < this.loadGroupRO.childObjects.length; i++) {
107
+ let waveLoad = this.loadGroupRO.childObjects[i] as WaveLoadObject;
51
108
  if(waveLoad.checkBusinessStateIsActive()) {
52
109
  this.currentWaveLoadRO = waveLoad;
53
110
  data.waveType.value = waveLoad.waveType
@@ -156,12 +213,12 @@ export default class CommandEditWaveLoad extends CommandComponent {
156
213
  this.loadConditionRO =
157
214
  this.getAndCreateLoadConditionObjectByName(loadCondition);
158
215
 
159
- let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
216
+ this.loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
160
217
  this.loadConditionRO
161
218
  );
162
219
 
163
- for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
164
- const item = loadGroupRO.childObjects[i] as DesignBaseObject;
220
+ for (let i = 0; i < this.loadGroupRO.childObjects.length; i++) {
221
+ const item = this.loadGroupRO.childObjects[i] as DesignBaseObject;
165
222
  item.tempDelete(this.viewer);
166
223
  item.businessState = BusinessState.Deleting;
167
224
  }
@@ -172,7 +229,7 @@ export default class CommandEditWaveLoad extends CommandComponent {
172
229
 
173
230
  waveLoad.businessState = BusinessState.Creating;
174
231
 
175
- this.process.addRenderObject(loadGroupRO, waveLoad);
232
+ this.process.addRenderObject(this.loadGroupRO, waveLoad);
176
233
 
177
234
  waveLoad.loadCondition = data.loadCondition.value;
178
235
 
@@ -327,4 +384,73 @@ export default class CommandEditWaveLoad extends CommandComponent {
327
384
  );
328
385
  return loadConditions;
329
386
  }
387
+
388
+ deleteLoadGroup(loadConditionName: string) {
389
+ let data = this.config.properties.items[0].data;
390
+
391
+ // 添加或修改工况.
392
+ let loadConditionRO = this.getLoadConditionObjectByName(loadConditionName);
393
+ if (!loadConditionRO) {
394
+ // 没有查找到对应的工况或荷载组
395
+ data.tip.value = 2;
396
+ return;
397
+ }
398
+
399
+ let loadGroupRO = this.process.findCaeObjectByNameInChildObject(
400
+ loadConditionRO,
401
+ "WAVELoads"
402
+ ) as DesignBaseObject;
403
+ if (!loadGroupRO) {
404
+ // 没有查找到对应的工况或荷载组
405
+ data.tip.value = 2;
406
+ return;
407
+ }
408
+
409
+ let deletingList = new Array<WaveLoadObject>();
410
+ let restObject = 0;
411
+ for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
412
+ let child = loadGroupRO.childObjects[i] as DesignBaseObject;
413
+ if (child instanceof WaveLoadObject) {
414
+ deletingList.push(child);
415
+ } else if (child.checkBusinessStateIsActive()) {
416
+ restObject++;
417
+ }
418
+ }
419
+
420
+ for (let i = 0; i < deletingList.length; i++) {
421
+ deletingList[i].tempDelete(this.viewer);
422
+ // this.process.removeRenderObject(deletingList[i]);
423
+ }
424
+
425
+ if (restObject === 0) {
426
+ loadGroupRO.tempDelete(this.viewer);
427
+ }
428
+
429
+ this.viewer.updateDisplay();
430
+ data.tip.value = 1;
431
+ // this.loadGroupRO.tempDelete(this.viewer);
432
+ }
433
+
434
+ private setConfig() {
435
+ let data = this.config.properties.items[0].data;
436
+
437
+ data.waveType.value = WaveType.STRE
438
+ data.waveHeight.value = ""
439
+ data.wavePeriod.value = ""
440
+ data.waveLength.value = ""
441
+ data.waveAngle.value = ""
442
+ data.kinematFactor.value = 1
443
+ data.orderOfStream.value = ""
444
+ data.isLocalAccelOnly.value = ""
445
+ data.inputMode.value = InputMode.Length
446
+ data.crestPosition.value = ""
447
+ data.stepSize.value = ""
448
+ data.staticSteps.value = ""
449
+ data.criticalPosition.value = CriticalPosition.MM
450
+ data.stillWaterDepth.value = ""
451
+ data.mudlineElevation.value = ""
452
+ data.memberSegmentationMax.value = 10
453
+ data.memberSegmentationMin.value = 1
454
+ data.printOption.value = PrintOption.PrintOption0
455
+ }
330
456
  }