gs-cae-design 1.1.68 → 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 (157) hide show
  1. package/README.md +4 -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 +217 -74
  6. package/lib/CAEDesign.umd-report.html +2 -2
  7. package/lib/CAEDesign.umd.js +217 -74
  8. package/lib/CAEDesign.umd.min-report.html +2 -2
  9. package/lib/CAEDesign.umd.min.js +217 -74
  10. package/package.json +1 -1
  11. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.ts +6 -60
  12. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.ts +81 -0
  13. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.ts +83 -0
  14. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.ts +90 -0
  15. package/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.ts +64 -0
  16. package/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.ts +62 -41
  17. package/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.ts +320 -162
  18. package/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.ts +92 -0
  19. package/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.ts +81 -0
  20. package/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.ts +117 -0
  21. package/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.ts +37 -1
  22. package/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.ts +11 -0
  23. package/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.ts +18 -0
  24. package/src/caeCardEditor/caeCardObjects/seainp/cardWIND.ts +96 -0
  25. package/src/gsDevFx/managers/datReaderManager.ts +354 -159
  26. package/src/gsDevFx/managers/datWriterManager.ts +609 -62
  27. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +30 -0
  28. package/src/gsDevFx/managers/persistenceManager.ts +4 -5
  29. package/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.ts +460 -0
  30. package/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.ts +18 -18
  31. package/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.ts +103 -0
  32. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.ts +128 -21
  33. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.ts +28 -21
  34. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.ts +7 -7
  35. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.ts +7 -0
  36. package/src/gsDevFx/objects/caeObjects/pretreatment/windAreaObject.ts +43 -10
  37. package/src/gsDevFx/objects/loadObjects/loadConditionObject.ts +4 -4
  38. package/src/gsDevFx/objects/loadObjects/waveLoadObject.ts +1 -1
  39. package/src/gsDevFx/objects/loadObjects/windLoadObject.ts +18 -4
  40. package/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.ts +1 -0
  41. package/src/gsDevFx/process.ts +6 -2
  42. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.ts +8 -3
  43. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.ts +2 -0
  44. package/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.ts +10 -1
  45. package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.ts +5 -0
  46. package/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.ts +108 -0
  47. package/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.ts +135 -0
  48. package/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.ts +142 -0
  49. package/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.ts +221 -0
  50. package/src/viewerWrapper/commands/aftertreatment/addSeastateUcpart/commandAddSeastateUcpart.ts +18 -21
  51. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.ts +7 -1
  52. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.ts +29 -0
  53. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.ts +6 -1
  54. package/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.ts +328 -0
  55. package/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.ts +145 -0
  56. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.ts +4 -0
  57. package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.ts +8 -0
  58. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.ts +3 -1
  59. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.ts +11 -1
  60. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.ts +28 -0
  61. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.ts +6 -2
  62. package/src/viewerWrapper/commands/pretreatment/viewLoadProperty/commandViewLoadProperty.ts +11 -11
  63. package/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.ts +49 -20
  64. package/src/viewerWrapper/commands/pretreatment/windAreaEdit/commandWindAreaEdit.ts +45 -18
  65. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts +0 -56
  66. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREA.d.ts.map +1 -1
  67. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.d.ts +39 -0
  68. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAA.d.ts.map +1 -0
  69. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.d.ts +39 -0
  70. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAD.d.ts.map +1 -0
  71. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.d.ts +39 -0
  72. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAFB.d.ts.map +1 -0
  73. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.d.ts +23 -0
  74. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardAREAR.d.ts.map +1 -0
  75. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.d.ts +19 -21
  76. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCODEIS.d.ts.map +1 -1
  77. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.d.ts +193 -29
  78. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardOPTIONS.d.ts.map +1 -1
  79. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.d.ts +77 -0
  80. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardPCODE.d.ts.map +1 -0
  81. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.d.ts +72 -0
  82. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT.d.ts.map +1 -0
  83. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.d.ts +99 -0
  84. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER.d.ts.map +1 -0
  85. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.d.ts +18 -0
  86. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO.d.ts.map +1 -1
  87. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.d.ts +2 -0
  88. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardHYDRO2.d.ts.map +1 -1
  89. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.d.ts +2 -0
  90. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCSEL.d.ts.map +1 -1
  91. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts +96 -0
  92. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardWIND.d.ts.map +1 -1
  93. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +3 -2
  94. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  95. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts +1 -0
  96. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  97. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +6 -0
  98. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  99. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  100. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.d.ts +69 -0
  101. package/types/caeDesign/src/gsDevFx/objects/caeObjects/aftertreatment/anlysisOptionsObject.d.ts.map +1 -0
  102. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/cdmRenderObject.d.ts.map +1 -1
  103. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.d.ts +22 -0
  104. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/lcselRenderObject.d.ts.map +1 -0
  105. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.d.ts +40 -6
  106. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro.d.ts.map +1 -1
  107. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.d.ts +7 -5
  108. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateHydro2.d.ts.map +1 -1
  109. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.d.ts +1 -2
  110. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/seastateUcpart.d.ts.map +1 -1
  111. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/WindAreaObject.d.ts.map +1 -1
  112. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts +1 -0
  113. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts.map +1 -1
  114. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts +1 -0
  115. package/types/caeDesign/src/gsDevFx/objects/loadObjects/windLoadObject.d.ts.map +1 -1
  116. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts.map +1 -1
  117. package/types/caeDesign/src/gsDevFx/process.d.ts +2 -0
  118. package/types/caeDesign/src/gsDevFx/process.d.ts.map +1 -1
  119. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.d.ts.map +1 -1
  120. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.d.ts.map +1 -1
  121. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addJointLoad/commandAddJointLoad.d.ts.map +1 -1
  122. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts.map +1 -1
  123. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.d.ts +6 -0
  124. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/addLoadConditionSelectionConfig.d.ts.map +1 -0
  125. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.d.ts +18 -0
  126. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection.d.ts.map +1 -0
  127. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.d.ts +6 -0
  128. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/addSeastateHydroConfig.d.ts.map +1 -0
  129. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.d.ts +22 -0
  130. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro.d.ts.map +1 -0
  131. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addSeastateUcpart/commandAddSeastateUcpart.d.ts.map +1 -1
  132. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts +1 -0
  133. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.d.ts.map +1 -1
  134. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts +1 -0
  135. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.d.ts.map +1 -1
  136. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts.map +1 -1
  137. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.d.ts +7 -0
  138. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/anlysisOptionsConfig.d.ts.map +1 -0
  139. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.d.ts +12 -0
  140. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions.d.ts.map +1 -0
  141. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.d.ts.map +1 -1
  142. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts.map +1 -1
  143. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts.map +1 -1
  144. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts.map +1 -1
  145. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts +1 -0
  146. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.d.ts.map +1 -1
  147. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts.map +1 -1
  148. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts.map +1 -1
  149. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windAreaEdit/commandWindAreaEdit.d.ts.map +1 -1
  150. package/types/ceecDesign/src/api/renderObjectServices.d.ts.map +0 -1
  151. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts +0 -15
  152. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts.map +0 -1
  153. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts +0 -18
  154. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts.map +0 -1
  155. package/src/gsDevFx/objects/caeObjects/optionObjects/modelOptions.ts +0 -65
  156. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateCdm.ts +0 -56
  157. package/src/gsDevFx/objects/caeObjects/optionObjects/seastateLcsel.ts +0 -56
