gs-cae-design 1.1.67 → 1.1.69

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 (193) hide show
  1. package/README.md +13 -0
  2. package/docs/classes/CommandInterfaceManager.md +33 -0
  3. package/lib/.gz +0 -0
  4. package/lib/CAEDesign.common-report.html +2 -2
  5. package/lib/CAEDesign.common.js +229 -86
  6. package/lib/CAEDesign.umd-report.html +2 -2
  7. package/lib/CAEDesign.umd.js +229 -86
  8. package/lib/CAEDesign.umd.min-report.html +2 -2
  9. package/lib/CAEDesign.umd.min.js +229 -86
  10. package/package.json +1 -1
  11. package/src/caeCardEditor/caeCardObjects/cardJointElastic.ts +7 -6
  12. package/src/caeCardEditor/caeCardObjects/cardLOADCONC.ts +2 -0
  13. package/src/caeCardEditor/caeCardObjects/cardMember.ts +8 -11
  14. package/src/caeCardEditor/caeCardObjects/cardPGrup.ts +7 -6
  15. package/src/caeCardEditor/caeCardObjects/cardPlate.ts +3 -2
  16. package/src/caeCardEditor/caeCardObjects/cardSection.ts +5 -4
  17. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.ts +6 -60
  18. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.ts +81 -0
  19. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.ts +83 -0
  20. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.ts +90 -0
  21. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.ts +64 -0
  22. package/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.ts +62 -41
  23. package/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.ts +320 -162
  24. package/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.ts +92 -0
  25. package/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.ts +81 -0
  26. package/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.ts +117 -0
  27. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.ts +2 -2
  28. package/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.ts +37 -1
  29. package/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.ts +11 -0
  30. package/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.ts +18 -0
  31. package/src/caeCardEditor/caeCardObjects/seainp/cardWIND.ts +96 -0
  32. package/src/gsDevFx/managers/cloudMemberTransformManager.ts +1 -0
  33. package/src/gsDevFx/managers/datReaderManager.ts +354 -159
  34. package/src/gsDevFx/managers/datWriterManager.ts +757 -226
  35. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +30 -0
  36. package/src/gsDevFx/managers/persistenceManager.ts +4 -5
  37. package/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.ts +460 -0
  38. package/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.ts +18 -18
  39. package/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.ts +103 -0
  40. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.ts +128 -21
  41. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.ts +28 -21
  42. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.ts +7 -7
  43. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.ts +7 -0
  44. package/src/gsDevFx/objects/caeObjects/pretreatment/windAreaObject.ts +43 -10
  45. package/src/gsDevFx/objects/loadObjects/loadConditionObject.ts +4 -4
  46. package/src/gsDevFx/objects/loadObjects/waveLoadObject.ts +1 -1
  47. package/src/gsDevFx/objects/loadObjects/windLoadObject.ts +18 -4
  48. package/src/gsDevFx/objects/pretreatmentObjects/waveItemObject.ts +3 -0
  49. package/src/gsDevFx/objects/pretreatmentObjects/waveObject.ts +3 -0
  50. package/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.ts +1 -0
  51. package/src/gsDevFx/process.ts +6 -2
  52. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.ts +8 -3
  53. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.ts +2 -0
  54. package/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.ts +10 -1
  55. package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.ts +5 -0
  56. package/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.ts +108 -0
  57. package/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.ts +135 -0
  58. package/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.ts +142 -0
  59. package/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.ts +221 -0
  60. package/src/viewerWrapper/commands/aftertreatment/addSeastateUcpart/commandAddSeastateUcpart.ts +18 -21
  61. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.ts +7 -1
  62. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.ts +29 -0
  63. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.ts +6 -1
  64. package/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.ts +328 -0
  65. package/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.ts +145 -0
  66. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.ts +4 -0
  67. package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.ts +8 -0
  68. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.ts +3 -1
  69. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.ts +11 -1
  70. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.ts +28 -0
  71. package/src/viewerWrapper/commands/editSection/editSectionConfig.ts +1 -1
  72. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.ts +6 -2
  73. package/src/viewerWrapper/commands/pretreatment/viewLoadProperty/commandViewLoadProperty.ts +11 -11
  74. package/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.ts +49 -20
  75. package/src/viewerWrapper/commands/pretreatment/windAreaEdit/commandWindAreaEdit.ts +45 -18
  76. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardJointElastic.d.ts.map +1 -1
  77. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardLOADCONC.d.ts.map +1 -1
  78. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardMember.d.ts.map +1 -1
  79. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardPGrup.d.ts.map +1 -1
  80. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardPlate.d.ts.map +1 -1
  81. package/types/caeDesign/src/caeCardEditor/caeCardObjects/cardSection.d.ts.map +1 -1
  82. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts +0 -56
  83. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts.map +1 -1
  84. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.d.ts +39 -0
  85. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.d.ts.map +1 -0
  86. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.d.ts +39 -0
  87. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.d.ts.map +1 -0
  88. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.d.ts +39 -0
  89. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.d.ts.map +1 -0
  90. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.d.ts +23 -0
  91. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.d.ts.map +1 -0
  92. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.d.ts +19 -21
  93. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.d.ts.map +1 -1
  94. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.d.ts +193 -29
  95. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.d.ts.map +1 -1
  96. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.d.ts +77 -0
  97. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.d.ts.map +1 -0
  98. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.d.ts +72 -0
  99. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.d.ts.map +1 -0
  100. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.d.ts +99 -0
  101. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.d.ts.map +1 -0
  102. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.d.ts +18 -0
  103. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.d.ts.map +1 -1
  104. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.d.ts +2 -0
  105. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.d.ts.map +1 -1
  106. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.d.ts +2 -0
  107. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.d.ts.map +1 -1
  108. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts +96 -0
  109. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts.map +1 -1
  110. package/types/caeDesign/src/gsDevFx/managers/cloudMemberTransformManager.d.ts.map +1 -1
  111. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +3 -2
  112. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  113. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts +1 -0
  114. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  115. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +6 -0
  116. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  117. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  118. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.d.ts +69 -0
  119. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.d.ts.map +1 -0
  120. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.d.ts.map +1 -1
  121. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.d.ts +22 -0
  122. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.d.ts.map +1 -0
  123. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.d.ts +40 -6
  124. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.d.ts.map +1 -1
  125. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.d.ts +7 -5
  126. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.d.ts.map +1 -1
  127. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.d.ts +1 -2
  128. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.d.ts.map +1 -1
  129. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/WindAreaObject.d.ts.map +1 -1
  130. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts +1 -0
  131. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts.map +1 -1
  132. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts +1 -0
  133. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts.map +1 -1
  134. package/types/caeDesign/src/gsDevFx/objects/pretreatmentObjects/waveItemObject.d.ts.map +1 -1
  135. package/types/caeDesign/src/gsDevFx/objects/pretreatmentObjects/waveObject.d.ts.map +1 -1
  136. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts.map +1 -1
  137. package/types/caeDesign/src/gsDevFx/process.d.ts +2 -0
  138. package/types/caeDesign/src/gsDevFx/process.d.ts.map +1 -1
  139. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.d.ts.map +1 -1
  140. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts.map +1 -1
  141. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.d.ts.map +1 -1
  142. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts.map +1 -1
  143. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.d.ts +6 -0
  144. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.d.ts.map +1 -0
  145. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.d.ts +18 -0
  146. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.d.ts.map +1 -0
  147. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.d.ts +6 -0
  148. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.d.ts.map +1 -0
  149. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.d.ts +22 -0
  150. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.d.ts.map +1 -0
  151. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateUcpart/commandAddSeastateUcpart.d.ts.map +1 -1
  152. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts +1 -0
  153. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts.map +1 -1
  154. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts +1 -0
  155. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts.map +1 -1
  156. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts.map +1 -1
  157. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.d.ts +7 -0
  158. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.d.ts.map +1 -0
  159. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.d.ts +12 -0
  160. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.d.ts.map +1 -0
  161. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts.map +1 -1
  162. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts.map +1 -1
  163. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts.map +1 -1
  164. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts.map +1 -1
  165. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts +1 -0
  166. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts.map +1 -1
  167. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts.map +1 -1
  168. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts.map +1 -1
  169. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windAreaEdit/commandWindAreaEdit.d.ts.map +1 -1
  170. package/types/ceecDesign/src/api/projectServices.d.ts +8 -0
  171. package/types/ceecDesign/src/api/projectServices.d.ts.map +1 -0
  172. package/types/ceecDesign/src/api/renderObjectServices.d.ts.map +0 -1
  173. package/types/ceecDesign/src/gsDevFx/managers/cloneManager.d.ts +5 -0
  174. package/types/ceecDesign/src/gsDevFx/managers/persistenceManager.d.ts +0 -19
  175. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts +0 -15
  176. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts.map +0 -1
  177. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts +54 -0
  178. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts.map +1 -0
  179. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts +0 -18
  180. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts.map +0 -1
  181. package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts +0 -8
  182. package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts.map +0 -1
  183. package/types/ceecDesign/src/gsDevFx/operators/objectPreSelector.d.ts.map +1 -0
  184. package/types/ceecDesign/src/gsDevFx/viewer.d.ts +14 -0
  185. package/types/ceecDesign/src/gsDevFx/viewer.d.ts.map +1 -0
  186. package/types/ceecDesign/src/index.d.ts +37 -0
  187. package/types/ceecDesign/src/plugins/svgDraw/index.d.ts +17 -0
  188. package/types/ceecDesign/src/plugins/svgDraw/index.d.ts.map +1 -0
  189. package/types/ceecDesign/src/plugins/svgDraw/svgViewer.d.ts +21 -0
  190. package/types/ceecDesign/src/plugins/svgDraw/svgViewer.d.ts.map +1 -0
  191. package/src/gsDevFx/objects/caeObjects/optionObjects/modelOptions.ts +0 -65
  192. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateCdm.ts +0 -56
  193. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateLcsel.ts +0 -56
