gs-cae-design 1.1.57 → 1.1.59

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 (175) hide show
  1. package/README.md +23 -0
  2. package/docs/classes/Command.CommandFiniteElement.md +2 -0
  3. package/docs/classes/CommandInterfaceManager.md +112 -0
  4. package/docs/classes/CommonInterfaceManager.md +13 -0
  5. package/lib/.gz +0 -0
  6. package/lib/CAEDesign.common-report.html +2 -2
  7. package/lib/CAEDesign.common.js +275 -88
  8. package/lib/CAEDesign.umd-report.html +2 -2
  9. package/lib/CAEDesign.umd.js +275 -88
  10. package/lib/CAEDesign.umd.min-report.html +2 -2
  11. package/lib/CAEDesign.umd.min.js +275 -88
  12. package/package.json +1 -1
  13. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFWT.ts +6 -6
  14. package/src/caeCardEditor/caeCardObjects/seainp/cardCURR.ts +17 -2
  15. package/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.ts +8 -1
  16. package/src/caeCardEditor/caeCardObjects/seainp/cardWAVE.ts +27 -0
  17. package/src/caeCardEditor/caeCardObjects/seainp/cardWIND.ts +15 -0
  18. package/src/gsDevFx/managers/datReaderManager.ts +37 -60
  19. package/src/gsDevFx/managers/datWriterManager.ts +17 -1
  20. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +113 -1
  21. package/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.ts +11 -1
  22. package/src/gsDevFx/managers/persistenceManager.ts +10 -5
  23. package/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.ts +133 -0
  24. package/src/gsDevFx/objects/caeObjects/grupObject.ts +11 -0
  25. package/src/gsDevFx/objects/caeObjects/jointObject.ts +51 -24
  26. package/src/gsDevFx/objects/caeObjects/memberObject.ts +55 -16
  27. package/src/gsDevFx/objects/caeObjects/pGrupObject.ts +11 -0
  28. package/src/gsDevFx/objects/caeObjects/plateObject.ts +11 -0
  29. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.ts +1 -1
  30. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.ts +7 -2
  31. package/src/gsDevFx/objects/caeObjects/sectionObject.ts +11 -0
  32. package/src/gsDevFx/objects/loadObjects/currLoadObject.ts +162 -0
  33. package/src/gsDevFx/objects/loadObjects/loadConditionObject.ts +6 -3
  34. package/src/gsDevFx/objects/loadObjects/waveLoadObject.ts +242 -0
  35. package/src/gsDevFx/objects/loadObjects/windLoadObject.ts +160 -0
  36. package/src/gsDevFx/propertyComponents/sections/teeSectionProperty.ts +43 -43
  37. package/src/gsDevFx/propertyComponents/sections/wfSectionProperty.ts +104 -104
  38. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/addCurrentLoadConfig.ts +99 -0
  39. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.ts +269 -0
  40. package/src/viewerWrapper/commands/aftertreatment/addDeadLoad/addDeadLoadConfig.ts +86 -0
  41. package/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.ts +195 -0
  42. package/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.ts +25 -7
  43. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/addWaveLoadConfig.ts +208 -0
  44. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.ts +309 -0
  45. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.ts +143 -0
  46. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.ts +279 -0
  47. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.ts +286 -0
  48. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/editCurrentLoadConfig.ts +129 -0
  49. package/src/viewerWrapper/commands/aftertreatment/editJointLoad/commandEditJointLoad.ts +93 -15
  50. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.ts +330 -0
  51. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/editWaveLoadConfig.ts +243 -0
  52. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.ts +296 -0
  53. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.ts +176 -0
  54. package/src/viewerWrapper/commands/commandSplitMemberBase.ts +6 -8
  55. package/src/viewerWrapper/commands/createPlate/plateConfig.ts +22 -0
  56. package/src/viewerWrapper/commands/createPlatesInRange/commandCreatePlatesInRange.ts +203 -73
  57. package/src/viewerWrapper/commands/createPlatesInRange/createPlatesInRangeConfig.ts +6 -0
  58. package/src/viewerWrapper/commands/editGrup/commandEditGrup.ts +36 -26
  59. package/src/viewerWrapper/commands/pretreatment/colorDivideByEditComponentGroup/commandColorDivideByEditComponentGroup.ts +2 -2
  60. package/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.ts +8 -1
  61. package/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.ts +9 -1
  62. package/src/viewerWrapper/commands/pretreatment/finiteElement/commandFiniteElement.ts +3 -0
  63. package/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.ts +3 -2
  64. package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.ts +1 -1
  65. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.ts +10 -6
  66. package/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.ts +187 -0
  67. package/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/surfaceWeightEditConfig.ts +72 -0
  68. package/src/viewerWrapper/commands/splitMemberByCoordinate/commandSplitMemberByCoordinate.ts +6 -2
  69. package/src/viewerWrapper/commands/splitMemberByEqualPatrs/commandSplitMemberByEqualPatrs.ts +6 -2
  70. package/src/viewerWrapper/commands/splitMemberByExistingJoint/commandSplitMemberByExistingJoint.ts +6 -2
  71. package/src/viewerWrapper/commands/splitMemberByIntersection/commandSplitMemberByIntersection.ts +6 -2
  72. package/src/viewerWrapper/commands/splitMemberByLength/commandSplitMemberByLength.ts +8 -4
  73. package/src/viewerWrapper/commands/splitMemberByPerpendicular/commandSplitMemberByPerpendicular.ts +51 -6
  74. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.d.ts +1 -1
  75. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardCURR.d.ts +6 -0
  76. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardCURR.d.ts.map +1 -1
  77. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.d.ts +8 -0
  78. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardDEAD.d.ts.map +1 -1
  79. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWAVE.d.ts +2 -0
  80. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWAVE.d.ts.map +1 -1
  81. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts +2 -0
  82. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts.map +1 -1
  83. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +27 -29
  84. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  85. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  86. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +18 -1
  87. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  88. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts +2 -0
  89. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts.map +1 -1
  90. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  91. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.d.ts +26 -0
  92. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/deadLoadObject.d.ts.map +1 -0
  93. package/types/caeDesign/src/gsDevFx/objects/caeObjects/grupObject.d.ts +2 -0
  94. package/types/caeDesign/src/gsDevFx/objects/caeObjects/grupObject.d.ts.map +1 -1
  95. package/types/caeDesign/src/gsDevFx/objects/caeObjects/jointObject.d.ts +2 -0
  96. package/types/caeDesign/src/gsDevFx/objects/caeObjects/jointObject.d.ts.map +1 -1
  97. package/types/caeDesign/src/gsDevFx/objects/caeObjects/memberObject.d.ts +2 -0
  98. package/types/caeDesign/src/gsDevFx/objects/caeObjects/memberObject.d.ts.map +1 -1
  99. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pGrupObject.d.ts +2 -0
  100. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pGrupObject.d.ts.map +1 -1
  101. package/types/caeDesign/src/gsDevFx/objects/caeObjects/plateObject.d.ts +2 -0
  102. package/types/caeDesign/src/gsDevFx/objects/caeObjects/plateObject.d.ts.map +1 -1
  103. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts.map +1 -1
  104. package/types/caeDesign/src/gsDevFx/objects/caeObjects/sectionObject.d.ts +2 -0
  105. package/types/caeDesign/src/gsDevFx/objects/caeObjects/sectionObject.d.ts.map +1 -1
  106. package/types/caeDesign/src/gsDevFx/objects/loadObjects/currLoadObject.d.ts +46 -0
  107. package/types/caeDesign/src/gsDevFx/objects/loadObjects/currLoadObject.d.ts.map +1 -0
  108. package/types/caeDesign/src/gsDevFx/objects/loadObjects/loadConditionObject.d.ts.map +1 -1
  109. package/types/caeDesign/src/gsDevFx/objects/loadObjects/waveLoadObject.d.ts +65 -0
  110. package/types/caeDesign/src/gsDevFx/objects/loadObjects/waveLoadObject.d.ts.map +1 -0
  111. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts +50 -0
  112. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts.map +1 -0
  113. package/types/caeDesign/src/gsDevFx/operators/cAEObjectPreSelector.d.ts.map +1 -1
  114. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/addCurrentLoadConfig.d.ts +7 -0
  115. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/addCurrentLoadConfig.d.ts.map +1 -0
  116. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts +27 -0
  117. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts.map +1 -0
  118. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/addDeadLoadConfig.d.ts +5 -0
  119. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/addDeadLoadConfig.d.ts.map +1 -0
  120. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.d.ts +15 -0
  121. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad.d.ts.map +1 -0
  122. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.d.ts.map +1 -1
  123. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/addWaveLoadConfig.d.ts +5 -0
  124. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/addWaveLoadConfig.d.ts.map +1 -0
  125. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts +27 -0
  126. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts.map +1 -0
  127. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts +5 -0
  128. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts.map +1 -0
  129. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts +27 -0
  130. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts.map +1 -0
  131. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts +26 -0
  132. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts.map +1 -0
  133. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/editCurrentLoadConfig.d.ts +9 -0
  134. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/editCurrentLoadConfig.d.ts.map +1 -0
  135. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editJointLoad/commandEditJointLoad.d.ts +2 -1
  136. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editJointLoad/commandEditJointLoad.d.ts.map +1 -1
  137. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts +26 -0
  138. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts.map +1 -0
  139. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/editWaveLoadConfig.d.ts +7 -0
  140. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/editWaveLoadConfig.d.ts.map +1 -0
  141. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts +26 -0
  142. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts.map +1 -0
  143. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts +7 -0
  144. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts.map +1 -0
  145. package/types/caeDesign/src/viewerWrapper/commands/commandSplitMemberBase.d.ts.map +1 -1
  146. package/types/caeDesign/src/viewerWrapper/commands/createPlate/plateConfig.d.ts +1 -0
  147. package/types/caeDesign/src/viewerWrapper/commands/createPlate/plateConfig.d.ts.map +1 -1
  148. package/types/caeDesign/src/viewerWrapper/commands/createPlatesInRange/commandCreatePlatesInRange.d.ts.map +1 -1
  149. package/types/caeDesign/src/viewerWrapper/commands/createPlatesInRange/createPlatesInRangeConfig.d.ts.map +1 -1
  150. package/types/caeDesign/src/viewerWrapper/commands/editGrup/commandEditGrup.d.ts +1 -0
  151. package/types/caeDesign/src/viewerWrapper/commands/editGrup/commandEditGrup.d.ts.map +1 -1
  152. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts.map +1 -1
  153. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts.map +1 -1
  154. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/finiteElement/commandFiniteElement.d.ts.map +1 -1
  155. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.d.ts.map +1 -1
  156. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts.map +1 -1
  157. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.d.ts +18 -0
  158. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.d.ts.map +1 -0
  159. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/surfaceWeightEditConfig.d.ts +13 -0
  160. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/surfaceWeightEditConfig.d.ts.map +1 -0
  161. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByCoordinate/commandSplitMemberByCoordinate.d.ts.map +1 -1
  162. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByEqualPatrs/commandSplitMemberByEqualPatrs.d.ts.map +1 -1
  163. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByExistingJoint/commandSplitMemberByExistingJoint.d.ts.map +1 -1
  164. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByIntersection/commandSplitMemberByIntersection.d.ts.map +1 -1
  165. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByLength/commandSplitMemberByLength.d.ts.map +1 -1
  166. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByPerpendicular/commandSplitMemberByPerpendicular.d.ts.map +1 -1
  167. package/types/caeDesign/src/viewerWrapper/module/createMenu.d.ts.map +0 -1
  168. package/types/caeDesign/src/viewerWrapper/panel/viewPoint/viewPointPanel.d.ts +0 -36
  169. package/types/ceecDesign/src/gsDevFx/managers/persistenceManager.d.ts +2 -0
  170. package/types/ceecDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  171. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts +53 -0
  172. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts.map +1 -0
  173. package/types/ceecDesign/src/gsDevFx/viewer.d.ts.map +1 -0
  174. package/types/ceecDesign/src/utils/cookie.d.ts +0 -38
  175. package/types/ceecDesign/src/utils/cookie.d.ts.map +0 -1
