gs-cae-design 1.1.56 → 1.1.57

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 (165) hide show
  1. package/README.md +6 -0
  2. package/docs/classes/CommandInterfaceManager.md +125 -0
  3. package/docs/classes/Viewer.md +1 -3
  4. package/lib/.gz +0 -0
  5. package/lib/CAEDesign.common-report.html +2 -2
  6. package/lib/CAEDesign.common.js +387 -68
  7. package/lib/CAEDesign.umd-report.html +2 -2
  8. package/lib/CAEDesign.umd.js +387 -68
  9. package/lib/CAEDesign.umd.min-report.html +2 -2
  10. package/lib/CAEDesign.umd.min.js +387 -68
  11. package/package.json +1 -1
  12. package/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.ts +12 -1
  13. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.ts +138 -0
  14. package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.ts +1 -1
  15. package/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.ts +11 -2
  16. package/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.ts +30 -0
  17. package/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.ts +22 -0
  18. package/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.ts +0 -8
  19. package/src/gsDevFx/managers/datReaderManager.ts +206 -106
  20. package/src/gsDevFx/managers/datWriterManager.ts +101 -16
  21. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +129 -4
  22. package/src/gsDevFx/managers/persistenceManager.ts +16 -2
  23. package/src/gsDevFx/objects/caeObjects/optionObjects/{modelCenter.ts → modelSurfDR.ts} +56 -56
  24. package/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.ts +206 -0
  25. package/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.ts +88 -0
  26. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.ts +128 -0
  27. package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.ts +143 -0
  28. package/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.ts +100 -0
  29. package/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.ts +134 -0
  30. package/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.ts +82 -0
  31. package/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.ts +147 -0
  32. package/src/gsDevFx/objects/weightObjects/jointWeightObject.ts +6 -8
  33. package/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.ts +108 -0
  34. package/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.ts +138 -0
  35. package/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.ts +156 -0
  36. package/src/gsDevFx/objects/weightObjects/weightBaseObject.ts +87 -0
  37. package/src/gsDevFx/objects/weightObjects/weightGroupObject.ts +14 -2
  38. package/src/gsDevFx/objects/weightObjects/weightIdObject.ts +3 -4
  39. package/src/gsDevFx/viewer.ts +27 -14
  40. package/src/index.ts +1 -1
  41. package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.ts +77 -0
  42. package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.ts +200 -0
  43. package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.ts +248 -0
  44. package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.ts +104 -0
  45. package/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.ts +201 -0
  46. package/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.ts +253 -0
  47. package/src/viewerWrapper/commands/createSection/commandCreateSection.ts +24 -14
  48. package/src/viewerWrapper/commands/editSection/commandEditSection.ts +8 -0
  49. package/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.ts +9 -9
  50. package/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.ts +111 -0
  51. package/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.ts +405 -0
  52. package/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.ts +54 -0
  53. package/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.ts +110 -0
  54. package/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.ts +9 -0
  55. package/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.ts +497 -0
  56. package/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.ts +107 -0
  57. package/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.ts +278 -0
  58. package/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.ts +57 -0
  59. package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.ts +280 -0
  60. package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.ts +49 -0
  61. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.ts +250 -0
  62. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.ts +53 -0
  63. package/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.ts +257 -44
  64. package/src/viewerWrapper/commands/splitMember/commandSplitMember.ts +1 -1
  65. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.d.ts +2 -0
  66. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.d.ts.map +1 -1
  67. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts +133 -0
  68. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts.map +1 -0
  69. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.d.ts +2 -1
  70. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.d.ts.map +1 -1
  71. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.d.ts +2 -0
  72. package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.d.ts.map +1 -1
  73. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.d.ts +2 -0
  74. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.d.ts.map +1 -1
  75. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.d.ts +0 -8
  76. package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.d.ts.map +1 -1
  77. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +4 -1
  78. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  79. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  80. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +18 -0
  81. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  82. package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
  83. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/modelSurfDR.d.ts +15 -0
  84. package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/modelSurfDR.d.ts.map +1 -0
  85. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.d.ts +30 -0
  86. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.d.ts.map +1 -0
  87. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts +20 -0
  88. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts.map +1 -0
  89. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.d.ts +25 -0
  90. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.d.ts.map +1 -0
  91. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts +28 -0
  92. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts.map +1 -0
  93. package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.d.ts +13 -0
  94. package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.d.ts.map +1 -0
  95. package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.d.ts +23 -0
  96. package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.d.ts.map +1 -0
  97. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.d.ts +10 -0
  98. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.d.ts.map +1 -0
  99. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.d.ts +10 -0
  100. package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.d.ts.map +1 -0
  101. package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts +2 -4
  102. package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts.map +1 -1
  103. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.d.ts +20 -0
  104. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.d.ts.map +1 -0
  105. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts +20 -0
  106. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts.map +1 -0
  107. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.d.ts +22 -0
  108. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.d.ts.map +1 -0
  109. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightBaseObject.d.ts +21 -0
  110. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightBaseObject.d.ts.map +1 -0
  111. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightGroupObject.d.ts.map +1 -1
  112. package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightIdObject.d.ts.map +1 -1
  113. package/types/caeDesign/src/gsDevFx/operators/cAEObjectPreSelector.d.ts.map +1 -1
  114. package/types/caeDesign/src/gsDevFx/viewer.d.ts +1 -0
  115. package/types/caeDesign/src/gsDevFx/viewer.d.ts.map +1 -1
  116. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.d.ts +7 -0
  117. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.d.ts.map +1 -0
  118. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts +19 -0
  119. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts.map +1 -0
  120. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts +23 -0
  121. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts.map +1 -0
  122. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.d.ts +9 -0
  123. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.d.ts.map +1 -0
  124. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.d.ts +22 -0
  125. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.d.ts.map +1 -0
  126. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.d.ts +6 -0
  127. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.d.ts.map +1 -0
  128. package/types/caeDesign/src/viewerWrapper/commands/createSection/commandCreateSection.d.ts.map +1 -1
  129. package/types/caeDesign/src/viewerWrapper/commands/editSection/commandEditSection.d.ts.map +1 -1
  130. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.d.ts +6 -0
  131. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.d.ts.map +1 -0
  132. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.d.ts +31 -0
  133. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.d.ts.map +1 -0
  134. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.d.ts +8 -0
  135. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.d.ts.map +1 -0
  136. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.d.ts +11 -0
  137. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.d.ts.map +1 -0
  138. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts.map +1 -1
  139. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts +37 -0
  140. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts.map +1 -0
  141. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.d.ts +5 -0
  142. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.d.ts.map +1 -0
  143. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.d.ts +33 -0
  144. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.d.ts.map +1 -0
  145. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.d.ts +5 -0
  146. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.d.ts.map +1 -0
  147. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.d.ts +32 -0
  148. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.d.ts.map +1 -0
  149. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.d.ts +12 -0
  150. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.d.ts.map +1 -0
  151. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts +20 -0
  152. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts.map +1 -0
  153. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.d.ts +10 -0
  154. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.d.ts.map +1 -0
  155. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts +4 -1
  156. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts.map +1 -1
  157. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts +15 -0
  158. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts.map +1 -0
  159. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts +0 -53
  160. package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts.map +0 -1
  161. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts +18 -0
  162. package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts.map +1 -0
  163. package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts +8 -0
  164. package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts.map +1 -0
  165. package/types/ceecDesign/src/gsDevFx/viewer.d.ts.map +0 -1