@@ -112,8 +112,11 @@ import CommandEditDeadLoad from '../../../viewerWrapper/commands/aftertreatment/
112
112
  import CommandWindShield from '../../../viewerWrapper/commands/pretreatment/windShield/commandWindShield'
113
113
  import CommandWindArea from '../../../viewerWrapper/commands/pretreatment/windArea/commandWindArea'
114
114
  import CommandAddSeastateUcpart from '../../../viewerWrapper/commands/aftertreatment/addSeastateUcpart/commandAddSeastateUcpart'
115
+ import CommandAddSeastateHydro from '../../../viewerWrapper/commands/aftertreatment/addSeastateHydro/commandAddSeastateHydro'
116
+ import CommandAddLoadConditionSelection from '../../../viewerWrapper/commands/aftertreatment/addLoadConditionSelection/commandAddLoadConditionSelection'
115
117
  import CommandWindAreaEdit from '../../../viewerWrapper/commands/pretreatment/windAreaEdit/commandWindAreaEdit'
116
118
  import CommandLRFDFactors from '../../../viewerWrapper/commands/aftertreatment/LRFDFactors/commandLRFDFactors'
119
+ import CommandAnlysisOptions from '../../../viewerWrapper/commands/aftertreatment/anlysisOptions/commandAnlysisOptions'
117
120
  import { SectionViewer } from "../../../gsDevFx/sectionViewer";