@@ -35,11 +35,9 @@ import { ModelTitle } from "../objects/caeObjects/optionObjects/modelTitle";
35
35
  import { SeastateLdopt } from "../objects/caeObjects/optionObjects/seastateLdopt";
36
36
  import { SeastateHydro } from "../objects/caeObjects/optionObjects/seastateHydro";
37
37
  import { SeastateHydro2 } from "../objects/caeObjects/optionObjects/seastateHydro2";
38
- import { SeastateLcsel } from "../objects/caeObjects/optionObjects/seastateLcsel";
39
38
  import { SeastateUcpart } from "../objects/caeObjects/optionObjects/seastateUcpart";
40
39
  import { SeastateFile } from "../objects/caeObjects/optionObjects/seastateFile";
41
- import { CardOPTIONS } from "../../caeCardEditor/caeCardObjects/sacinp/cardOPTIONS";
42
- import { CardCODEIS } from "../../caeCardEditor/caeCardObjects/sacinp/cardCODEIS";
40
+
43
41
  import { CardPLGrup } from "../../caeCardEditor/caeCardObjects/cardPLGrup";
44
42
  import { CardGrup } from "../../caeCardEditor/caeCardObjects/cardGrup";
45
43
  import { CardJointElastic } from "../../caeCardEditor/caeCardObjects/cardJointElastic";