@@ -111,6 +111,15 @@ export default class CommandAddJointWeight extends CommandComponent {
111
111
  return;
112
112
  }
113
113
 
114
+ if (
115
+ isNaN(Number(data.weight.value)) ||
116
+ Number(data.weight.value) <= 0
117
+ ) {
118
+ // 质量不能小于0
119
+ data.tip.value = 11;
120
+ return;
121
+ }
122
+
114
123
  let selectedJoints = data.selectedJoints;
115
124
  let selectedObjects = new Longan.List<JointObject>();
116
125
  if (selectedJoints.listOptions.list.length === 0) {
@@ -122,15 +131,6 @@ export default class CommandAddJointWeight extends CommandComponent {
122
131
  let factorData = this.config.properties.items[1].data;
123
132
  let axisData = this.config.properties.items[2].data;
124
133
 
125
- if(!factorData.xFactor.value && !factorData.yFactor.value && !factorData.zFactor.value && !axisData.xAxis.value && !axisData.yAxis.value && !axisData.zAxis.value) {
126
- data.tip.value = 7;
127
- return;
128
- }
129
-
130
- if(!Number(factorData.xFactor.value) && !Number(factorData.yFactor.value) && !Number(factorData.zFactor.value) && !Number(axisData.xAxis.value) && !Number(axisData.yAxis.value) && !Number(axisData.zAxis.value)) {
131
- data.tip.value = 7;
132
- return;
133
- }
134
134
 
135
135
  let errorNames = "";
136
136
  let jointNames = new Array<string>();
@@ -0,0 +1,111 @@
1
+ import { Config } from "../../../../gsDevFx/propertyComponents/config";
2
+ import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
3
+
4
+ export default class AddMemberWeightConfig extends Config {
5
+ constructor() {
6
+ super();
7
+
8
+ let property = new PropertyComponent();
9
+ property.name = "新增杆件质量";
10
+ property.data = {
11
+ selectedMembers: {
12
+ value: null,
13
+ name: "选中杆件列表",
14
+ type: "list",
15
+ listOptions: {
16
+ list: [],
17
+ },
18
+ },
19
+ weightGroupID: {
20
+ name: '质量组名',
21
+ value: null
22
+ },
23
+ distance: {
24
+ name: '始端距离',
25
+ value: null
26
+ },
27
+ weightValue: {
28
+ name: '质量值',
29
+ value: null
30
+ },
31
+ weightTypes: {
32
+ value: null,
33
+ name: "质量类别",
34
+ type: "select",
35
+ selectOptions: {
36
+ selections: [
37
+ {
38
+ value: "1",
39
+ label: "分布式",
40
+ },
41
+ {
42
+ value: "2",
43
+ label: "集中式",
44
+ }
45
+ ],
46
+ change: () => {
47
+ this.clearConfig();
48
+ }
49
+ }
50
+ },
51
+ weightActiveLength: {
52
+ name: '质量长度',
53
+ value: null
54
+ },
55
+ finalDistanceWeightValue: {
56
+ name: '最终质量值',
57
+ value: null
58
+ },
59
+ xFactor: {
60
+ name: 'xFactor',
61
+ value: null
62
+ },
63
+ yFactor: {
64
+ name: 'yFactor',
65
+ value: null
66
+ },
67
+ zFactor: {
68
+ name: 'zFactor',
69
+ value: null
70
+ },
71
+ cooSystemOption: {
72
+ name: '坐标系',
73
+ value: null,
74
+ type: "select",
75
+ selectOptions: {
76
+ selections: [
77
+ {
78
+ value: "GLOB",
79
+ label: "Global",
80
+ },
81
+ {
82
+ value: "MEMB",
83
+ label: "Local",
84
+ }
85
+ ]
86
+ }
87
+ },
88
+ density: {
89
+ name: '密度',
90
+ value: null
91
+ },
92
+ weightID: {
93
+ name: '质量ID',
94
+ value: null
95
+ },
96
+ isInclude: {
97
+ value: false,
98
+ name: "考虑附加质量在水中的浮力和波浪荷载",
99
+ type: "switch",
100
+ },
101
+ tip: {
102
+ name: "提示",
103
+ value: null,
104
+ },
105
+ };
106
+
107
+ this.properties.add(property);
108
+ }
109
+
110
+ clearConfig(): void {}
111
+ }
@@ -0,0 +1,405 @@
1
+ import { CameraMouse } from "../../../../gsDevFx/operators/cameraMouse";
2
+ import { CommandComponent } from "../../commandComponent";
3
+ import { CAEObjectPreSelector } from "../../../../gsDevFx/operators/cAEObjectPreSelector";
4
+ import { CAEObjectSelector } from "../../../../gsDevFx/operators/caeObjectSelector";
5
+ import { CommandSelect } from "../../../../gsDevFx/commands/commandSelect";
6
+ import { SelectorFiliter } from "../../../../gsDevFx/managers/interfaceManagers/selectionInterfaceManager";
7
+ import AddMemberWeightConfig from "./addMemberWeightConfig";
8
+ import { WeightGroupObject } from "../../../../gsDevFx/objects/weightObjects/weightGroupObject";
9
+ import { WeightIdObject } from "../../../../gsDevFx/objects/weightObjects/weightIdObject";
10
+ import { MemberWeightConcentratedObject } from "../../../../gsDevFx/objects/weightObjects/memberWeightConcentratedObject";
11
+ import { MemberWeightDistributedObject } from "../../../../gsDevFx/objects/weightObjects/memberWeightDistributedObject";
12
+ import { MemberObject } from "../../../../gsDevFx/objects/caeObjects/memberObject";
13
+ import { DesignBaseObject } from "gs-ceec-design";
14
+ import { BusinessState } from "gs-ceec-design";
15
+ import { Longan } from "gs-bim-air";
16
+ import { CaeNumber } from "../../../../utility/utility";
17
+
18
+ export default class CommandAddMemberWeight extends CommandComponent {
19
+ typeName: string = "CommandAddMemberWeight";
20
+
21
+ config: AddMemberWeightConfig;
22
+ preSelector: CAEObjectPreSelector = null;
23
+ caeObjectSelector: CAEObjectSelector = null;
24
+
25
+ weightGroupRO: WeightGroupObject = null;
26
+ weightIdRO: WeightIdObject = null;
27
+ expectFilter = SelectorFiliter.Member;
28
+
29
+ constructor() {
30
+ super();
31
+ }
32
+
33
+ begin(): void {
34
+ this.changeOperators();
35
+
36
+ console.log("CommandAddMemberWeight");
37
+ this.config = new AddMemberWeightConfig();
38
+ this.config.show();
39
+
40
+ let data = this.config.properties.items[0].data;
41
+ data.cooSystemOption.selectOptions.selections = [];
42
+ if (this.viewer.commonInterfaceManager.showEnglishText) {
43
+ data.cooSystemOption.selectOptions.selections.push({
44
+ value: "GLOB",
45
+ label: "Global",
46
+ });
47
+ data.cooSystemOption.selectOptions.selections.push({
48
+ value: "MEMB",
49
+ label: "Local",
50
+ });
51
+ } else {
52
+ data.cooSystemOption.selectOptions.selections.push({
53
+ value: "GLOB",
54
+ label: "全局坐标",
55
+ });
56
+ data.cooSystemOption.selectOptions.selections.push({
57
+ value: "MEMB",
58
+ label: "局部坐标",
59
+ });
60
+ }
61
+
62
+ this.config.clearConfig =()=> {
63
+ let data = this.config.properties.items[0].data;
64
+ data.distance.value = null
65
+ data.weightValue.value = null
66
+ data.weightActiveLength.value = null
67
+ data.finalDistanceWeightValue.value = null
68
+ data.xFactor.value = null
69
+ data.yFactor.value = null
70
+ data.zFactor.value = null
71
+ data.density.value = null
72
+ data.tip.value = null
73
+ }
74
+ }
75
+
76
+ restore(): void {
77
+ this.changeOperators();
78
+ this.config.show();
79
+ }
80
+
81
+ changeOperators(): void {
82
+ // 进入命令前清空选中与高亮.
83
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
84
+ this.viewer.updateDisplay();
85
+
86
+ // 清空操作器.
87
+ this.viewer.operatorManager.clear();
88
+ // 添加操作器
89
+ this.viewer.operatorManager.add(new CameraMouse());
90
+
91
+ this.preSelector = new CAEObjectPreSelector();
92
+ this.viewer.operatorManager.add(this.preSelector);
93
+ this.viewer.selectionInterfaceManager.selectorFilter = this.expectFilter;
94
+
95
+ this.caeObjectSelector = new CAEObjectSelector();
96
+ this.viewer.operatorManager.add(this.caeObjectSelector);
97
+ //this.caeObjectSelector.isMultiSelect = true;
98
+
99
+ this.caeObjectSelector.lButtonUp.add(() => {
100
+ setTimeout(() => {
101
+ this.updatePanel();
102
+ }, 0);
103
+ });
104
+ }
105
+
106
+ end(): void {
107
+ this.config.hide();
108
+ super.end();
109
+
110
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
111
+ this.viewer.updateDisplay();
112
+
113
+ if (this.weightGroupRO) {
114
+ this.weightGroupRO.inactive(this.viewer);
115
+ }
116
+
117
+ let commandSelect = new CommandSelect();
118
+ this.process.commandManager.execute(commandSelect);
119
+ }
120
+
121
+ commandOk(): void {
122
+ let data = this.config.properties.items[0].data;
123
+
124
+ let weightGroupID = data.weightGroupID.value;
125
+ let weightID = data.weightID.value;
126
+ let weightTypeValue = data.weightTypes.value;
127
+
128
+ if (!weightGroupID) {
129
+ // 没有填质量组数组
130
+ data.tip.value = 3;
131
+ return;
132
+ }
133
+
134
+ let isLegal1 = WeightGroupObject.checkNamelegal(weightGroupID);
135
+ if(!isLegal1) {
136
+ data.tip.value = 4;
137
+ return;
138
+ }
139
+
140
+ let isLegal2 = WeightGroupObject.checkWeightIdNamelegal(weightID);
141
+ if(!isLegal2) {
142
+ data.tip.value = 5;
143
+ return;
144
+ }
145
+
146
+ if (!weightID) {
147
+ // 没有填质量ID数据
148
+ data.tip.value = 3;
149
+ return;
150
+ }
151
+
152
+ if (
153
+ isNaN(Number(data.weightValue.value)) ||
154
+ Number(data.weightValue.value) <= 0
155
+ ) {
156
+ // 质量不能小于0
157
+ data.tip.value = 11;
158
+ return;
159
+ }
160
+
161
+ let selectedMembers = data.selectedMembers;
162
+ let selectedObjects = new Longan.List<MemberObject>();
163
+ if (selectedMembers.listOptions.list.length === 0) {
164
+ // 没有选择杆件
165
+ data.tip.value = 2;
166
+ return;
167
+ }
168
+
169
+ if(!data.xFactor.value && !data.yFactor.value && !data.zFactor.value) {
170
+ data.tip.value = 7;
171
+ return;
172
+ }
173
+
174
+ if(!Number(data.xFactor.value) && !Number(data.yFactor.value) && !Number(data.zFactor.value)) {
175
+ data.tip.value = 7;
176
+ return;
177
+ }
178
+
179
+ let errorNames = "";
180
+ let memberNames = new Array<string>();
181
+ for (let i = 0; i < data.selectedMembers.listOptions.list.length; i++) {
182
+ memberNames.push(data.selectedMembers.listOptions.list[i].label);
183
+ }
184
+ for (let i = 0; i < memberNames.length; i++) {
185
+ let member = this.process.findCaeObjectByNameInChildObject(
186
+ this.process.caeRenderObjectTreeManager.memberNode,
187
+ memberNames[i]
188
+ );
189
+ if (member instanceof MemberObject) {
190
+ selectedObjects.add(member);
191
+ } else {
192
+ errorNames += memberNames[i] + ",";
193
+ }
194
+ }
195
+ errorNames = errorNames.substring(0, errorNames.length - 1);
196
+
197
+ if (
198
+ selectedMembers.listOptions.list.length === 1 &&
199
+ selectedObjects.count() === 0
200
+ ) {
201
+ data.tip.value = 6 + "," + errorNames;
202
+ return;
203
+ }
204
+
205
+ if (selectedObjects) {
206
+ this.viewer.selectionManager.clearAllSelectionAndHighlight();
207
+
208
+ // 添加杆件质量.
209
+ this.weightGroupRO =
210
+ this.getAndCreateWeightGroupObjectByName(weightGroupID);
211
+ this.weightIdRO = this.getAndCreateWeightIdObjectByName(
212
+ this.weightGroupRO,
213
+ weightID
214
+ );
215
+
216
+ let errorNames2 = "";
217
+ for (let i = 0; i < selectedObjects.count(); i++) {
218
+ let selectedObj = selectedObjects.items[i];
219
+ let memberWeight = null;
220
+
221
+ if(!memberWeight && selectedObj instanceof MemberObject) {
222
+ if (weightTypeValue === '1') {
223
+ // 杆件质量长度不合理
224
+ if(Number(data.distance.value) + Number(data.weightActiveLength.value) > selectedObj.getMemberLength()) {
225
+ errorNames2 += memberNames[i] + ",";
226
+ continue
227
+ }
228
+
229
+ memberWeight = new MemberWeightDistributedObject(weightGroupID, weightID, selectedObj);
230
+ memberWeight.name = selectedObj.name;
231
+ memberWeight.weightType = 'UNIF'
232
+ memberWeight.businessState = BusinessState.Creating;
233
+ this.process.addRenderObject(this.weightIdRO, memberWeight);
234
+ }else if(weightTypeValue === '2') {
235
+ // 杆件质量长度不合理
236
+ if(Number(data.distance.value) > selectedObj.getMemberLength()) {
237
+ errorNames2 += memberNames[i] + ",";
238
+ continue
239
+ }
240
+
241
+ memberWeight = new MemberWeightConcentratedObject(weightGroupID, weightID, selectedObj);
242
+ memberWeight.name = selectedObj.name;
243
+ memberWeight.weightType = 'CONC'
244
+ memberWeight.businessState = BusinessState.Creating;
245
+ this.process.addRenderObject(this.weightIdRO, memberWeight);
246
+ }
247
+
248
+ memberWeight.memberJointA = selectedObj.name.split('-')[0];
249
+ memberWeight.memberJointB = selectedObj.name.split('-')[1];
250
+ memberWeight.distance = CaeNumber(data.distance.value)
251
+ memberWeight.weightValue = CaeNumber(data.weightValue.value)
252
+ memberWeight.xFactor = CaeNumber(data.xFactor.value)
253
+ memberWeight.yFactor = CaeNumber(data.yFactor.value)
254
+ memberWeight.zFactor = CaeNumber(data.zFactor.value)
255
+ memberWeight.cooSystemOption = data.cooSystemOption.value
256
+ memberWeight.density = CaeNumber(data.density.value)
257
+ memberWeight.isInclude = data.isInclude.value
258
+
259
+ if(memberWeight instanceof MemberWeightDistributedObject) {
260
+ if(data.weightActiveLength.value) {
261
+ memberWeight.weightActiveLength = CaeNumber(data.weightActiveLength.value)
262
+ }else {
263
+ memberWeight.weightActiveLength = CaeNumber(selectedObj.getMemberLength() - data.distance.value)
264
+ }
265
+ memberWeight.finalDistanceWeightValue = CaeNumber(data.finalDistanceWeightValue.value)
266
+ }
267
+ }
268
+ }
269
+ errorNames2 = errorNames2.substring(0, errorNames2.length - 1);
270
+
271
+ this.viewer.updateDisplay();
272
+ if (errorNames) {
273
+ data.tip.value = 1 + "," + errorNames;
274
+ }else if (errorNames2) {
275
+ data.tip.value = 8 + "," + errorNames2;
276
+ } else {
277
+ data.tip.value = 1;
278
+ }
279
+ }
280
+ }
281
+
282
+ updatePanel() {
283
+ if (
284
+ this.viewer.selectionInterfaceManager.selectorFilter === this.expectFilter
285
+ ) {
286
+ // 更新面板的选中杆件列表.
287
+ let data = this.config.properties.items[0].data;
288
+ data.selectedMembers.listOptions.list = [];
289
+ let objects = this.caeObjectSelector.selectedRenderObjects;
290
+ for (let i = 0; i < objects.count(); i++) {
291
+ let object = objects.items[i];
292
+ if (object instanceof MemberObject) {
293
+ data.selectedMembers.listOptions.list.push({
294
+ value: object.id,
295
+ label: object.name,
296
+ });
297
+ }
298
+ }
299
+ }
300
+ }
301
+
302
+ private getAndCreateWeightGroupObjectByName(weightGroupID: string) {
303
+ let weightGroupRO = this.getWeightGroupObjectByName(weightGroupID);
304
+
305
+ if (!weightGroupRO) {
306
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
307
+ "前处理可视化辅助"
308
+ ) as DesignBaseObject;
309
+
310
+ let weightGroupParent = this.process.findCaeObjectByNameInChildObject(
311
+ pretreatmentRO,
312
+ "附加质量"
313
+ ) as DesignBaseObject;
314
+
315
+ if (!weightGroupParent) {
316
+ weightGroupParent = new DesignBaseObject();
317
+ weightGroupParent.businessState = BusinessState.Creating;
318
+ weightGroupParent.name = "附加质量";
319
+ this.process.addRenderObject(pretreatmentRO, weightGroupParent);
320
+ }
321
+
322
+ weightGroupRO = new WeightGroupObject(weightGroupID);
323
+ weightGroupRO.businessState = BusinessState.Creating;
324
+ this.process.addRenderObject(weightGroupParent, weightGroupRO);
325
+ } else {
326
+ weightGroupRO.businessState = BusinessState.Editing;
327
+ }
328
+
329
+ return weightGroupRO;
330
+ }
331
+
332
+ private getWeightGroupObjectByName(weightGroupID: string) {
333
+ let pretreatmentRO = this.viewer.process.findRenderObjectByName(
334
+ "前处理可视化辅助"
335
+ ) as DesignBaseObject;
336
+ let weightGroupParent =
337
+ this.viewer.process.findCaeObjectByNameInChildObject(
338
+ pretreatmentRO,
339
+ "附加质量"
340
+ ) as DesignBaseObject;
341
+
342
+ if (!weightGroupParent) {
343
+ weightGroupParent = new DesignBaseObject();
344
+ weightGroupParent.businessState = BusinessState.Creating;
345
+ weightGroupParent.name = "附加质量";
346
+ this.process.addRenderObject(pretreatmentRO, weightGroupParent);
347
+ }
348
+
349
+ let weightGroupRO = this.process.findCaeObjectByNameInChildObject(
350
+ weightGroupParent,
351
+ weightGroupID
352
+ ) as WeightGroupObject;
353
+
354
+ return weightGroupRO;
355
+ }
356
+
357
+ private getWeightIdObjectByName(
358
+ weightGroup: WeightGroupObject,
359
+ weightID: string
360
+ ) {
361
+ let weightIdRO = this.process.findCaeObjectByNameInChildObject(
362
+ weightGroup,
363
+ weightID
364
+ ) as WeightIdObject;
365
+
366
+ return weightIdRO;
367
+ }
368
+
369
+ private getAndCreateWeightIdObjectByName(
370
+ weightGroup: WeightGroupObject,
371
+ weightID: string
372
+ ) {
373
+ let weightIdRO = this.getWeightIdObjectByName(weightGroup, weightID);
374
+ if (!weightIdRO) {
375
+ weightIdRO = new WeightIdObject(weightID);
376
+ weightIdRO.businessState = BusinessState.Creating;
377
+ this.process.addRenderObject(weightGroup, weightIdRO);
378
+ } else {
379
+ weightIdRO.businessState = BusinessState.Editing;
380
+ }
381
+
382
+ return weightIdRO;
383
+ }
384
+
385
+ getWeightGroups() {
386
+ let weightGroups =
387
+ this.viewer.process.findRenderObjectsByType("WeightGroupObject");
388
+ return weightGroups;
389
+ }
390
+
391
+ getWeightIds(weightGroupID: string) {
392
+ let weightGroups = this.getWeightGroups();
393
+ let weightIds = new Array<WeightIdObject>();
394
+ for (let i = 0; i < weightGroups.length; i++) {
395
+ if (weightGroups[i].name === weightGroupID) {
396
+ for (let j = 0; j < weightGroups[i].childObjects.length; j++) {
397
+ let weightId = weightGroups[i].childObjects[j] as WeightIdObject;
398
+ weightIds.push(weightId);
399
+ }
400
+ }
401
+ }
402
+
403
+ return weightIds;
404
+ }
405
+ }
@@ -0,0 +1,54 @@
1
+ import { Process } from "../../../../gsDevFx/process";
2
+ import { Config } from "../../../../gsDevFx/propertyComponents/config";
3
+ import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
4
+ import { CenterRenderObject } from "../../../../gsDevFx/objects/caeObjects/pretreatment/centerRenderObject";
5
+
6
+ import {
7
+ BusinessState,
8
+
9
+ } from "gs-ceec-design";
10
+ export default class CenterOfRollConfig extends Config {
11
+ centerRollList: CenterRenderObject[] = null
12
+ constructor() {
13
+ super();
14
+ let property = new PropertyComponent();
15
+ property.name = "回转中心列表";
16
+
17
+ this.centerRollList = new Array<CenterRenderObject>();
18
+ property.data = {
19
+
20
+ tip: {
21
+ name: "提示",
22
+ value: null,
23
+ },
24
+ }
25
+
26
+ this.properties.add(property);
27
+ this.refreshCenterIdList()
28
+ }
29
+
30
+ refreshCenterIdList() {
31
+ this.centerRollList = []
32
+ // 获取当前模型的回转中心节点
33
+ let grupGroup = Process.activeProcess.findRenderObjectByName('回转中心');
34
+ console.log('获取当前模型的回转中心节点',grupGroup);
35
+
36
+ if (grupGroup) {
37
+ for (let i = 0; i < grupGroup.childObjects.length; i++) {
38
+ let child = grupGroup.childObjects[i];
39
+ if (
40
+ child instanceof CenterRenderObject &&
41
+ child.checkBusinessStateIsActive() &&
42
+ child.lastBusinessState !== BusinessState.Deleting &&
43
+ child.lastBusinessState !== BusinessState.Dead
44
+ ) {
45
+ this.centerRollList.push(
46
+ child
47
+ );
48
+ }
49
+ }
50
+ }
51
+ console.log('赋值初始centerRollList',this.centerRollList);
52
+
53
+ }
54
+ }