118
121
  export class CommandInterfaceManager extends Longan.ViewerManagerBase {
119
122
  constructor(viewer: Viewer) {
@@ -1728,6 +1731,24 @@ export class CommandInterfaceManager extends Longan.ViewerManagerBase {
1728
1731
  .currentCommand as CommandAddSeastateUcpart;
1729
1732
  return command;
1730
1733
  }
1734
+ commandAddSeastateHydro(){
1735
+ let command = new CommandAddSeastateHydro();
1736
+ (this.viewer.process.commandManager as CommandManager).multiplyExecute(
1737
+ command
1738
+ );
1739
+ command = this.viewer.process.commandManager
1740
+ .currentCommand as CommandAddSeastateHydro;
1741
+ return command;
1742
+ }
1743
+ commandAddLoadConditionSelection(){
1744
+ let command = new CommandAddLoadConditionSelection();
1745
+ (this.viewer.process.commandManager as CommandManager).multiplyExecute(
1746
+ command
1747
+ );
1748
+ command = this.viewer.process.commandManager
1749
+ .currentCommand as CommandAddLoadConditionSelection;
1750
+ return command;
1751
+ }
1731
1752
  CommandWindAreaEdit(){
1732
1753
  let command = new CommandWindAreaEdit();
1733
1754
  (this.viewer.process.commandManager as CommandManager).multiplyExecute(
@@ -1764,6 +1785,15 @@ export class CommandInterfaceManager extends Longan.ViewerManagerBase {
1764
1785
  .currentCommand as CommandLRFDFactors;
1765
1786
  return command;
1766
1787
  }
1788
+ CommandAnlysisOptions(){
1789
+ let command = new CommandAnlysisOptions();
1790
+ (this.viewer.process.commandManager as CommandManager).multiplyExecute(
1791
+ command
1792
+ );
1793
+ command = this.viewer.process.commandManager
1794
+ .currentCommand as CommandAnlysisOptions;
1795
+ return command;
1796
+ }
1767
1797
  closeAllCommand() {
1768
1798
  (this.viewer.process.commandManager as CommandManager).closeAllCommands();
1769
1799
  }
@@ -53,15 +53,14 @@ import { CutlineComponentGroupObject } from "../objects/pretreatmentObjects/cutl
53
53
  import { CutlineGrupIdObject } from "../objects/pretreatmentObjects/cutlineGrupIdObject";
54
54
  import { RenderObject } from "../objects/renderObject";
55
55
  import { ModelTitle } from "../objects/caeObjects/optionObjects/modelTitle";
56
- import { ModelOptions } from "../objects/caeObjects/optionObjects/modelOptions";
57
56
  import { ModelCodeIs } from "../objects/caeObjects/optionObjects/modelCodeIs";
58
57
  import { SeastateLdopt } from "../objects/caeObjects/optionObjects/seastateLdopt";
59
58
  import { SeastateHydro } from "../objects/caeObjects/optionObjects/seastateHydro";
60
59
  import { SeastateHydro2 } from "../objects/caeObjects/optionObjects/seastateHydro2";
61
- import { SeastateLcsel } from "../objects/caeObjects/optionObjects/seastateLcsel";
62
60
  import { SeastateUcpart } from "../objects/caeObjects/optionObjects/seastateUcpart";
63
61
  import { SeastateFile } from "../objects/caeObjects/optionObjects/seastateFile";
64
62
  import { CdmRenderObject } from "../objects/caeObjects/optionObjects/cdmRenderObject";
63
+ import { LcselRenderObject } from "../objects/caeObjects/optionObjects/lcselRenderObject";
65
64
  import { CorrzObject } from "../objects/caeObjects/pretreatment/corrzObject";
66
65
  import { MgrovObject } from "../objects/caeObjects/pretreatment/mgrovObject";
67
66
  import { CutlineGrupThicknessObject } from "../objects/pretreatmentObjects/cutlineGrupThicknessObject";
@@ -73,6 +72,7 @@ import { DeadLoadObject } from '../objects/caeObjects/aftertreatment/deadLoadObj
73
72
  import { LRFDFactorsObject } from '../objects/caeObjects/aftertreatment/LRFDFactorsObject'
74
73
  import { WindShieldObject } from "../objects/caeObjects/pretreatment/windShieldObject";
75
74
  import { WindAreaObject } from "../objects/caeObjects/pretreatment/windAreaObject";
75
+ import {AnlysisOptionsObject} from '../objects/caeObjects/aftertreatment/anlysisOptionsObject'
76
76
  export class PersistenceManager extends Longan.PersistenceManager {
77
77
  referenceList = new Longan.StringKeyList<IReferenceObject>();
78
78
  needReferenceList = new Longan.List<IReferencedObject>();
@@ -223,17 +223,16 @@ export class PersistenceManager extends Longan.PersistenceManager {
223
223
  );
224
224
  this.typeList.add('DeadLoadObject', DeadLoadObject.prototype)
225
225
  this.typeList.add('LRFDFactorsObject', LRFDFactorsObject.prototype)
226
-
226
+ this.typeList.add('AnlysisOptionsObject',AnlysisOptionsObject.prototype)
227
227
  this.typeList.add('WindShieldObject', WindShieldObject.prototype)
228
228
  this.typeList.add('WindAreaObject', WindAreaObject.prototype)
229
229
  // 项目配置数据.
230
230
  this.typeList.add("ModelTitle", ModelTitle.prototype);
231
- this.typeList.add("ModelOptions", ModelOptions.prototype);
232
231
  this.typeList.add("ModelCodeIs", ModelCodeIs.prototype);
233
232
  this.typeList.add("SeastateLdopt", SeastateLdopt.prototype);
234
233
  this.typeList.add("SeastateHydro", SeastateHydro.prototype);
235
234
  this.typeList.add("SeastateHydro2", SeastateHydro2.prototype);
236
- this.typeList.add("SeastateLcsel", SeastateLcsel.prototype);
235
+ this.typeList.add("LcselRenderObject", LcselRenderObject.prototype);
237
236
  this.typeList.add("SeastateUcpart", SeastateUcpart.prototype);
238
237
  this.typeList.add("SeastateFile", SeastateFile.prototype);
239
238
  this.typeList.add("SeastateLcomb", SeastateLcomb.prototype);
@@ -0,0 +1,460 @@
1
+ import { PersistenceManager } from "../../../managers/persistenceManager";
2
+ import { InstanceRenderObject } from "../../instancesObjects/instanceRenderObject";
3
+ import { DesignBaseObject } from "gs-ceec-design";
4
+ import { Longan } from "gs-bim-air";
5
+ import { CardOPTIONS } from "../../../../caeCardEditor/caeCardObjects/sacinp/cardOPTIONS";
6
+ import { CardPCODE } from '../../../../caeCardEditor/caeCardObjects/sacinp/cardPCODE'
7
+ import { CardSLVOPTDRCT } from '../../../../caeCardEditor/caeCardObjects/sacinp/cardSLVOPTDRCT'
8
+ import { CardSLVOPTITER } from '../../../../caeCardEditor/caeCardObjects/sacinp/cardSLVOPTITER'
9
+ import { CardCODEIS } from "../../../../caeCardEditor/caeCardObjects/sacinp/cardCODEIS";
10
+ import { CaeNumber } from "../../../../utility/utility";
11
+ export class AnlysisOptionsObject extends DesignBaseObject {
12
+ typeName = "AnlysisOptionsObject";
13
+ cardData: string = null;
14
+ cardObject: CardOPTIONS = null;
15
+ // 工作单位
16
+ workingUnits: string = "";
17
+
18
+ // 规范校核选项
19
+ codeCheckOption: string = "";
20
+
21
+ // 输入超单元
22
+ inputSuperElement: string = "";
23
+
24
+ // 忽略杆段释放
25
+ ignoreMemberReleases: string = "";
26
+
27
+ // 创建超单元
28
+ createSuperElement: string = "";
29
+
30
+ // 考虑杆件剪切效应
31
+ includeMemberShearEffects: string = "";
32
+
33
+ // 端部弯矩修正系数CB计算
34
+ calculateEndMomentsCB: string = "";
35
+
36
+ // 非分段杆件应力分段数
37
+ stressCheckDivisionsNonSeg: number = 1;
38
+
39
+ // 分段杆件应力分段数
40
+ stressCheckDivisionsSeg: number = 1;
41
+
42
+ // P-Δ 效应
43
+ pDeltaEffects: string = "";
44
+
45
+ // 板单元核验
46
+ platePanelCheck: string = "";
47
+
48
+ // 板单元选项
49
+ plateOption: string = "";
50
+
51
+ // 检查板单元定义(false→空,true→CP)
52
+ checkPlateElementDefinition: string = "";
53
+
54
+ // 应力选项
55
+ stressOption: string = "";
56
+
57
+ // 弯矩放大选项
58
+ momentMagnification: string = "";
59
+
60
+ // 回显输入
61
+ echoInput: string = "";
62
+
63
+ // 节点与单元解释性报告(false→空,true→PT)
64
+ jointElementReport: string = "";
65
+
66
+ // 节点反力(false→空,true→PT)
67
+ jointReactions: string = "";
68
+
69
+ // 分区统一性校核(false→空,true→PT)
70
+ partitionedUnityCheck: string = "";
71
+
72
+ // 节点位移(false→空,true→PT)
73
+ jointDeflections: string = "";
74
+
75
+ // 最大应力比处的应力输出(false→空,true→PT)
76
+ stressAtMaxUnityCheck: string = "";
77
+
78
+ // 杆件内力(false→空,true→PT)
79
+ memberInternalLoads: string = "";
80
+
81
+ // 最大应力比处的内力输出(false→空,true→PT)
82
+ internalLoadsAtMaxUnityCheck: string = "";
83
+
84
+ // 最大应力比的详细校核信息(false→空,true→PT)
85
+ unityCheckDetailsAtMaxUnityCheck: string = "";
86
+
87
+ // 单元详细信息
88
+ elementDetails: string = "";
89
+
90
+ // 附加后处理文件选项
91
+ supplementalPostfileOption: string = "";
92
+
93
+ // 特殊单元
94
+ specialElement: string = "";
95
+
96
+ // 非圆管截面设计规范选项
97
+ lrfdOrSlender: string = "";
98
+
99
+ // 非圆截面校核
100
+ nonTubCodeOption: string = "";
101
+
102
+ // 板格规范选项(由板单元核验控制)
103
+ platePanelCheckOption: string = "";
104
+
105
+ // 安全系数
106
+ gammaMValue: number = 1.15;
107
+
108
+ // 方法选择
109
+ methodSelection: number = 2;
110
+
111
+ // 板屈曲允许使用率
112
+ allowableUsageFactorForWsb: number = 0.6;
113
+
114
+ // 非矩形允许偏差角度(deg)
115
+ nonRectangularAllowableDeg: number = 10;
116
+
117
+ // 共面性检查
118
+ coplanarCheckValue: number = 400;
119
+
120
+ // 非圆管对应系数
121
+ nonTubCorrespondenceFactor: number = 1;
122
+
123
+ // 拉力抗力系数
124
+ tensionResistanceFactor: number = 1.05;
125
+
126
+ // 压力抗力系数
127
+ compressionResistanceFactor: number = 1.18;
128
+
129
+ // 弯曲抗力系数
130
+ bendingResistanceFactor: number = 1.05;
131
+
132
+ // 剪切抗力系数
133
+ shearResistanceFactor: number = 1.05;
134
+
135
+ // 环向抗力系数
136
+ hoopResistanceFactor: number = 1.25;
137
+
138
+ // 线性求解器
139
+ linearSolverType: string = "";
140
+
141
+ // 直接法求解器方法
142
+ directSolverMethod: string = "";
143
+
144
+ // 迭代法求解器方法
145
+ IterativeSolverMethod: string = "";
146
+
147
+ // 绝对收敛容差指数
148
+ absoluteToleranceExponent: number = 9;
149
+
150
+ // 相对收敛容差指数
151
+ relativeToleranceExponent: number = 6;
152
+
153
+ // 最大迭代次数指数
154
+ maxIterationsExponent: number = 5;
155
+
156
+ // 移除刚体运动
157
+ removeRigidBodyMotion: string = "";
158
+
159
+ // 零特征值容差指数
160
+ zeroEigenValueToleranceExponent: number = 3;
161
+
162
+ // 刚体模态数量覆盖值
163
+ rigidBodyModesOverride: number = 0;
164
+ constructor(name = '') {
165
+ super();
166
+ this.name = name
167
+ this.instanceTypes.add("main", InstanceRenderObject.prototype);
168
+ }
169
+ serialize(): any {
170
+ let obj = super.serialize();
171
+ if (this.cardObject) {
172
+ obj.cardData = this.cardObject.getLine();
173
+ } else if (this.cardData) {
174
+ obj.cardData = this.cardData;
175
+ }
176
+
177
+ const toValue = (key: string, val: any) => {
178
+ // 处理布尔类型
179
+ if (typeof val === "boolean") {
180
+ if (val === false) return "";
181
+ if (val === true) {
182
+ // 特殊处理:检查板单元定义 → CP
183
+ if (key === "checkPlateElementDefinition") return "CP";
184
+ return "PT"; // 默认布尔 true → PT
185
+ }
186
+ }
187
+
188
+ // 字符串类型处理
189
+ if (typeof val === "string") {
190
+ if (val === "NO") return "";
191
+ if (val === "DC") return "";
192
+ return val;
193
+ }
194
+
195
+ // 数字类型直接返回
196
+ return val;
197
+ };
198
+
199
+ const assign = (key: string) => {
200
+ obj[key] = toValue(key, (this as any)[key]);
201
+ };
202
+
203
+ assign("workingUnits");
204
+ assign("codeCheckOption");
205
+ assign("inputSuperElement");
206
+ assign("ignoreMemberReleases");
207
+ assign("createSuperElement");
208
+ assign("includeMemberShearEffects");
209
+ assign("calculateEndMomentsCB");
210
+
211
+ assign("stressCheckDivisionsNonSeg");
212
+ assign("stressCheckDivisionsSeg");
213
+
214
+ assign("pDeltaEffects");
215
+ assign("platePanelCheck");
216
+ assign("plateOption");
217
+ assign("checkPlateElementDefinition");
218
+ assign("stressOption");
219
+ assign("momentMagnification");
220
+
221
+ assign("echoInput");
222
+ assign("jointElementReport");
223
+ assign("jointReactions");
224
+ assign("partitionedUnityCheck");
225
+ assign("jointDeflections");
226
+ assign("stressAtMaxUnityCheck");
227
+ assign("memberInternalLoads");
228
+ assign("internalLoadsAtMaxUnityCheck");
229
+ assign("unityCheckDetailsAtMaxUnityCheck");
230
+ assign("elementDetails");
231
+ assign("supplementalPostfileOption");
232
+ assign("specialElement");
233
+
234
+ assign("lrfdOrSlender");
235
+ assign("nonTubCodeOption");
236
+ assign("platePanelCheckOption");
237
+ assign("gammaMValue");
238
+ assign("methodSelection");
239
+ assign("allowableUsageFactorForWsb");
240
+ assign("nonRectangularAllowableDeg");
241
+ assign("coplanarCheckValue");
242
+
243
+ assign("nonTubCorrespondenceFactor");
244
+ assign("tensionResistanceFactor");
245
+ assign("compressionResistanceFactor");
246
+ assign("bendingResistanceFactor");
247
+ assign("shearResistanceFactor");
248
+ assign("hoopResistanceFactor");
249
+
250
+ assign("linearSolverType");
251
+ assign("directSolverMethod");
252
+ assign("IterativeSolverMethod");
253
+ assign("absoluteToleranceExponent");
254
+ assign("relativeToleranceExponent");
255
+ assign("maxIterationsExponent");
256
+
257
+ assign("removeRigidBodyMotion");
258
+ assign("zeroEigenValueToleranceExponent");
259
+ assign("rigidBodyModesOverride");
260
+
261
+ return obj;
262
+ }
263
+ deserialize(obj: any, pm: PersistenceManager) {
264
+ super.deserialize(obj, pm);
265
+ const setValue = (key: string, val: any) => {
266
+ const current = (this as any)[key];
267
+
268
+ // === numbers ===
269
+ if (typeof current === "number") {
270
+ if (val === "" || val === undefined || val === null) {
271
+ return; // 保持默认数字
272
+ }
273
+ (this as any)[key] = Number(val);
274
+ return;
275
+ }
276
+
277
+ // === boolean ===
278
+ if (typeof current === "boolean") {
279
+ if (val === "PT") {
280
+ (this as any)[key] = true;
281
+ return;
282
+ }
283
+ if (key === "checkPlateElementDefinition" && val === "CP") {
284
+ (this as any)[key] = true;
285
+ return;
286
+ }
287
+ // 空字符串、NO、其他 → false
288
+ (this as any)[key] = false;
289
+ return;
290
+ }
291
+
292
+ // === string ===
293
+ if (typeof current === "string") {
294
+ if (val === undefined || val === null) {
295
+ (this as any)[key] = "";
296
+ return;
297
+ }
298
+ (this as any)[key] = String(val);
299
+ }
300
+ };
301
+
302
+ const set = (key: string) => {
303
+ setValue(key, obj[key]);
304
+ };
305
+
306
+ set("workingUnits");
307
+ set("codeCheckOption");
308
+ set("inputSuperElement");
309
+ set("ignoreMemberReleases");
310
+ set("createSuperElement");
311
+ set("includeMemberShearEffects");
312
+ set("calculateEndMomentsCB");
313
+
314
+ set("stressCheckDivisionsNonSeg");
315
+ set("stressCheckDivisionsSeg");
316
+
317
+ set("pDeltaEffects");
318
+ set("platePanelCheck");
319
+ set("plateOption");
320
+ set("checkPlateElementDefinition");
321
+ set("stressOption");
322
+ set("momentMagnification");
323
+
324
+ set("echoInput");
325
+ set("jointElementReport");
326
+ set("jointReactions");
327
+ set("partitionedUnityCheck");
328
+ set("jointDeflections");
329
+ set("stressAtMaxUnityCheck");
330
+ set("memberInternalLoads");
331
+ set("internalLoadsAtMaxUnityCheck");
332
+ set("unityCheckDetailsAtMaxUnityCheck");
333
+ set("elementDetails");
334
+ set("supplementalPostfileOption");
335
+ set("specialElement");
336
+
337
+ set("lrfdOrSlender");
338
+ set("nonTubCodeOption");
339
+ set("platePanelCheckOption");
340
+ set("gammaMValue");
341
+ set("methodSelection");
342
+ set("allowableUsageFactorForWsb");
343
+ set("nonRectangularAllowableDeg");
344
+ set("coplanarCheckValue");
345
+
346
+ set("nonTubCorrespondenceFactor");
347
+ set("tensionResistanceFactor");
348
+ set("compressionResistanceFactor");
349
+ set("bendingResistanceFactor");
350
+ set("shearResistanceFactor");
351
+ set("hoopResistanceFactor");
352
+
353
+ set("linearSolverType");
354
+ set("directSolverMethod");
355
+ set("IterativeSolverMethod");
356
+ set("absoluteToleranceExponent");
357
+ set("relativeToleranceExponent");
358
+ set("maxIterationsExponent");
359
+
360
+ set("removeRigidBodyMotion");
361
+ set("zeroEigenValueToleranceExponent");
362
+ set("rigidBodyModesOverride");
363
+ }
364
+ protected clone(cloneObj: any, cloneManager?: Longan.CloneManager) {
365
+ cloneObj = super.clone(cloneObj);
366
+ cloneObj.cardData = this.cardData;
367
+
368
+ return cloneObj;
369
+ }
370
+ // 解析OPTION卡片
371
+ serializeToCardOption() {
372
+ let cardOPTIONS = new CardOPTIONS();
373
+ cardOPTIONS.lineLabel.value = "OPTIONS";
374
+ cardOPTIONS.inputSuperElement.value = this.inputSuperElement ? 'I' : ''
375
+ cardOPTIONS.createSuperElement.value = this.createSuperElement ? 'C' : ''
376
+ cardOPTIONS.workingUnits.value = this.workingUnits
377
+ cardOPTIONS.pDeltaEffects.value = this.pDeltaEffects === 'NO' ? '' : this.pDeltaEffects
378
+ cardOPTIONS.ignoreMemberReleases.value = this.ignoreMemberReleases ? 'FX' : ''
379
+ cardOPTIONS.includeMemberShearEffects.value = this.includeMemberShearEffects ? 'SD' : ''
380
+ cardOPTIONS.codeCheckOption.value = this.codeCheckOption
381
+ cardOPTIONS.stressOption.value = this.stressOption === 'NO' ? '' : this.stressOption
382
+ cardOPTIONS.stressCheckDivisionsNonSeg.value = this.stressCheckDivisionsNonSeg.toString()
383
+ cardOPTIONS.stressCheckDivisionsSeg.value = this.stressCheckDivisionsSeg.toString()
384
+ cardOPTIONS.calculateEndMomentsCB.value = !this.calculateEndMomentsCB ? '' : 'B'
385
+ cardOPTIONS.momentMagnification.value = this.momentMagnification === 'NO' ? '' : this.momentMagnification
386
+ cardOPTIONS.platePanelCheck.value = this.platePanelCheck === 'NO' ? '' : this.platePanelCheck
387
+ cardOPTIONS.plateOption.value = this.plateOption
388
+ cardOPTIONS.checkPlateElementDefinition.value = this.checkPlateElementDefinition ? 'CP' : ''
389
+ cardOPTIONS.lrfdOrSlender.value = this.lrfdOrSlender
390
+
391
+ cardOPTIONS.jointElementReport.value = this.jointElementReport ? 'PT' : ''
392
+ cardOPTIONS.echoInput.value = this.echoInput === 'NO' ? '' : this.echoInput
393
+ cardOPTIONS.jointDeflections.value = this.jointDeflections ? 'PT' : ''
394
+ cardOPTIONS.unityCheckDetailsAtMaxUnityCheck.value = this.unityCheckDetailsAtMaxUnityCheck ? 'PT' : ''
395
+ cardOPTIONS.stressAtMaxUnityCheck.value = this.stressAtMaxUnityCheck ? 'PT' : ''
396
+ cardOPTIONS.internalLoadsAtMaxUnityCheck.value = this.internalLoadsAtMaxUnityCheck ? 'PT' : ''
397
+ cardOPTIONS.partitionedUnityCheck.value = this.partitionedUnityCheck ? 'PT' : ''
398
+ cardOPTIONS.elementDetails.value = this.elementDetails === 'NO' ? '' : this.elementDetails
399
+ cardOPTIONS.memberInternalLoads.value = this.memberInternalLoads ? 'PT' : ''
400
+ cardOPTIONS.jointReactions.value = this.jointReactions ? 'PT' : ''
401
+ cardOPTIONS.supplementalPostfileOption.value = this.supplementalPostfileOption === 'NO' ? '' : this.supplementalPostfileOption
402
+ cardOPTIONS.specialElement.value = this.specialElement === 'NO' ? '' : this.specialElement
403
+ return cardOPTIONS.getLine();
404
+ }
405
+
406
+ // 解析PCODE卡片
407
+ serializeToCardPCODE() {
408
+ let cardPCODE = new CardPCODE();
409
+ cardPCODE.lineLabel.value = "PCODE";
410
+ console.log('解析PCODE卡片', this.allowableUsageFactorForWsb, this.nonRectangularAllowableDeg, this.nonRectangularAllowableDeg);
411
+ cardPCODE.platePanelCheckOption.value = this.platePanelCheckOption
412
+ cardPCODE.gammaMValue.value = this.gammaMValue.toString()
413
+ cardPCODE.methodSelection.value = this.methodSelection.toString()
414
+ cardPCODE.allowableUsageFactorForWsb.value = this.allowableUsageFactorForWsb.toString()
415
+ cardPCODE.nonRectangularAllowableDeg.value = this.nonRectangularAllowableDeg.toString()
416
+ cardPCODE.coplanarCheckValue.value = this.coplanarCheckValue.toString()
417
+ return cardPCODE.getLine();
418
+ }
419
+
420
+ // 解析CardSLVOPTDRCT卡片
421
+ //分析 DRCT是DRCT是直接法线性求解器
422
+ serializeToCardSLVOPTDRCT() {
423
+ let cardSLVOPTDRCT = new CardSLVOPTDRCT();
424
+ cardSLVOPTDRCT.lineLabel.value = 'SLVOPT'
425
+ cardSLVOPTDRCT.linearSolverType.value = this.linearSolverType
426
+ cardSLVOPTDRCT.directSolverMethod.value = this.directSolverMethod
427
+
428
+ cardSLVOPTDRCT.removeRigidBodyMotion.value = this.removeRigidBodyMotion === 'NO' ? '' : this.removeRigidBodyMotion
429
+ cardSLVOPTDRCT.zeroEigenValueToleranceExponent.value = this.zeroEigenValueToleranceExponent.toString()
430
+ cardSLVOPTDRCT.rigidBodyModesOverride.value = this.rigidBodyModesOverride.toString()
431
+ return cardSLVOPTDRCT.getLine();
432
+ }
433
+ // ITER是迭代求解器的类型时候用这个卡片
434
+ serializeToCardSLVOPTITER() {
435
+ let cardSLVOPTITER = new CardSLVOPTITER()
436
+ cardSLVOPTITER.lineLabel.value = 'SLVOPT'
437
+ cardSLVOPTITER.linearSolverType.value = this.linearSolverType
438
+ cardSLVOPTITER.IterativeSolverMethod.value = this.IterativeSolverMethod
439
+ cardSLVOPTITER.removeRigidBodyMotion.value = this.removeRigidBodyMotion === 'NO' ? '' : this.removeRigidBodyMotion
440
+ cardSLVOPTITER.absoluteToleranceExponent.value = this.absoluteToleranceExponent.toString()
441
+ cardSLVOPTITER.relativeToleranceExponent.value = this.relativeToleranceExponent.toString()
442
+ cardSLVOPTITER.zeroEigenValueToleranceExponent.value = this.zeroEigenValueToleranceExponent.toString()
443
+ cardSLVOPTITER.rigidBodyModesOverride.value = this.rigidBodyModesOverride.toString()
444
+ cardSLVOPTITER.maxIterationsExponent.value = this.maxIterationsExponent.toString()
445
+ return cardSLVOPTITER.getLine();
446
+ }
447
+
448
+ serializeToCardCODEIS() {
449
+ let cardCODEIS = new CardCODEIS();
450
+ cardCODEIS.lineLabel.value = 'CODE IS'
451
+ cardCODEIS.nonTubCorrespondenceFactor.value = this.nonTubCorrespondenceFactor.toString()
452
+ cardCODEIS.tensionResistanceFactor.value = this.tensionResistanceFactor.toString()
453
+ cardCODEIS.compressionResistanceFactor.value = this.compressionResistanceFactor.toString()
454
+ cardCODEIS.bendingResistanceFactor.value = this.bendingResistanceFactor.toString()
455
+ cardCODEIS.shearResistanceFactor.value = this.shearResistanceFactor.toString()
456
+ cardCODEIS.hoopResistanceFactor.value = this.hoopResistanceFactor.toString()
457
+ cardCODEIS.nonTubCodeOption.value = this.nonTubCodeOption
458
+ return cardCODEIS.getLine();
459
+ }
460
+ }
@@ -11,15 +11,15 @@ export class CdmRenderObject extends DesignBaseObject {
11
11
 
12
12
  defaultTableSelection: string = "";
13
13
 
14
- diameter: number = 0;
15
- cleanMember_normalDragCoef: number = 0;
16
- cleanMember_tangentialDragCoef: number = 0;
17
- cleanMember_normalInertiaCoeff: number = 0;
18
- cleanMember_tangentialInertiaCoef: number = 0;
19
- fouledMember_normalDragCoef: number = 0;
20
- fouledMember_tangentialDragCoef: number = 0;
21
- fouledMember_normalInertiaCoef: number = 0;
22
- fouledMember_tangentialInertiaCoef: number = 0;
14
+ diameter: number = null;
15
+ cleanMember_normalDragCoef: number = null;
16
+ cleanMember_tangentialDragCoef: number = null;
17
+ cleanMember_normalInertiaCoeff: number = null;
18
+ cleanMember_tangentialInertiaCoef: number = null;
19
+ fouledMember_normalDragCoef: number = null;
20
+ fouledMember_tangentialDragCoef: number = null;
21
+ fouledMember_normalInertiaCoef: number = null;
22
+ fouledMember_tangentialInertiaCoef: number = null;
23
23
 
24
24
  public constructor() {
25
25
  super();
@@ -80,15 +80,15 @@ export class CdmRenderObject extends DesignBaseObject {
80
80
  let cardCDM = new CardCDM();
81
81
 
82
82
  cardCDM.defaultTableSelection.value = this.defaultTableSelection
83
- cardCDM.diameter.value = this.diameter ? this.diameter.toString() : ""
84
- cardCDM.cleanMember_normalDragCoef.value = this.cleanMember_normalDragCoef ? this.cleanMember_normalDragCoef.toString() : ""
85
- cardCDM.cleanMember_tangentialDragCoef.value = this.cleanMember_tangentialDragCoef ? this.cleanMember_tangentialDragCoef.toString() : ""
86
- cardCDM.cleanMember_normalInertiaCoeff.value = this.cleanMember_normalInertiaCoeff ? this.cleanMember_normalInertiaCoeff.toString() : ""
87
- cardCDM.cleanMember_tangentialInertiaCoef.value = this.cleanMember_tangentialInertiaCoef ? this.cleanMember_tangentialInertiaCoef.toString() : ""
88
- cardCDM.fouledMember_normalDragCoef.value = this.fouledMember_normalDragCoef ? this.fouledMember_normalDragCoef.toString() : ""
89
- cardCDM.fouledMember_tangentialDragCoef.value = this.fouledMember_tangentialDragCoef ? this.fouledMember_tangentialDragCoef.toString() : ""
90
- cardCDM.fouledMember_normalInertiaCoef.value = this.fouledMember_normalInertiaCoef ? this.fouledMember_normalInertiaCoef.toString() : ""
91
- cardCDM.fouledMember_tangentialInertiaCoef.value = this.fouledMember_tangentialInertiaCoef ? this.fouledMember_tangentialInertiaCoef.toString() : ""
83
+ cardCDM.diameter.value = this.notNullAndNotUndefined(this.diameter) ? this.diameter.toString() : ""
84
+ cardCDM.cleanMember_normalDragCoef.value = this.notNullAndNotUndefined(this.cleanMember_normalDragCoef) ? this.cleanMember_normalDragCoef.toString() : ""
85
+ cardCDM.cleanMember_tangentialDragCoef.value = this.notNullAndNotUndefined(this.cleanMember_tangentialDragCoef) ? this.cleanMember_tangentialDragCoef.toString() : ""
86
+ cardCDM.cleanMember_normalInertiaCoeff.value = this.notNullAndNotUndefined(this.cleanMember_normalInertiaCoeff) ? this.cleanMember_normalInertiaCoeff.toString() : ""
87
+ cardCDM.cleanMember_tangentialInertiaCoef.value = this.notNullAndNotUndefined(this.cleanMember_tangentialInertiaCoef) ? this.cleanMember_tangentialInertiaCoef.toString() : ""
88
+ cardCDM.fouledMember_normalDragCoef.value = this.notNullAndNotUndefined(this.fouledMember_normalDragCoef) ? this.fouledMember_normalDragCoef.toString() : ""
89
+ cardCDM.fouledMember_tangentialDragCoef.value = this.notNullAndNotUndefined(this.fouledMember_tangentialDragCoef) ? this.fouledMember_tangentialDragCoef.toString() : ""
90
+ cardCDM.fouledMember_normalInertiaCoef.value = this.notNullAndNotUndefined(this.fouledMember_normalInertiaCoef) ? this.fouledMember_normalInertiaCoef.toString() : ""
91
+ cardCDM.fouledMember_tangentialInertiaCoef.value = this.notNullAndNotUndefined(this.fouledMember_tangentialInertiaCoef) ? this.fouledMember_tangentialInertiaCoef.toString() : ""
92
92
 
93
93
  return cardCDM.getLine();
94
94
  }