@@ -73,6 +71,17 @@ import { CardWGTJT } from "../../caeCardEditor/caeCardObjects/sacinp/cardWGTJT";
73
71
  import { CardWTCMB } from "../../caeCardEditor/caeCardObjects/sacinp/cardWTCMB";
74
72
  import { CardPGrup } from "../../caeCardEditor/caeCardObjects/cardPGrup";
75
73
  import { CardRFLRFD } from '../../caeCardEditor/caeCardObjects/seainp/cardRFLRFD'
74
+ import { CardAREAA } from "../../caeCardEditor/caeCardObjects/sacinp/cardAREAA";
75
+ import { CardAREAR } from "../../caeCardEditor/caeCardObjects/sacinp/cardAREAR";
76
+ import { CardAREAFB } from "../../caeCardEditor/caeCardObjects/sacinp/cardAREAFB";
77
+ import { CardAREAD } from "../../caeCardEditor/caeCardObjects/sacinp/cardAREAD";
78
+ import { CardOPTIONS } from "../../caeCardEditor/caeCardObjects/sacinp/cardOPTIONS";
79
+ import { CardPCODE } from '../../caeCardEditor/caeCardObjects/sacinp/cardPCODE'
80
+ import { CardSLVOPTDRCT } from '../../caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT'
81
+ import { CardSLVOPTITER } from '../../caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER'
82
+ import { CardCODEIS } from "../../caeCardEditor/caeCardObjects/sacinp/cardCODEIS";
83
+
84
+
76
85
 
77
86
  import { WFSectionObject } from "../objects/caeObjects/sections/wFSectionObject";
78
87
  import { CardDYNMAS } from "../../caeCardEditor/caeCardObjects/sacinp/cardDYNMAS";
@@ -86,7 +95,7 @@ import { MemberLoadConcentratedObject } from "../objects/loadObjects/memberLoadC
86
95
  import { MemberLoadDistributedObject } from "../objects/loadObjects/memberLoadDistributedObject";
87
96
  import { JointLoadObject } from "../objects/loadObjects/jointLoadObject";
88
97
  import { LoadCombinationGroupObject } from "../objects/loadCombinationObjects/loadCombinationGroupObject";
89
- import { ModelOptions } from "../objects/caeObjects/optionObjects/modelOptions";
98
+
90
99
  import { ModelCodeIs } from "../objects/caeObjects/optionObjects/modelCodeIs";
91
100
  import { CenterRenderObject } from "../../gsDevFx/objects/caeObjects/pretreatment/centerRenderObject";
92
101
  import { ModelDynmas } from "../objects/caeObjects/optionObjects/modelDynmas";
@@ -108,7 +117,6 @@ import { JointWeightObject } from "../objects/weightObjects/jointWeightObject";
108
117
  import { MemberWeightDistributedObject } from "../objects/weightObjects/memberWeightDistributedObject";
109
118
  import { MemberWeightConcentratedObject } from "../objects/weightObjects/memberWeightConcentratedObject";
110
119
  import { WGTMEMObject } from "../objects/caeObjects/pretreatment/wgtmemObject";
111
- import { CdmRenderObject } from "../objects/caeObjects/optionObjects/cdmRenderObject";
112
120
  import { SeastateIncwgt } from "../objects/caeObjects/optionObjects/seastateIncwgt";
113
121
  import { SeastateAccel } from "../objects/caeObjects/optionObjects/seastateAccel";
114
122
  import { SeastateWind } from "../objects/caeObjects/optionObjects/seastateWind";
@@ -129,11 +137,11 @@ import { SurfaceDefinitionObject } from "../objects/caeObjects/pretreatment/surf
129
137
  import { SurfaceWeightObject } from '../objects/caeObjects/pretreatment/surfaceWeightObject'
130
138
  import { DeadLoadObject } from '../objects/caeObjects/aftertreatment/deadLoadObject'
131
139
  import { LRFDFactorsObject } from '../objects/caeObjects/aftertreatment/LRFDFactorsObject'