@@ -0,0 +1,279 @@
1
+ import { CameraMouse } from "../../../../gsDevFx/operators/cameraMouse";
2
+ import { CAEObjectPreSelector } from "../../../../gsDevFx/operators/cAEObjectPreSelector";
3
+ import { CAEObjectSelector } from "../../../../gsDevFx/operators/caeObjectSelector";
4
+ import { CommandSelect } from "../../../../gsDevFx/commands/commandSelect";
5
+ import { CommandComponent } from "../../commandComponent";
6
+ import AddWindLoadConfig from "./addWindLoadConfig";
7
+ import { DesignBaseObject } from "gs-ceec-design";
8
+ import { LoadConditionObject } from "../../../../gsDevFx/objects/loadObjects/loadConditionObject";
9
+ import { BusinessState } from "gs-ceec-design";
10
+ import { CaeNumber } from "../../../../utility/utility";
11
+ import { WindLoadObject } from "../../../../gsDevFx/objects/loadObjects/windLoadObject";
12
+ import { SeastateLdopt } from "../../../../gsDevFx/objects/caeObjects/optionObjects/seastateLdopt"
13
+ import { CardLDOPT } from "../../../../caeCardEditor/caeCardObjects/seainp/cardLDOPT"
14
+
15
+ export default class CommandAddWindLoad extends CommandComponent {
16
+ typeName = "CommandAddWindLoad";
17
+
18
+ config: AddWindLoadConfig;
19
+ preSelector: CAEObjectPreSelector;
20
+ caeObjectSelector: CAEObjectSelector;
21
+
22
+ loadConditionRO: LoadConditionObject = null;
23
+
24
+ windLoadRO: WindLoadObject = null;
25
+
26
+ constructor() {
27
+ super();
28
+ }
29
+
30
+ begin(): void {
31
+ this.changeOperators();
32
+
33
+ console.log("CommandAddWindLoad");
34
+ this.config = new AddWindLoadConfig();
35
+ this.config.show();
36
+
37
+ this.windLoadRO = new WindLoadObject();
38
+ this.setConfigData();
39
+ }
40
+
41
+ restore(): void {
42
+ this.changeOperators();
43
+ this.config.show();
44
+ }
45
+
46
+ changeOperators(): void {
47
+ // 进入命令前清空选中与高亮.
48
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
49
+ this.viewer.updateDisplay();
50
+
51
+ // 清空操作器.
52
+ this.viewer.operatorManager.clear();
53
+ // 添加操作器
54
+ this.viewer.operatorManager.add(new CameraMouse());
55
+
56
+ this.preSelector = new CAEObjectPreSelector();
57
+ this.viewer.operatorManager.add(this.preSelector);
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.loadConditionRO) {
78
+ this.loadConditionRO.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 loadCondition = data.loadCondition.value;
89
+ if (!loadCondition) {
90
+ // 没有填工况名数组
91
+ data.tip.value = 2;
92
+ return;
93
+ }
94
+
95
+ let isLegal1 = LoadConditionObject.checkNamelegal(loadCondition);
96
+ if (!isLegal1) {
97
+ data.tip.value = 3;
98
+ return;
99
+ }
100
+
101
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
102
+ "后处理计算结果"
103
+ ) as DesignBaseObject;
104
+ let combinationParent = this.process.findCaeObjectByNameInChildObject(
105
+ pretreatmentRO,
106
+ "荷载组合"
107
+ ) as DesignBaseObject;
108
+ let combinationRO = this.process.findCaeObjectByNameInChildObject(
109
+ combinationParent,
110
+ loadCondition
111
+ ) as DesignBaseObject;
112
+ if(combinationRO) {
113
+ // 同名
114
+ data.tip.value = 4;
115
+ return;
116
+ }
117
+
118
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
119
+
120
+ // 添加或修改工况.
121
+ this.loadConditionRO =
122
+ this.getAndCreateLoadConditionObjectByName(loadCondition);
123
+
124
+ let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
125
+ this.loadConditionRO
126
+ );
127
+
128
+ for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
129
+ const item = loadGroupRO.childObjects[i] as DesignBaseObject;
130
+ item.tempDelete(this.viewer);
131
+ item.businessState = BusinessState.Deleting;
132
+ }
133
+
134
+ this.windLoadRO = new WindLoadObject(loadCondition);
135
+
136
+ let windLoad = this.windLoadRO;
137
+
138
+ windLoad.businessState = BusinessState.Creating;
139
+
140
+ this.process.addRenderObject(loadGroupRO, windLoad);
141
+
142
+ windLoad.loadCondition = data.loadCondition.value
143
+
144
+ windLoad.windVelocity = CaeNumber(data.windVelocity.value)
145
+
146
+ windLoad.referenceHeightOrWindPressure = CaeNumber(data.referenceHeightOrWindPressure.value)
147
+
148
+ windLoad.windVariationDefinition = data.windVariationDefinition.value
149
+
150
+ windLoad.windDirection = CaeNumber(data.windDirection.value)
151
+
152
+ windLoad.memberLoadingOption = data.memberLoadingOption.value
153
+
154
+ windLoad.isWaterDepthRatherThanOriginElevation = data.isWaterDepthRatherThanOriginElevation.value
155
+
156
+ windLoad.stillWaterDepthOverride = CaeNumber(data.stillWaterDepthOverride.value)
157
+
158
+ windLoad.isPrintDetailedLoadReport = data.isPrintDetailedLoadReport.value
159
+
160
+ this.viewer.updateDisplay();
161
+ data.tip.value = 1;
162
+
163
+ let seastateNode = this.process.caeRenderObjectTreeManager.seastateNode
164
+ let seastateLdoptObj = this.process.findRenderObjectByType(
165
+ "SeastateLdopt"
166
+ ) as SeastateLdopt
167
+ if (!seastateLdoptObj) {
168
+ seastateLdoptObj = new SeastateLdopt();
169
+ seastateLdoptObj.businessState = BusinessState.Creating
170
+ seastateLdoptObj.cardObject = new CardLDOPT("LDOPT NF+Z 1.025 7.849 GLOBMN HYD K ")
171
+ seastateLdoptObj.cardData = seastateLdoptObj.cardObject.getLine()
172
+ this.process.addRenderObject(seastateNode,seastateLdoptObj);
173
+ }
174
+
175
+ // 添加或修改荷载组.
176
+
177
+ // this.viewer.addState(oldObj, newObj, (stateItem) => {
178
+ // let obj = stateItem.newObj.obj;
179
+ // obj.offsets = stateItem.newObj.offsets;
180
+ // obj.businessState = BusinessState.Editing;
181
+
182
+ // obj.setNeedUpdate();
183
+ // this.viewer.updateDisplay();
184
+ // });
185
+ }
186
+
187
+ updatePanel() {}
188
+
189
+ private getLoadConditionObjectByName(loadConditionName: string) {
190
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
191
+ "后处理计算结果"
192
+ ) as DesignBaseObject;
193
+
194
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
195
+ pretreatmentRO,
196
+ "荷载工况"
197
+ ) as DesignBaseObject;
198
+
199
+ if (!conditionParent) {
200
+ conditionParent = new DesignBaseObject();
201
+ conditionParent.businessState = BusinessState.Creating;
202
+ conditionParent.name = "荷载工况";
203
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
204
+ }
205
+
206
+ let loadConditionRO = this.process.findCaeObjectByNameInChildObject(
207
+ conditionParent,
208
+ loadConditionName
209
+ ) as LoadConditionObject;
210
+
211
+ return loadConditionRO;
212
+ }
213
+
214
+ private getAndCreateLoadConditionObjectByName(loadConditionName: string) {
215
+ let loadConditionRO = this.getLoadConditionObjectByName(loadConditionName);
216
+
217
+ if (!loadConditionRO) {
218
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
219
+ "后处理计算结果"
220
+ ) as DesignBaseObject;
221
+
222
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
223
+ pretreatmentRO,
224
+ "荷载工况"
225
+ ) as DesignBaseObject;
226
+
227
+ if (!conditionParent) {
228
+ conditionParent = new DesignBaseObject();
229
+ conditionParent.businessState = BusinessState.Creating;
230
+ conditionParent.name = "荷载工况";
231
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
232
+ }
233
+
234
+ loadConditionRO = new LoadConditionObject(loadConditionName);
235
+ loadConditionRO.businessState = BusinessState.Creating;
236
+ this.process.addRenderObject(conditionParent, loadConditionRO);
237
+ } else {
238
+ loadConditionRO.businessState = BusinessState.Editing;
239
+ }
240
+
241
+ return loadConditionRO;
242
+ }
243
+
244
+ private getAndCreateLoadGroupByLoadCondition(
245
+ loadCondition: LoadConditionObject
246
+ ) {
247
+ let loadGroupRO = this.process.findCaeObjectByNameInChildObject(
248
+ loadCondition,
249
+ "WINDLoads"
250
+ ) as DesignBaseObject;
251
+ if (!loadGroupRO) {
252
+ loadGroupRO = new DesignBaseObject();
253
+ loadGroupRO.name = "WINDLoads";
254
+ loadGroupRO.businessState = BusinessState.Creating;
255
+ this.process.addRenderObject(loadCondition, loadGroupRO);
256
+ } else {
257
+ loadGroupRO.businessState = BusinessState.Editing;
258
+ }
259
+
260
+ return loadGroupRO;
261
+ }
262
+
263
+ getLoadConditons() {
264
+ let loadConditions = this.viewer.process.findRenderObjectsByType(
265
+ "LoadConditionObject"
266
+ );
267
+ return loadConditions;
268
+ }
269
+
270
+ private setConfigData() {
271
+ if(this.windLoadRO) {
272
+ let data = this.config.properties.items[0].data;
273
+ let windLoadRO = this.windLoadRO;
274
+
275
+ data.isWaterDepthRatherThanOriginElevation.value = windLoadRO.isWaterDepthRatherThanOriginElevation
276
+ data.windVelocity.value = windLoadRO.windVelocity
277
+ }
278
+ }
279
+ }
@@ -0,0 +1,286 @@
1
+ import { CameraMouse } from "../../../../gsDevFx/operators/cameraMouse";
2
+ import { CAEObjectPreSelector } from "../../../../gsDevFx/operators/cAEObjectPreSelector";
3
+ import { CAEObjectSelector } from "../../../../gsDevFx/operators/caeObjectSelector";
4
+ import { CommandSelect } from "../../../../gsDevFx/commands/commandSelect";
5
+ import { CommandComponent } from "../../commandComponent";
6
+ import EditCurrentLoadConfig from "./editCurrentLoadConfig";
7
+ import { DesignBaseObject } from "gs-ceec-design";
8
+ import { LoadConditionObject } from "../../../../gsDevFx/objects/loadObjects/loadConditionObject";
9
+ import { BusinessState } from "gs-ceec-design";
10
+ import { CaeNumber } from "../../../../utility/utility";
11
+ import { CurrLoadObject } from "../../../../gsDevFx/objects/loadObjects/currLoadObject";
12
+ import { SeastateLdopt } from "../../../../gsDevFx/objects/caeObjects/optionObjects/seastateLdopt"
13
+ import { CardLDOPT } from "../../../../caeCardEditor/caeCardObjects/seainp/cardLDOPT"
14
+
15
+ export default class CommandEditCurrentLoad extends CommandComponent {
16
+ typeName = "CommandEditCurrentLoad";
17
+
18
+ config: EditCurrentLoadConfig;
19
+ preSelector: CAEObjectPreSelector;
20
+ caeObjectSelector: CAEObjectSelector;
21
+
22
+ loadConditionRO: LoadConditionObject;
23
+ currentCurrLoadRO: CurrLoadObject;
24
+
25
+ constructor() {
26
+ super();
27
+ }
28
+
29
+ begin(): void {
30
+ this.changeOperators();
31
+
32
+ console.log("CommandEditCurrentLoad");
33
+ this.config = new EditCurrentLoadConfig();
34
+ this.config.show();
35
+
36
+ this.config.loadConditionChange = () => {
37
+ let data = this.config.properties.items[0].data;
38
+ let loadCondition = data.loadCondition.value
39
+
40
+ this.loadConditionRO =
41
+ this.getAndCreateLoadConditionObjectByName(loadCondition);
42
+
43
+ let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
44
+ this.loadConditionRO
45
+ );
46
+
47
+ this.config.currList = [];
48
+ this.currentCurrLoadRO = null;
49
+ for(let i = 0; i < loadGroupRO.childObjects.length; i++) {
50
+ let currLoad = loadGroupRO.childObjects[i] as CurrLoadObject;
51
+ if(currLoad.checkBusinessStateIsActive()) {
52
+ this.config.currList.push(currLoad)
53
+ if(!this.currentCurrLoadRO) {
54
+ this.currentCurrLoadRO = currLoad;
55
+ data.mudlineElevationOverride.value = currLoad.mudlineElevationOverride;
56
+ data.isElevationPercentOption.value = currLoad.isElevationPercentOption;
57
+ data.isApparentWavePeriodOption.value = currLoad.isApparentWavePeriodOption;
58
+ data.factorOption.value = currLoad.factorOption;
59
+ data.factor.value = currLoad.factor;
60
+ data.elevation.value = currLoad.elevation;
61
+ data.crsetStretchingOption.value = currLoad.crsetStretchingOption;
62
+ data.minimumInlineCurrentVelocity.value = currLoad.minimumInlineCurrentVelocity;
63
+ }
64
+ }
65
+ }
66
+ }
67
+ }
68
+
69
+ restore(): void {
70
+ this.changeOperators();
71
+ this.config.show();
72
+ }
73
+
74
+ changeOperators(): void {
75
+ // 进入命令前清空选中与高亮.
76
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
77
+ this.viewer.updateDisplay();
78
+
79
+ // 清空操作器.
80
+ this.viewer.operatorManager.clear();
81
+ // 添加操作器
82
+ this.viewer.operatorManager.add(new CameraMouse());
83
+
84
+ this.preSelector = new CAEObjectPreSelector();
85
+ this.viewer.operatorManager.add(this.preSelector);
86
+
87
+ this.caeObjectSelector = new CAEObjectSelector();
88
+ this.viewer.operatorManager.add(this.caeObjectSelector);
89
+ //this.caeObjectSelector.isMultiSelect = true;
90
+
91
+ this.caeObjectSelector.lButtonUp.add(() => {
92
+ setTimeout(() => {
93
+ this.updatePanel();
94
+ }, 0);
95
+ });
96
+ }
97
+
98
+ end(): void {
99
+ this.config.hide();
100
+ super.end();
101
+
102
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
103
+ this.viewer.updateDisplay();
104
+
105
+ if (this.loadConditionRO) {
106
+ this.loadConditionRO.inactive(this.viewer);
107
+ }
108
+
109
+ let commandSelect = new CommandSelect();
110
+ this.process.commandManager.execute(commandSelect);
111
+ }
112
+
113
+ commandOk(): void {
114
+ let data = this.config.properties.items[0].data;
115
+
116
+ let loadCondition = data.loadCondition.value;
117
+ if (!loadCondition) {
118
+ // 没有填工况名数组
119
+ data.tip.value = 2;
120
+ return;
121
+ }
122
+
123
+ let isLegal1 = LoadConditionObject.checkNamelegal(loadCondition);
124
+ if (!isLegal1) {
125
+ data.tip.value = 3;
126
+ return;
127
+ }
128
+
129
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
130
+ "后处理计算结果"
131
+ ) as DesignBaseObject;
132
+ let combinationParent = this.process.findCaeObjectByNameInChildObject(
133
+ pretreatmentRO,
134
+ "荷载组合"
135
+ ) as DesignBaseObject;
136
+ let combinationRO = this.process.findCaeObjectByNameInChildObject(
137
+ combinationParent,
138
+ loadCondition
139
+ ) as DesignBaseObject;
140
+ if(combinationRO) {
141
+ // 同名
142
+ data.tip.value = 5;
143
+ return;
144
+ }
145
+
146
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
147
+
148
+ // 添加或修改工况.
149
+ this.loadConditionRO =
150
+ this.getAndCreateLoadConditionObjectByName(loadCondition);
151
+
152
+ let loadGroupRO = this.getAndCreateLoadGroupByLoadCondition(
153
+ this.loadConditionRO
154
+ );
155
+
156
+ let currList = this.config.currList;
157
+ if(!currList.length) {
158
+ data.tip.value = 4;
159
+ return;
160
+ }
161
+
162
+ for (let i = 0; i < loadGroupRO.childObjects.length; i++) {
163
+ const item = loadGroupRO.childObjects[i] as DesignBaseObject;
164
+ item.tempDelete(this.viewer);
165
+ item.businessState = BusinessState.Deleting;
166
+ }
167
+
168
+ for (let i = 0; i < currList.length; i++) {
169
+ let currLoad = currList[i] as CurrLoadObject;
170
+ if(currLoad instanceof CurrLoadObject) {
171
+ currLoad.businessState = BusinessState.Creating;
172
+ this.process.addRenderObject(loadGroupRO, currLoad);
173
+
174
+ if(i === 0) {
175
+ currLoad.mudlineElevationOverride = CaeNumber(data.mudlineElevationOverride.value)
176
+ currLoad.isElevationPercentOption = data.isElevationPercentOption.value
177
+ currLoad.isApparentWavePeriodOption = data.isApparentWavePeriodOption.value
178
+ currLoad.factorOption = data.factorOption.value
179
+ currLoad.factor = CaeNumber(data.factor.value)
180
+ currLoad.elevation = CaeNumber(data.elevation.value)
181
+ currLoad.crsetStretchingOption = data.crsetStretchingOption.value
182
+ currLoad.minimumInlineCurrentVelocity = CaeNumber(data.minimumInlineCurrentVelocity.value)
183
+ }
184
+ }
185
+ }
186
+
187
+ let seastateNode = this.process.caeRenderObjectTreeManager.seastateNode
188
+ let seastateLdoptObj = this.process.findRenderObjectByType(
189
+ "SeastateLdopt"
190
+ ) as SeastateLdopt
191
+ if (!seastateLdoptObj) {
192
+ seastateLdoptObj = new SeastateLdopt();
193
+ seastateLdoptObj.businessState = BusinessState.Creating
194
+ seastateLdoptObj.cardObject = new CardLDOPT("LDOPT NF+Z 1.025 7.849 GLOBMN HYD K ")
195
+ seastateLdoptObj.cardData = seastateLdoptObj.cardObject.getLine()
196
+ this.process.addRenderObject(seastateNode,seastateLdoptObj);
197
+ }
198
+
199
+ this.viewer.updateDisplay();
200
+ data.tip.value = 1;
201
+ }
202
+
203
+ updatePanel() {
204
+ }
205
+
206
+ private getLoadConditionObjectByName(loadConditionName: string) {
207
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
208
+ "后处理计算结果"
209
+ ) as DesignBaseObject;
210
+
211
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
212
+ pretreatmentRO,
213
+ "荷载工况"
214
+ ) as DesignBaseObject;
215
+
216
+ if (!conditionParent) {
217
+ conditionParent = new DesignBaseObject();
218
+ conditionParent.businessState = BusinessState.Creating;
219
+ conditionParent.name = "荷载工况";
220
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
221
+ }
222
+
223
+ let loadConditionRO = this.process.findCaeObjectByNameInChildObject(
224
+ conditionParent,
225
+ loadConditionName
226
+ ) as LoadConditionObject;
227
+
228
+ return loadConditionRO;
229
+ }
230
+
231
+ private getAndCreateLoadConditionObjectByName(loadConditionName: string) {
232
+ let loadConditionRO = this.getLoadConditionObjectByName(loadConditionName);
233
+
234
+ if (!loadConditionRO) {
235
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
236
+ "后处理计算结果"
237
+ ) as DesignBaseObject;
238
+
239
+ let conditionParent = this.process.findCaeObjectByNameInChildObject(
240
+ pretreatmentRO,
241
+ "荷载工况"
242
+ ) as DesignBaseObject;
243
+
244
+ if (!conditionParent) {
245
+ conditionParent = new DesignBaseObject();
246
+ conditionParent.businessState = BusinessState.Creating;
247
+ conditionParent.name = "荷载工况";
248
+ this.process.addRenderObject(pretreatmentRO, conditionParent);
249
+ }
250
+
251
+ loadConditionRO = new LoadConditionObject(loadConditionName);
252
+ loadConditionRO.businessState = BusinessState.Creating;
253
+ this.process.addRenderObject(conditionParent, loadConditionRO);
254
+ } else {
255
+ loadConditionRO.businessState = BusinessState.Editing;
256
+ }
257
+
258
+ return loadConditionRO;
259
+ }
260
+
261
+ private getAndCreateLoadGroupByLoadCondition(
262
+ loadCondition: LoadConditionObject
263
+ ) {
264
+ let loadGroupRO = this.process.findCaeObjectByNameInChildObject(
265
+ loadCondition,
266
+ "CURRLoads"
267
+ ) as DesignBaseObject;
268
+ if (!loadGroupRO) {
269
+ loadGroupRO = new DesignBaseObject();
270
+ loadGroupRO.name = "CURRLoads";
271
+ loadGroupRO.businessState = BusinessState.Creating;
272
+ this.process.addRenderObject(loadCondition, loadGroupRO);
273
+ } else {
274
+ loadGroupRO.businessState = BusinessState.Editing;
275
+ }
276
+
277
+ return loadGroupRO;
278
+ }
279
+
280
+ getLoadConditons() {
281
+ let loadConditions = this.viewer.process.findRenderObjectsByType(
282
+ "LoadConditionObject"
283
+ );
284
+ return loadConditions;
285
+ }
286
+ }
@@ -0,0 +1,129 @@
1
+ import { DesignBaseObject } from "gs-ceec-design";
2
+ import { Process } from "../../../../gsDevFx/process";
3
+ import { Config } from "../../../../gsDevFx/propertyComponents/config";
4
+ import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
5
+ import { FactorOption, CrsetStretchingOption, CurrLoadObject } from "../../../../gsDevFx/objects/loadObjects/currLoadObject";
6
+
7
+ export default class EditCurrentLoadConfig extends Config {
8
+ currList: Array<CurrLoadObject> = null;
9
+
10
+ constructor() {
11
+ super();
12
+
13
+ this.currList = new Array<CurrLoadObject>();
14
+
15
+ let property = new PropertyComponent();
16
+ property.name = "编辑海流荷载";
17
+ property.data = {
18
+ loadCondition: {
19
+ name: "",
20
+ type: "select",
21
+ selectOptions: {
22
+ selections: [],
23
+ change: () => {
24
+ this.loadConditionChange();
25
+ }
26
+ },
27
+ value: null
28
+ },
29
+ mudlineElevationOverride: {
30
+ name: "泥面高程覆盖",
31
+ value: null,
32
+ },
33
+ isElevationPercentOption: {
34
+ name: "以水深百分比输入距离",
35
+ type: "switch",
36
+ value: false,
37
+ },
38
+ isApparentWavePeriodOption: {
39
+ name: "计算表观波浪周期",
40
+ type: "switch",
41
+ value: false,
42
+ },
43
+ factorOption: {
44
+ name: "阻流因子选项",
45
+ type: "select",
46
+ value: null,
47
+ selectOptions: {
48
+ selections: [
49
+ {
50
+ label: "无",
51
+ value: FactorOption.None
52
+ },
53
+ {
54
+ label: "自动",
55
+ value: FactorOption.BC
56
+ },
57
+ {
58
+ label: "自定义",
59
+ value: FactorOption.US
60
+ },
61
+ ],
62
+ },
63
+ },
64
+ factor: {
65
+ name: "阻流因子",
66
+ value: null,
67
+ },
68
+ elevation: {
69
+ name: "阻流因子参考高程",
70
+ value: null,
71
+ },
72
+ crsetStretchingOption: {
73
+ name: "海流拉伸选项",
74
+ type: "select",
75
+ selectOptions: {
76
+ selections: [
77
+ {
78
+ label: "常数",
79
+ value: CrsetStretchingOption.CN
80
+ },
81
+ {
82
+ label: "非线性",
83
+ value: CrsetStretchingOption.NL
84
+ },
85
+ {
86
+ label: "线性",
87
+ value: CrsetStretchingOption.LN
88
+ },
89
+ {
90
+ label: "无",
91
+ value: CrsetStretchingOption.None
92
+ },
93
+ ],
94
+ },
95
+ value: null,
96
+ },
97
+ minimumInlineCurrentVelocity: {
98
+ name: "最小顺流速度",
99
+ value: null,
100
+ },
101
+ tip: {
102
+ name: "提示",
103
+ value: null,
104
+ },
105
+ };
106
+ this.properties.add(property);
107
+
108
+ this.refreshLoadConditionList();
109
+ }
110
+
111
+ refreshLoadConditionList() {
112
+ let property = this.properties.items[0];
113
+ let conditionNode =
114
+ Process.activeProcess.findRenderObjectByName("荷载工况");
115
+ if (conditionNode) {
116
+ property.data.loadCondition.selectOptions.selections = [];
117
+ conditionNode.childObjects.map((item) => {
118
+ if ((item as DesignBaseObject).checkBusinessStateIsActive()) {
119
+ property.data.loadCondition.selectOptions.selections.push({
120
+ label: item.name,
121
+ value: item.name,
122
+ });
123
+ }
124
+ });
125
+ }
126
+ }
127
+
128
+ loadConditionChange() {}
129
+ }