132
- // import { WindAreaObject } from "../objects/caeObjects/pretreatment/WindAreaObject";
140
+ import { WindAreaObject } from "../objects/caeObjects/pretreatment/windAreaObject";
141
+ import { AnlysisOptionsObject } from '../objects/caeObjects/aftertreatment/anlysisOptionsObject'
133
142
  enum DatDataTypeDAT {
134
143
  // sacinp
135
144
  Title,
136
- Options,
137
145
  CodeIs,
138
146
  Sect,
139
147
  Grup,
@@ -180,6 +188,9 @@ enum DatDataTypeDAT {
180
188
  Lcomb,
181
189
  Winshl,
182
190
  Rflrfd,
191
+ Options,
192
+ Pcode,
193
+ Slvopt,
183
194
  //
184
195
  Default,
185
196
  }
@@ -295,6 +306,8 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
295
306
  // 表面定义
296
307
  private activeSurfIDName = ''
297
308
 
309
+ // 受风面定义
310
+ private activeAreaDefinition =''
298
311
  /**
299
312
  * 需要添加到RO数的列表.
300
313
  */
@@ -385,6 +398,14 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
385
398
  this._currentStateDAT = DatDataTypeDAT.Winshl;
386
399
  }else if(line.startsWith('RFLRFD')){
387
400
  this._currentStateDAT = DatDataTypeDAT.Rflrfd;
401
+ }else if(line.startsWith('OPTIONS')){
402
+ this._currentStateDAT = DatDataTypeDAT.Options;
403
+ }else if(line.startsWith('PCODE')){
404
+ this._currentStateDAT = DatDataTypeDAT.Pcode;
405
+ }else if(line.startsWith('SLVOPT')){
406
+ this._currentStateDAT = DatDataTypeDAT.Slvopt;
407
+ }else if(line.startsWith('CODE IS')){
408
+ this._currentStateDAT = DatDataTypeDAT.CodeIs;
388
409
  }
389
410
  // saeinp
390
411
  else if (line.startsWith("LDOPT")) {
@@ -1219,12 +1240,12 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1219
1240
  windGroupObject.businessState = BusinessState.Creating;
1220
1241
  // currentLoadConditionObj.childObjects.push(loadGroupObject);
1221
1242
  process.addRenderObject(currentLoadConditionObj, windGroupObject);
1222
- } else {
1223
- windGroupObject.businessState = BusinessState.Editing;
1224
- for (let i = 0; i < windGroupObject.childObjects.length; i++) {
1225
- const item = windGroupObject.childObjects[i] as DesignBaseObject;
1226
- item.businessState = BusinessState.Deleting;
1227
- }
1243
+ }
1244
+
1245
+ // 先删除原荷载
1246
+ for (let i = 0; i < windGroupObject.childObjects.length; i++) {
1247
+ const item = windGroupObject.childObjects[i] as DesignBaseObject;
1248
+ item.businessState = BusinessState.Deleting;
1228
1249
  }
1229
1250
 
1230
1251
  let card = new CardWIND(line);
@@ -1258,13 +1279,13 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1258
1279
  waveGroupObject.businessState = BusinessState.Creating;
1259
1280
  // currentLoadConditionObj.childObjects.push(loadGroupObject);
1260
1281
  process.addRenderObject(currentLoadConditionObj, waveGroupObject);
1261
- } else {
1262
- waveGroupObject.businessState = BusinessState.Editing;
1282
+ }
1283
+
1284
+ // 先删除原荷载
1263
1285
  for (let i = 0; i < waveGroupObject.childObjects.length; i++) {
1264
1286
  const item = waveGroupObject.childObjects[i] as DesignBaseObject;
1265
1287
  item.businessState = BusinessState.Deleting;
1266
1288
  }
1267
- }
1268
1289
 
1269
1290
  let card = new CardWAVE(line);
1270
1291
  let ro = card.toRenderObject(currentLoadConditionObj.name);
@@ -1297,13 +1318,13 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1297
1318
  groupObject.businessState = BusinessState.Creating;
1298
1319
  // currentLoadConditionObj.childObjects.push(loadGroupObject);
1299
1320
  process.addRenderObject(currentLoadConditionObj, groupObject);
1300
- } else {
1301
- groupObject.businessState = BusinessState.Editing;
1321
+ }
1322
+
1323
+ // 先删除原荷载
1302
1324
  for (let i = 0; i < groupObject.childObjects.length; i++) {
1303
1325
  const item = groupObject.childObjects[i] as DesignBaseObject;
1304
1326
  item.businessState = BusinessState.Deleting;
1305
1327
  }
1306
- }
1307
1328
 
1308
1329
  let card = new CardCURR(line);
1309
1330
  let ro = card.toRenderObject(currentLoadConditionObj.name);
@@ -1338,57 +1359,31 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1338
1359
  }
1339
1360
  }
1340
1361
 
1341
- private readOptionsData(line: string) {
1342
- if (line === "OPTIONS") {
1343
- return;
1344
- }
1345
-
1346
- let process = Process.activeProcess as Process;
1347
- let ro = this.viewer.process.findRenderObjectByType(
1348
- "ModelOptions"
1349
- ) as ModelOptions;
1350
- if (!ro) {
1351
- ro = new ModelOptions();
1352
- ro.businessState = BusinessState.Creating;
1353
- ro.name = "Options";
1354
- ro.cardData = line;
1355
- ro.cardObject = new CardOPTIONS(line);
1356
-
1357
- process.addRenderObject(
1358
- process.caeRenderObjectTreeManager.sacinpNode,
1359
- ro
1360
- );
1361
- } else {
1362
- ro.cardData = line;
1363
- ro.businessState = BusinessState.Editing;
1364
- }
1365
- }
1366
-
1367
- private readCodeIsData(line: string) {
1368
- if (line.trimEnd() === "CODE IS") {
1369
- return;
1370
- }
1371
-
1372
- let process = Process.activeProcess as Process;
1373
- let ro = this.viewer.process.findRenderObjectByType(
1374
- "ModelCodeIs"
1375
- ) as ModelCodeIs;
1376
- if (!ro) {
1377
- ro = new ModelCodeIs();
1378
- ro.businessState = BusinessState.Creating;
1379
- ro.name = "CODEIS";
1380
- ro.cardData = line;
1381
- ro.cardObject = new CardCODEIS(line);
1382
-
1383
- process.addRenderObject(
1384
- process.caeRenderObjectTreeManager.sacinpNode,
1385
- ro
1386
- );
1387
- } else {
1388
- ro.cardData = line;
1389
- ro.businessState = BusinessState.Editing;
1390
- }
1391
- }
1362
+ // private readCodeIsData(line: string) {
1363
+ // if (line.trimEnd() === "CODE IS") {
1364
+ // return;
1365
+ // }
1366
+
1367
+ // let process = Process.activeProcess as Process;
1368
+ // let ro = this.viewer.process.findRenderObjectByType(
1369
+ // "ModelCodeIs"
1370
+ // ) as ModelCodeIs;
1371
+ // if (!ro) {
1372
+ // ro = new ModelCodeIs();
1373
+ // ro.businessState = BusinessState.Creating;
1374
+ // ro.name = "CODEIS";
1375
+ // ro.cardData = line;
1376
+ // ro.cardObject = new CardCODEIS(line);
1377
+
1378
+ // process.addRenderObject(
1379
+ // process.caeRenderObjectTreeManager.sacinpNode,
1380
+ // ro
1381
+ // );
1382
+ // } else {
1383
+ // ro.cardData = line;
1384
+ // ro.businessState = BusinessState.Editing;
1385
+ // }
1386
+ // }
1392
1387
 
1393
1388
  private readDynmasData(line: string) {
1394
1389
  if (line.trimEnd() === "DYNMAS") {
@@ -1487,28 +1482,94 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1487
1482
  ro.cardData = line;
1488
1483
  process.addRenderObject(windShieldParent, ro);
1489
1484
  }
1490
- // 受风面定义
1491
- private readAreaData(line: string) {
1492
- if (line.trimEnd() === "AREA") {
1493
- return;
1494
- }
1495
- if (!line.startsWith("AREA")) {
1496
- return;
1497
- }
1498
- let process = Process.activeProcess as Process;
1499
- let pretreatmentRO = this.viewer.process.findRenderObjectByName(
1500
- "前处理可视化辅助"
1501
- ) as DesignBaseObject;
1485
+ // 受风面定义
1486
+ private readAreaData(line: string) {
1487
+ const trimmed = line.trimEnd();
1488
+ if (trimmed === "AREA" || !trimmed.startsWith("AREA")) return;
1502
1489
 
1503
- let areaRollParent = process.findCaeObjectByNameInChildObject(
1504
- pretreatmentRO,
1505
- "受风面定义"
1506
- ) as DesignBaseObject;
1490
+ const process = Process.activeProcess as Process;
1491
+ const pretreatmentRO = this.viewer.process.findRenderObjectByName(
1492
+ "前处理可视化辅助"
1493
+ ) as DesignBaseObject;
1507
1494
 
1495
+ const areaRollParent = process.findCaeObjectByNameInChildObject(
1496
+ pretreatmentRO,
1497
+ "受风面定义"
1498
+ ) as DesignBaseObject;
1508
1499
 
1500
+ const start = 4;
1501
+ const len = 2; // 占位长度
1502
+ let name = this.getDatData(line, start, len).trim();
1509
1503
 
1504
+ let areaDefinition = this.getDatData(line, 78, 2).trim();
1505
+ // 是否需要追加分布节点 因为分布节点超过7个会往下排一行
1506
+ let addMoreNode = false;
1507
+
1508
+ // 当前行没有定义类型时,沿用上一个定义,并标记为追加节点
1509
+ if (!areaDefinition) {
1510
+ areaDefinition = this.activeAreaDefinition;
1511
+ addMoreNode = true;
1512
+ }
1513
+ this.activeAreaDefinition = areaDefinition;
1514
+
1515
+
1516
+ // 如果是新定义,则检查名称重复并处理
1517
+ if (!addMoreNode) {
1518
+ const newName = this.checkNameRepeatAndGetNewName(process.nameWindArea, name);
1519
+ if (name !== newName) name = newName;
1520
+ }
1521
+
1522
+ // 根据类型实例化相应的卡片
1523
+ let cardAREA;
1524
+ switch (areaDefinition) {
1525
+ case "F":
1526
+ case "B":
1527
+ cardAREA = new CardAREAFB(line);
1528
+ break;
1529
+ case "D":
1530
+ cardAREA = new CardAREAD(line);
1531
+ break;
1532
+ case "A":
1533
+ cardAREA = new CardAREAA(line);
1534
+ break;
1535
+ case "R":
1536
+ cardAREA = new CardAREAR(line);
1537
+ break;
1538
+ default:
1539
+ console.warn("未知的受风面定义类型:", areaDefinition);
1540
+ return;
1541
+ }
1542
+
1543
+ cardAREA.areaID.value = name;
1544
+
1545
+ // 初始化 WindAreaObject
1546
+ let ro = new WindAreaObject(name);
1547
+
1548
+ if (addMoreNode) {
1549
+ // 查找已有受风面对象,并合并节点
1550
+ const existing = process.findCaeObjectByNameInChildObject(
1551
+ areaRollParent,
1552
+ name
1553
+ ) as WindAreaObject;
1554
+
1555
+ if (existing) {
1556
+ ro = cardAREA.toRenderObject(name, existing.actionNodeList);
1557
+ }
1558
+ } else {
1559
+ // 新建定义
1560
+ ro = cardAREA.toRenderObject(name, []);
1561
+ }
1562
+
1563
+ ro.businessState = BusinessState.Creating;
1564
+ ro.cardObject = cardAREA;
1565
+ ro.name = name;
1566
+
1567
+ // 仅在新增定义时添加到渲染对象树
1568
+ if (!addMoreNode) {
1569
+ process.addRenderObject(areaRollParent, ro);
1570
+ }
1571
+ }
1510
1572
 
1511
- }
1512
1573
 
1513
1574
  // 表面定义
1514
1575
  private readSurfIDData(line: string) {
@@ -1586,7 +1647,7 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1586
1647
  pretreatmentRO,
1587
1648
  "LRFD抗力系数"
1588
1649
  ) as DesignBaseObject;
1589
- console.log('导入lrfdParent',lrfdParent,lrfdParent?.childObjects);
1650
+
1590
1651
 
1591
1652
  if (lrfdParent && lrfdParent?.childObjects?.length >0) {
1592
1653
  return
@@ -1600,8 +1661,99 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1600
1661
  lrfdParent,
1601
1662
  ro
1602
1663
  );
1603
- console.log('导入lrfd',ro);
1604
-
1664
+
1665
+
1666
+ }
1667
+ private readOptionsData(line: string) {
1668
+ console.log('导入OptionsData',line);
1669
+
1670
+ let process = Process.activeProcess as Process;
1671
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
1672
+ "后处理计算结果"
1673
+ ) as DesignBaseObject;
1674
+
1675
+ let anlysisParent = process.findCaeObjectByNameInChildObject(
1676
+ pretreatmentRO,
1677
+ "分析选项"
1678
+ ) as DesignBaseObject;
1679
+
1680
+ // 如果父节点不存在就创建
1681
+ if (!anlysisParent) {
1682
+ anlysisParent = new DesignBaseObject();
1683
+ anlysisParent.businessState = BusinessState.Creating;
1684
+ anlysisParent.name = "分析选项";
1685
+ process.addRenderObject(pretreatmentRO, anlysisParent);
1686
+ } else {
1687
+ if (line.startsWith("OPTIONS")) {
1688
+ anlysisParent.businessState = BusinessState.Editing;
1689
+ for (let i = 0; i < anlysisParent.childObjects.length; i++) {
1690
+ const item = anlysisParent.childObjects[i];
1691
+ if (item instanceof AnlysisOptionsObject) {
1692
+ item.businessState = BusinessState.Deleting;
1693
+ }
1694
+ }
1695
+ }
1696
+ }
1697
+
1698
+ // OPTIONS 卡片
1699
+ if (line.startsWith("OPTIONS")) {
1700
+ let card = new CardOPTIONS(line)
1701
+ let ro = card.toRenderObject();
1702
+ ro.businessState = BusinessState.Creating;
1703
+ ro.name = 'OPTIONS'
1704
+ process.addRenderObject(
1705
+ anlysisParent,
1706
+ ro
1707
+ );
1708
+ }
1709
+
1710
+ // PCODE 卡片
1711
+ if (line.startsWith("PCODE")) {
1712
+ let cardPCODE = new CardPCODE(line)
1713
+ let roPCODE = cardPCODE.toRenderObject();
1714
+ roPCODE.name = 'PCODE'
1715
+ roPCODE.businessState = BusinessState.Creating;
1716
+ process.addRenderObject(
1717
+ anlysisParent,
1718
+ roPCODE
1719
+ );
1720
+ }
1721
+
1722
+
1723
+ // SLVOPT 卡片
1724
+ if (line.startsWith("SLVOPT")) {
1725
+ let linearSolverType = this.getDatData(line, 7, 5).trim();
1726
+ let card =
1727
+ linearSolverType === "DRCT"
1728
+ ? new CardSLVOPTDRCT(line)
1729
+ : linearSolverType === "ITER"
1730
+ ? new CardSLVOPTITER(line)
1731
+ : null;
1732
+
1733
+ if (card) {
1734
+ const ro = card.toRenderObject();
1735
+ ro.businessState = BusinessState.Creating;
1736
+ ro.name = 'SLVOPT'
1737
+ process.addRenderObject(
1738
+ anlysisParent,
1739
+ ro
1740
+ );
1741
+ }
1742
+ }
1743
+
1744
+ // CODEIS 卡片
1745
+ if (line.startsWith("CODE IS")) {
1746
+ console.log('导入CODEIS',line);
1747
+
1748
+ let cardCODEIS = new CardCODEIS(line)
1749
+ let ro = cardCODEIS.toRenderObject();
1750
+ ro.businessState = BusinessState.Creating;
1751
+ ro.name = 'CODEIS'
1752
+ process.addRenderObject(
1753
+ anlysisParent,
1754
+ ro
1755
+ );
1756
+ }
1605
1757
  }
1606
1758
 
1607
1759
  // 表面质量
@@ -1694,7 +1846,6 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1694
1846
  loadConditionName
1695
1847
  ) as DesignBaseObject;
1696
1848
  if (!activeLoadConditionObject) {
1697
- console.log(`⚠️ 没找到 LoadCondition 节点: ${loadConditionName}`);
1698
1849
  continue;
1699
1850
  }
1700
1851
  let loadConditionRO = process.findCaeObjectByNameInChildObject(
@@ -1764,6 +1915,37 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1764
1915
  return blocks
1765
1916
  }
1766
1917
 
1918
+ // 读取受风面定义段落信息
1919
+ mergeAreaLines(lines: string[]): string[] {
1920
+ const mergedLines: string[] = [];
1921
+ let buffer = '';
1922
+
1923
+ for (let i = 0; i < lines.length; i++) {
1924
+ const line = lines[i];
1925
+
1926
+ // 跳过空行
1927
+ if (!line.trim()) continue;
1928
+
1929
+ // 如果是以 AREA 开头的新块
1930
+ if (line.startsWith('AREA')) {
1931
+ // 先把上一块推入结果
1932
+ if (buffer) {
1933
+ mergedLines.push(buffer);
1934
+ buffer = '';
1935
+ }
1936
+ buffer = line; // 新块开始
1937
+ } else {
1938
+ // 否则是前一个 AREA 的续行
1939
+ buffer += line.trim(); // 拼接续行(去掉多余空格)
1940
+ }
1941
+ }
1942
+
1943
+ // 最后一块也要加入
1944
+ if (buffer) mergedLines.push(buffer);
1945
+
1946
+ return mergedLines;
1947
+ }
1948
+
1767
1949
 
1768
1950
  private readWGTMEMData(line: string) {
1769
1951
  if (line.trimEnd() === "WGTMEM") {
@@ -1974,12 +2156,9 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1974
2156
  case DatDataTypeDAT.Title:
1975
2157
  this.readTitleData(line);
1976
2158
  break;
1977
- case DatDataTypeDAT.Options:
1978
- this.readOptionsData(line);
1979
- break;
1980
- case DatDataTypeDAT.CodeIs:
1981
- this.readCodeIsData(line);
1982
- break;
2159
+ // case DatDataTypeDAT.CodeIs:
2160
+ // this.readCodeIsData(line);
2161
+ // break;
1983
2162
  case DatDataTypeDAT.Center:
1984
2163
  this.readCenterData(line);
1985
2164
  break;
@@ -1987,7 +2166,19 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1987
2166
  this.readWINSHLData(line);
1988
2167
  break;
1989
2168
  case DatDataTypeDAT.Rflrfd:
1990
- this.readLRFDFactors(line);
2169
+ this.readLRFDFactors(line)
2170
+ break;
2171
+ case DatDataTypeDAT.Options:
2172
+ this.readOptionsData(line);
2173
+ break;
2174
+ case DatDataTypeDAT.Pcode:
2175
+ this.readOptionsData(line);
2176
+ break;
2177
+ case DatDataTypeDAT.Slvopt:
2178
+ this.readOptionsData(line);
2179
+ break;
2180
+ case DatDataTypeDAT.CodeIs:
2181
+ this.readOptionsData(line);
1991
2182
  break;
1992
2183
  case DatDataTypeDAT.Dynmas:
1993
2184
  this.readDynmasData(line);
@@ -2760,22 +2951,17 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2760
2951
  let ro = this.viewer.process.findRenderObjectByType(
2761
2952
  "SeastateHydro"
2762
2953
  ) as SeastateHydro;
2763
- if (!ro) {
2764
- ro = new SeastateHydro();
2765
- ro.businessState = BusinessState.Creating;
2766
- ro.name = "HYDRO";
2767
- ro.cardData = line;
2768
- ro.cardObject = new CardHYDRO(line);
2769
-
2770
- process.addRenderObject(
2771
- process.caeRenderObjectTreeManager.seastateNode,
2772
- ro
2773
- );
2774
- } else {
2775
- ro.businessState = BusinessState.Editing;
2776
- ro.cardData = line;
2777
- ro.cardObject = new CardHYDRO(line);
2954
+ if (ro) {
2955
+ ro.businessState = BusinessState.Deleting;
2778
2956
  }
2957
+
2958
+ let card = new CardHYDRO(line)
2959
+ ro = card.toRenderObject()
2960
+
2961
+ process.addRenderObject(
2962
+ process.caeRenderObjectTreeManager.seastateNode,
2963
+ ro
2964
+ );
2779
2965
  }
2780
2966
 
2781
2967
  private readHydro2(line: string) {
@@ -2783,22 +2969,17 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2783
2969
  let ro = this.viewer.process.findRenderObjectByType(
2784
2970
  "SeastateHydro2"
2785
2971
  ) as SeastateHydro2;
2786
- if (!ro) {
2787
- ro = new SeastateHydro2();
2788
- ro.businessState = BusinessState.Creating;
2789
- ro.name = "HYDRO2";
2790
- ro.cardData = line;
2791
- ro.cardObject = new CardHYDRO2(line);
2792
-
2793
- process.addRenderObject(
2794
- process.caeRenderObjectTreeManager.seastateNode,
2795
- ro
2796
- );
2797
- } else {
2798
- ro.businessState = BusinessState.Editing;
2799
- ro.cardData = line;
2800
- ro.cardObject = new CardHYDRO2(line);
2972
+ if (ro) {
2973
+ ro.businessState = BusinessState.Deleting
2801
2974
  }
2975
+
2976
+ let card = new CardHYDRO2(line)
2977
+ ro = card.toRenderObject()
2978
+
2979
+ process.addRenderObject(
2980
+ process.caeRenderObjectTreeManager.seastateNode,
2981
+ ro
2982
+ );
2802
2983
  }
2803
2984
 
2804
2985
  private readIncwgt(line: string) {
@@ -2850,20 +3031,32 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2850
3031
 
2851
3032
  private readLcsel(line: string) {
2852
3033
  let process = Process.activeProcess as Process;
2853
- let ro = this.viewer.process.findRenderObjectByType(
2854
- "SeastateLcsel"
2855
- ) as SeastateLcsel;
2856
3034
 
2857
- ro = new SeastateLcsel();
2858
- ro.businessState = BusinessState.Creating;
2859
- ro.name = "LCSEL";
2860
- ro.cardData = line;
2861
- ro.cardObject = new CardLCSEL(line);
3035
+ let pretreatmentRO = process.findRenderObjectByName(
3036
+ "后处理计算结果"
3037
+ ) as DesignBaseObject;
2862
3038
 
2863
- process.addRenderObject(
2864
- process.caeRenderObjectTreeManager.seastateNode,
2865
- ro
2866
- );
3039
+ let lcselParent = process.findCaeObjectByNameInChildObject(
3040
+ pretreatmentRO,
3041
+ "荷载工况选择"
3042
+ ) as DesignBaseObject;
3043
+
3044
+ if (!lcselParent) {
3045
+ lcselParent = new DesignBaseObject();
3046
+ lcselParent.businessState = BusinessState.Creating;
3047
+ lcselParent.name = "荷载工况选择";
3048
+ process.addRenderObject(pretreatmentRO, lcselParent);
3049
+ }
3050
+
3051
+ for(let i = 0; i < lcselParent.childObjects.length; i++) {
3052
+ let child = lcselParent.childObjects[i] as DesignBaseObject;
3053
+ child.businessState = BusinessState.Deleting;
3054
+ }
3055
+
3056
+ let card = new CardLCSEL(line);
3057
+ let ro = card.toRenderObject();
3058
+ ro.businessState = BusinessState.Creating;
3059
+ process.addRenderObject(lcselParent, ro);
2867
3060
  }
2868
3061
 
2869
3062
  private readLcomb(line: string) {
@@ -2904,17 +3097,13 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2904
3097
  loadCombinationGroupObject.businessState = BusinessState.Creating;
2905
3098
  process.addRenderObject(parentNode, loadCombinationGroupObject);
2906
3099
  _loadCombinationGroupList.add(loadCombinationGroupObject);
2907
- } else {
2908
- loadCombinationGroupObject._businessState = BusinessState.Editing;
2909
3100
  }
2910
3101
 
2911
- if (loadCombinationGroupObject instanceof LoadCombinationGroupObject) {
2912
- // 荷载组合
2913
- let card = new CardLCOMB(line);
2914
- let ro = card.toRenderObject(setName);
2915
- ro.businessState = BusinessState.Creating;
2916
- process.addRenderObject(loadCombinationGroupObject, ro);
2917
- }
3102
+ // 荷载组合
3103
+ let card = new CardLCOMB(line);
3104
+ let ro = card.toRenderObject(setName);
3105
+ ro.businessState = BusinessState.Creating;
3106
+ process.addRenderObject(loadCombinationGroupObject, ro);
2918
3107
  }
2919
3108
 
2920
3109
  private readCdm(line: string) {
@@ -2934,8 +3123,11 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2934
3123
  cdmParent.businessState = BusinessState.Creating;
2935
3124
  cdmParent.name = "拖曳和惯性系数";
2936
3125
  process.addRenderObject(pretreatmentRO, cdmParent);
2937
- } else {
2938
- cdmParent.businessState = BusinessState.Editing;
3126
+ }
3127
+
3128
+ for(let i = 0; i < cdmParent.childObjects.length; i++) {
3129
+ let child = cdmParent.childObjects[i] as DesignBaseObject;
3130
+ child.businessState = BusinessState.Deleting;
2939
3131
  }
2940
3132
 
2941
3133
  let card = new CardCDM(line);
@@ -2949,16 +3141,19 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
2949
3141
  let ro = this.viewer.process.findRenderObjectByType(
2950
3142
  "SeastateUcpart"
2951
3143
  ) as SeastateUcpart;
2952
- if (!ro) {
2953
- let card = new CardUCPART();
2954
- let ro = card.toRenderObject();
2955
- ro.businessState = BusinessState.Creating;
2956
3144
 
2957
- process.addRenderObject(
2958
- process.caeRenderObjectTreeManager.seastateNode,
2959
- ro
2960
- );
3145
+ if (ro) {
3146
+ ro.businessState = BusinessState.Deleting;
2961
3147
  }
3148
+
3149
+ let card = new CardUCPART(line);
3150
+ ro = card.toRenderObject();
3151
+ ro.businessState = BusinessState.Creating;
3152
+
3153
+ process.addRenderObject(
3154
+ process.caeRenderObjectTreeManager.seastateNode,
3155
+ ro
3156
+ );
2962
3157
  }
2963
3158
 
2964
3159
  private readFile(line: string) {