gs-cae-design 1.1.62 → 1.1.64

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 (82) hide show
  1. package/README.md +22 -1
  2. package/docs/classes/CommandInterfaceManager.md +11 -0
  3. package/lib/.gz +0 -0
  4. package/lib/CAEDesign.common-report.html +2 -2
  5. package/lib/CAEDesign.common.js +79 -46
  6. package/lib/CAEDesign.umd-report.html +2 -2
  7. package/lib/CAEDesign.umd.js +79 -46
  8. package/lib/CAEDesign.umd.min-report.html +2 -2
  9. package/lib/CAEDesign.umd.min.js +79 -46
  10. package/package.json +1 -1
  11. package/src/gsDevFx/managers/caeRenderObjectTreeManager.ts +16 -12
  12. package/src/gsDevFx/managers/datReaderManager.ts +48 -50
  13. package/src/gsDevFx/managers/datWriterManager.ts +17 -7
  14. package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +10 -0
  15. package/src/gsDevFx/managers/interfaceManagers/postInterfaceManager.ts +112 -0
  16. package/src/gsDevFx/managers/interfaceManagers/selectionInterfaceManager.ts +58 -38
  17. package/src/gsDevFx/objects/caeObjects/memberObject.ts +55 -19
  18. package/src/gsDevFx/objects/caeObjects/pretreatment/WindAreaObject.ts +101 -0
  19. package/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.ts +36 -64
  20. package/src/gsDevFx/objects/caeObjects/sections/tubSectionObject.ts +4 -0
  21. package/src/gsDevFx/objects/loadObjects/waveLoadObject.ts +2 -2
  22. package/src/gsDevFx/objects/loadObjects/windLoadObject.ts +14 -14
  23. package/src/gsDevFx/objects/pretreatmentObjects/colorDivGrupThicknessObject.ts +1 -1
  24. package/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.ts +5 -0
  25. package/src/gsDevFx/process.ts +4 -0
  26. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/addCoefficientDragMassConfig.ts +2 -2
  27. package/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/commandAddCoefficientDragMass.ts +2 -6
  28. package/src/viewerWrapper/commands/aftertreatment/addCurrentLoad/commandAddCurrentLoad.ts +2 -2
  29. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/addWaveLoadConfig.ts +1 -1
  30. package/src/viewerWrapper/commands/aftertreatment/addWaveLoad/commandAddWaveLoad.ts +4 -4
  31. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/addWindLoadConfig.ts +2 -2
  32. package/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.ts +3 -3
  33. package/src/viewerWrapper/commands/aftertreatment/editCurrentLoad/commandEditCurrentLoad.ts +2 -2
  34. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.ts +6 -4
  35. package/src/viewerWrapper/commands/aftertreatment/editWaveLoad/editWaveLoadConfig.ts +23 -23
  36. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.ts +3 -3
  37. package/src/viewerWrapper/commands/aftertreatment/editWindLoad/editWindLoadConfig.ts +2 -2
  38. package/src/viewerWrapper/commands/aftertreatment/showJointCanUC/commandShowJointCanUC.ts +37 -35
  39. package/src/viewerWrapper/commands/aftertreatment/showShipImpact/commandShowShipImpact.ts +37 -33
  40. package/src/viewerWrapper/commands/pretreatment/colorDivideByGrupThickness/colorDivideByGrupThicknessConfig.ts +1 -1
  41. package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.ts +0 -1
  42. package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.ts +0 -1
  43. package/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.ts +8 -9
  44. package/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/surfaceWeightEditConfig.ts +0 -1
  45. package/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.ts +187 -0
  46. package/src/viewerWrapper/commands/pretreatment/windArea/windAreaConfig.ts +10 -3
  47. package/types/caeDesign/src/gsDevFx/managers/commandManager.d.ts.map +1 -1
  48. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +0 -1
  49. package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
  50. package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
  51. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +2 -0
  52. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
  53. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commonInterfaceManager.d.ts +1 -1
  54. package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/postInterfaceManager.d.ts.map +1 -1
  55. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/WindAreaObject.d.ts +28 -0
  56. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/WindAreaObject.d.ts.map +1 -0
  57. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.d.ts +8 -8
  58. package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/windShieldObject.d.ts.map +1 -1
  59. package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts.map +1 -1
  60. package/types/caeDesign/src/gsDevFx/process.d.ts.map +1 -1
  61. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addCoefficientDragMass/commandAddCoefficientDragMass.d.ts.map +1 -1
  62. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addWindLoad/commandAddWindLoad.d.ts.map +1 -1
  63. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWaveLoad/commandEditWaveLoad.d.ts.map +1 -1
  64. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editWindLoad/commandEditWindLoad.d.ts.map +1 -1
  65. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/showJointCanUC/commandShowJointCanUC.d.ts.map +1 -1
  66. package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/showShipImpact/commandShowShipImpact.d.ts.map +1 -1
  67. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.d.ts.map +1 -1
  68. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.d.ts.map +1 -1
  69. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/commandSurfaceWeightEdit.d.ts.map +1 -1
  70. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightEdit/surfaceWeightEditConfig.d.ts.map +1 -1
  71. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts +27 -0
  72. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/commandWindArea.d.ts.map +1 -1
  73. package/types/caeDesign/src/viewerWrapper/commands/pretreatment/windArea/windAreaConfig.d.ts.map +1 -1
  74. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByCoordinate/splitMemberByCoordinateConfig.d.ts +0 -5
  75. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByEqualPatrs/commandSplitMemberByEqualPatrs.d.ts +0 -18
  76. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByEqualPatrs/commandSplitMemberByEqualPatrs.d.ts.map +0 -1
  77. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByEqualPatrs/splitMemberByEqualPatrsConfig.d.ts +0 -5
  78. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByEqualPatrs/splitMemberByEqualPatrsConfig.d.ts.map +0 -1
  79. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByExistingJoint/commandSplitMemberByExistingJoint.d.ts +0 -26
  80. package/types/caeDesign/src/viewerWrapper/commands/splitMemberByExistingJoint/commandSplitMemberByExistingJoint.d.ts.map +0 -1
  81. package/types/ceecDesign/src/axiosRequestExport.d.ts +3 -0
  82. package/types/ceecDesign/src/utils/cookie.d.ts.map +1 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gs-cae-design",
3
- "version": "1.1.62",
3
+ "version": "1.1.64",
4
4
  "description": "广州图石科技有限公司发布的基于gs-longan的CAE图形控件",
5
5
  "main": "lib/CAEDesign.umd.min.js",
6
6
  "types": "./types/caeDesign/src/index.d.ts",
@@ -113,9 +113,9 @@ export class CAERenderObjectTreeManager extends Longan.ProcessManagerBase {
113
113
  "临时节点"
114
114
  );
115
115
 
116
- if(!this._tempNode) {
116
+ if (!this._tempNode) {
117
117
  let tempNode = new DesignBaseObject();
118
- tempNode.name = "临时节点"
118
+ tempNode.name = "临时节点";
119
119
  this.process.addRenderObject(jiheRO, tempNode);
120
120
  this._tempNode = tempNode;
121
121
  }
@@ -524,18 +524,22 @@ export class CAERenderObjectTreeManager extends Longan.ProcessManagerBase {
524
524
  // }
525
525
 
526
526
  public checkNodeChildNameRepeat(
527
- map: Map<string, any>,
528
- name: string
529
- ): boolean {
530
- let isRepeat = false;
531
- let obj = map.get(name);
532
- if(obj && obj instanceof DesignBaseObject && obj.checkBusinessStateIsActive()) {
533
- isRepeat = true;
534
- }
535
-
536
- return isRepeat;
527
+ map: Map<string, any>,
528
+ name: string
529
+ ): boolean {
530
+ let isRepeat = false;
531
+ let obj = map.get(name);
532
+ if (
533
+ obj &&
534
+ obj instanceof DesignBaseObject &&
535
+ obj.checkBusinessStateIsActive()
536
+ ) {
537
+ isRepeat = true;
537
538
  }
538
539
 
540
+ return isRepeat;
541
+ }
542
+
539
543
  checkNameRepeat_JointObject(
540
544
  targetName: string,
541
545
  joint?: JointObject
@@ -1215,6 +1215,10 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1215
1215
  process.addRenderObject(currentLoadConditionObj, windGroupObject);
1216
1216
  } else {
1217
1217
  windGroupObject.businessState = BusinessState.Editing;
1218
+ for (let i = 0; i < windGroupObject.childObjects.length; i++) {
1219
+ const item = windGroupObject.childObjects[i] as DesignBaseObject;
1220
+ item.businessState = BusinessState.Deleting;
1221
+ }
1218
1222
  }
1219
1223
 
1220
1224
  let card = new CardWIND(line);
@@ -1250,6 +1254,10 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1250
1254
  process.addRenderObject(currentLoadConditionObj, waveGroupObject);
1251
1255
  } else {
1252
1256
  waveGroupObject.businessState = BusinessState.Editing;
1257
+ for (let i = 0; i < waveGroupObject.childObjects.length; i++) {
1258
+ const item = waveGroupObject.childObjects[i] as DesignBaseObject;
1259
+ item.businessState = BusinessState.Deleting;
1260
+ }
1253
1261
  }
1254
1262
 
1255
1263
  let card = new CardWAVE(line);
@@ -1285,6 +1293,10 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1285
1293
  process.addRenderObject(currentLoadConditionObj, groupObject);
1286
1294
  } else {
1287
1295
  groupObject.businessState = BusinessState.Editing;
1296
+ for (let i = 0; i < groupObject.childObjects.length; i++) {
1297
+ const item = groupObject.childObjects[i] as DesignBaseObject;
1298
+ item.businessState = BusinessState.Deleting;
1299
+ }
1288
1300
  }
1289
1301
 
1290
1302
  let card = new CardCURR(line);
@@ -1438,33 +1450,27 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1438
1450
  pretreatmentRO,
1439
1451
  "回转中心"
1440
1452
  ) as DesignBaseObject;
1441
- let nameStart = 8;
1442
- let nameLen = 4;
1443
- let name = this.getDatData(line, nameStart, nameLen);
1444
-
1453
+ let name = this.getDatData(line, 8, 4).trim();
1445
1454
  let newName = this.checkNameRepeatAndGetNewName(
1446
1455
  process.nameCenterRoll,
1447
1456
  name
1448
1457
  );
1449
-
1450
-
1451
1458
  if (name !== newName) {
1452
- line = this.replaceFixedField(line, nameStart, nameLen, newName);
1453
1459
  name = newName;
1454
1460
  }
1455
- let ro = new CenterRenderObject(name);
1456
-
1457
- let card = new CardCENTER(line)
1458
- ro = card.toRenderObject();
1461
+ // CardCENTER 解析 line
1462
+ let card = new CardCENTER(line);
1463
+ let ro = card.toRenderObject();
1464
+ card.centerID.value = name;
1465
+ ro.centerID = name;
1459
1466
  ro.businessState = BusinessState.Creating;
1460
- ro.cardObject = new CardCENTER(line);
1467
+ ro.cardObject = card;
1461
1468
  ro.name = name;
1462
- if (centerRollParent && centerRollParent?.childObjects?.length > 9) return
1463
- process.addRenderObject(
1464
- centerRollParent,
1465
- ro
1466
- );
1469
+ // 限制数量
1470
+ if (centerRollParent && centerRollParent?.childObjects?.length > 9) return;
1471
+ process.addRenderObject(centerRollParent, ro);
1467
1472
  }
1473
+
1468
1474
  // 风载屏蔽区域
1469
1475
  private readWINSHLData(line: string) {
1470
1476
  if (line.trimEnd() === "WINSHL") {
@@ -1483,24 +1489,22 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1483
1489
  ) as DesignBaseObject;
1484
1490
 
1485
1491
  // 如果有数据 则不导入
1486
- if (windShieldParent) return
1487
- windShieldParent = new DesignBaseObject();
1488
- windShieldParent.businessState = BusinessState.Creating;
1489
- windShieldParent.name = "风载屏蔽区域";
1490
- process.addRenderObject(pretreatmentRO, windShieldParent);
1492
+ if (windShieldParent && windShieldParent?.childObjects?.length) return
1493
+ if(!windShieldParent){
1494
+ windShieldParent = new DesignBaseObject();
1495
+ windShieldParent.businessState = BusinessState.Creating;
1496
+ windShieldParent.name = "风载屏蔽区域";
1497
+ process.addRenderObject(pretreatmentRO, windShieldParent);
1498
+ }
1499
+
1500
+
1491
1501
 
1492
1502
  let ro = process.findRenderObjectByType(
1493
1503
  "WindShieldObject"
1494
1504
  ) as WindShieldObject;
1495
- if (!ro) {
1496
- ro = new WindShieldObject();
1497
- ro.businessState = BusinessState.Creating;
1498
- } else {
1499
- ro.cardData = line;
1500
- ro.businessState = BusinessState.Editing;
1501
- }
1502
1505
  let card = new CardWINSHL(line);
1503
1506
  ro = card.toRenderObject();
1507
+ ro.businessState = BusinessState.Creating;
1504
1508
  ro.cardData = line;
1505
1509
  process.addRenderObject(windShieldParent, ro);
1506
1510
  }
@@ -1518,7 +1522,7 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1518
1522
  ) as DesignBaseObject;
1519
1523
  const start = 7;
1520
1524
  const len = 8; // 占位长度
1521
- let name = this.getDatData(line, start, len);
1525
+ let name = this.getDatData(line, start, len).trim();
1522
1526
  let newName = this.checkNameRepeatAndGetNewName(
1523
1527
  process.nameSurfaceDefinition,
1524
1528
  name
@@ -1526,14 +1530,15 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1526
1530
  console.log('name',name,name.length,newName,newName.length);
1527
1531
 
1528
1532
  if (name !== newName) {
1529
- line = this.replaceFixedField(line, start, len, newName);
1530
1533
  name = newName;
1531
1534
  }
1532
1535
  let card = new CardSURFID(line)
1536
+ card.surfaceID.value = name
1533
1537
  let ro = new SurfaceDefinitionObject(name);
1534
1538
  ro = card.toRenderObject();
1535
1539
  ro.businessState = BusinessState.Creating;
1536
- ro.cardObject = new CardSURFID(line);
1540
+ ro.cardObject = card;
1541
+ ro.surfaceID = name
1537
1542
  ro.name = name;
1538
1543
  process.addRenderObject(
1539
1544
  SurfIDRollParent,
@@ -1563,7 +1568,9 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1563
1568
  this.activeSurfIDName
1564
1569
  ) as SurfaceDefinitionObject;
1565
1570
  // 对应表面定义对象增加边界节点
1566
- surfaceIDRO.boundaryJoints = ro
1571
+ if(surfaceIDRO) {
1572
+ surfaceIDRO.boundaryJoints = ro
1573
+ }
1567
1574
  }
1568
1575
  // 表面质量
1569
1576
  private readSurfWTData(line: string) {
@@ -1577,15 +1584,14 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1577
1584
  const weightIDStart = 17;
1578
1585
  const weightIDLen = 8;
1579
1586
 
1580
- let weightID = this.getDatData(line, weightIDStart, weightIDLen);
1581
- let weightGroupID = this.getDatData(line, 6, 4);
1587
+ let weightID = this.getDatData(line, weightIDStart, weightIDLen).trim();
1588
+ let weightGroupID = this.getDatData(line, 6, 4).trim();
1582
1589
 
1583
1590
  // 检查质量ID是否存在
1584
1591
  let newWeightID = this.checkNameRepeatAndGetNewName(
1585
1592
  process.nameSurfaceWeight, weightID
1586
1593
  );
1587
1594
  if (weightID !== newWeightID) {
1588
- line = this.replaceFixedField(line, weightIDStart, weightIDLen, newWeightID);
1589
1595
  weightID = newWeightID;
1590
1596
  }
1591
1597
 
@@ -1598,12 +1604,14 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1598
1604
  "表面质量"
1599
1605
  ) as DesignBaseObject;
1600
1606
  let ro = new SurfaceWeightObject(weightID);
1607
+
1601
1608
  let card = new CardSURFWT(line)
1609
+ card.weightID.value = weightID
1602
1610
  ro = card.toRenderObject();
1603
-
1604
- ro.businessState = BusinessState.Creating;
1605
- ro.cardObject = new CardSURFWT(line);
1611
+ ro.weightID = weightID
1606
1612
  ro.name = weightID;
1613
+ ro.businessState = BusinessState.Creating;
1614
+ ro.cardObject = card;
1607
1615
  process.addRenderObject(
1608
1616
  surfaceWeightParent,
1609
1617
  ro
@@ -1644,7 +1652,7 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
1644
1652
  line = line.trim();
1645
1653
  if (!line) continue;
1646
1654
  if (line.startsWith("LOADCN")) {
1647
- loadConditionName = this.getDatData(line, 6, 4);
1655
+ loadConditionName = this.getDatData(line, 6, 4).trim();
1648
1656
  continue;
1649
1657
  }
1650
1658
  if (line.startsWith("DEAD") && line.length > 4 && loadConditionName) {
@@ -3047,16 +3055,6 @@ export class DatReaderManager extends Longan.ViewerManagerBase {
3047
3055
 
3048
3056
  this._needAddTreeLoadConditions = new Array<LoadConditionObject>();
3049
3057
  }
3050
- // line 重名替换
3051
- private replaceFixedField(line: string, startOneBased: number, len: number, newValue: string): string {
3052
- const start = Math.max(0, startOneBased - 1); // 把 1-based 转成 0-based
3053
- const padded = (newValue ?? '').padEnd(len, ' ').slice(0, len); // 填充或截断到 len
3054
- // 如果原行不够长,补足空格
3055
- if (line.length < start + len) {
3056
- line = line.padEnd(start + len, ' ');
3057
- }
3058
- return line.slice(0, start) + padded + line.slice(start + len);
3059
- }
3060
3058
  /**
3061
3059
  * import dat也会调用import seainp,所以把解析构件分组的逻辑加载这里.
3062
3060
  * @param content
@@ -270,11 +270,15 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
270
270
  ) as SeastateFile[];
271
271
  datCardData = this.renderobjectsSerializeToCard(files, datCardData);
272
272
 
273
- let cdms = process.findRenderObjectsByType("CdmRenderObject") as CdmRenderObject[];
274
- if (cdms.length > 0) {
273
+ let SeastateCdmNode = process.findCaeObjectByNameInChildObject(
274
+ process.caeRenderObjectTreeManager.postResultNode,
275
+ "拖曳和惯性系数"
276
+ );
277
+ if (SeastateCdmNode) {
278
+ let cdms = SeastateCdmNode.childObjects;
275
279
  datCardData += "CDM" + "\n";
280
+ datCardData = this.renderobjectsSerializeToCard(cdms, datCardData);
276
281
  }
277
- datCardData = this.renderobjectsSerializeToCard(cdms, datCardData);
278
282
 
279
283
  //mgrov
280
284
  let mgrovDivideRO = process.findRenderObjectByName(
@@ -336,6 +340,9 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
336
340
  if (lcombNode) {
337
341
  for (let i = 0; i < lcombNode.childObjects.length; i++) {
338
342
  let loadCombinationGroup = lcombNode.childObjects[i] as LoadCombinationGroupObject;
343
+ if(!loadCombinationGroup.checkBusinessStateIsActive()) {
344
+ continue
345
+ }
339
346
  datCardData += loadCombinationGroup.serializeToCardSeaInp();
340
347
  }
341
348
  }
@@ -446,6 +453,9 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
446
453
  if (lcombNode) {
447
454
  for (let i = 0; i < lcombNode.childObjects.length; i++) {
448
455
  let loadCombinationGroup = lcombNode.childObjects[i] as LoadCombinationGroupObject;
456
+ if(!loadCombinationGroup.checkBusinessStateIsActive()) {
457
+ continue
458
+ }
449
459
  datCardData += loadCombinationGroup.serializeToCardSacInp();
450
460
  }
451
461
  }
@@ -492,7 +502,7 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
492
502
  let windShieldNode = process.findCaeObjectByNameInChildObject(
493
503
  process.caeRenderObjectTreeManager.pretreatmentNode,
494
504
  "风载屏蔽区域"
495
- ) as WindShieldObject;
505
+ );
496
506
  if (windShieldNode) {
497
507
  for (let i = 0; i < windShieldNode.childObjects.length; i++) {
498
508
  let child = windShieldNode.childObjects[i] as WindShieldObject;
@@ -522,7 +532,6 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
522
532
  continue;
523
533
  }
524
534
  let BoundaryJointsGroup = surfaceDefinitionGroup.boundaryJoints as BoundaryJointsObject;
525
- console.log('BoundaryJointsGroup',BoundaryJointsGroup);
526
535
  datCardData += surfaceDefinitionGroup.serializeToCard() + '\n';
527
536
  datCardData += BoundaryJointsGroup.serializeToCard() + '\n';
528
537
  }
@@ -533,8 +542,6 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
533
542
  process.caeRenderObjectTreeManager.pretreatmentNode,
534
543
  "表面质量"
535
544
  );
536
- console.log('保存表面质量',SurfaceWeightNode);
537
-
538
545
  if (SurfaceWeightNode) {
539
546
  for (let i = 0; i < SurfaceWeightNode.childObjects.length; i++) {
540
547
  let surfaceWeightGroup = SurfaceWeightNode.childObjects[i] as SurfaceWeightObject;
@@ -567,6 +574,9 @@ export class DatWriterManager extends Longan.ViewerManagerBase {
567
574
  if (weightNode) {
568
575
  for (let i = 0; i < weightNode.childObjects.length; i++) {
569
576
  let weightGroup = weightNode.childObjects[i] as WeightGroupObject;
577
+ if(!weightGroup.checkBusinessStateIsActive()) {
578
+ continue
579
+ }
570
580
  datCardData += weightGroup.serializeToCardSacInp();
571
581
  }
572
582
  }
@@ -110,6 +110,7 @@ import CommandSurfaceWeightEdit from "../../../viewerWrapper/commands/pretreatme
110
110
  import CommandAddDeadLoad from '../../../viewerWrapper/commands/aftertreatment/addDeadLoad/commandAddDeadLoad'
111
111
  import CommandEditDeadLoad from '../../../viewerWrapper/commands/aftertreatment/editDeadLoad/commandEditDeadLoad'
112
112
  import CommandWindShield from '../../../viewerWrapper/commands/pretreatment/windShield/commandWindShield'
113
+ import CommandWindArea from '../../../viewerWrapper/commands/pretreatment/windArea/commandWindArea'
113
114
  import { SectionViewer } from "../../../gsDevFx/sectionViewer";
114
115
  export class CommandInterfaceManager extends Longan.ViewerManagerBase {
115
116
  constructor(viewer: Viewer) {
@@ -1706,6 +1707,15 @@ export class CommandInterfaceManager extends Longan.ViewerManagerBase {
1706
1707
  .currentCommand as CommandWindShield;
1707
1708
  return command;
1708
1709
  }
1710
+ CommandWindArea(){
1711
+ let command = new CommandWindArea();
1712
+ (this.viewer.process.commandManager as CommandManager).multiplyExecute(
1713
+ command
1714
+ );
1715
+ command = this.viewer.process.commandManager
1716
+ .currentCommand as CommandWindArea;
1717
+ return command;
1718
+ }
1709
1719
  commandAddDeadLoad(){
1710
1720
  let command = new CommandAddDeadLoad();
1711
1721
  (this.viewer.process.commandManager as CommandManager).multiplyExecute(
@@ -136,6 +136,118 @@ export class PostInterfaceManager extends Longan.ViewerManagerBase {
136
136
 
137
137
  let viewer = this.viewer as Viewer;
138
138
  let projectId = viewer.structureTreeManager.rootNode.obj.renderObject.id;
139
+
140
+ // //POSTMEMBER
141
+ // {
142
+ // let table = "R_POSTMEMBERRESULTS";
143
+ // let group = "LoadConditionName";
144
+
145
+ // let columns = [
146
+ // // 内力
147
+ // "MemberName",
148
+ // "MemberID",
149
+ // "Distance",
150
+ // "MomentUnits",
151
+ // "DistanceUnits",
152
+ // "YYBendingMoment",
153
+ // "ZZBendingMoment",
154
+ // "YShear",
155
+ // "ZShear",
156
+ // "AxialLoad",
157
+ // // UC
158
+ // "AxialUC",
159
+ // "YYBendingUC",
160
+ // "ZZBendingUC",
161
+ // "TotalShearUC",
162
+ // "MaxUC",
163
+ // // 杆件结果
164
+ // "ForceUnits",
165
+ // "AXStress",
166
+ // "YYBendingStress",
167
+ // "ZZBendingStress",
168
+ // "YShearStress",
169
+ // "ZShearStress",
170
+ // ];
171
+
172
+ // let promises = [];
173
+ // let promise1 = renderObjectService
174
+ // .postData(projectId, table, columns, group)
175
+ // .then((result: any) => {
176
+ // this.event_bendingMoment.forEach((item: () => void) => {
177
+ // item();
178
+ // });
179
+
180
+ // this.event_ucDiagram.forEach((item: () => void) => {
181
+ // item();
182
+ // });
183
+
184
+ // this.getFinish_bendingMoment = true;
185
+ // this.getFinish_ucDiagram = true;
186
+
187
+ // if (this.tip_bendingMoment) {
188
+ // if (this.message_bendingMoment) {
189
+ // this.message_bendingMoment.close();
190
+ // this.message_bendingMoment = null;
191
+ // }
192
+ // Message.info("内力图后处理数据请求完成.");
193
+ // this.tip_bendingMoment = false;
194
+ // }
195
+ // if (result) {
196
+ // this.bendingMoment = result.groups;
197
+
198
+ // if (this.requested_bendingMoment) {
199
+ // this.requested_bendingMoment();
200
+ // this.requested_bendingMoment = null;
201
+ // }
202
+ // }
203
+
204
+ // if (this.tip_ucDiagram) {
205
+ // if (this.message_ucDiagram) {
206
+ // this.message_ucDiagram.close();
207
+ // this.message_ucDiagram = null;
208
+ // }
209
+ // Message.info("UC图后处理数据请求完成.");
210
+ // this.tip_ucDiagram = false;
211
+ // }
212
+ // if (result) {
213
+ // this.ucDiagram = result.groups;
214
+ // }
215
+
216
+ // if(result) {
217
+ // this.postResult = result.groups;
218
+ // }
219
+ // });
220
+
221
+ // let table1 = "ElementUC";
222
+ // let columns1 = ["MemberName", "LoadCondition"];
223
+
224
+ // let promise2 = renderObjectService
225
+ // .postData(projectId, table1, columns1, "")
226
+ // .then((result: any) => {
227
+ // if (result) {
228
+ // this.post_jointCanSummaryUC = result.rows;
229
+ // }
230
+ // });
231
+ // promises.push(promise1);
232
+ // promises.push(promise2);
233
+
234
+ // Promise.all(promises).then(() => {
235
+ // this.event_postResult.forEach((item: () => void) => {
236
+ // item();
237
+ // });
238
+
239
+ // this.getFinish_postResult = true;
240
+ // if (this.tip_postResult) {
241
+ // if (this.message_postResult) {
242
+ // this.message_postResult.close();
243
+ // this.message_postResult = null;
244
+ // }
245
+ // Message.info("杆件结果后处理数据请求完成.");
246
+ // this.tip_postResult = false;
247
+ // }
248
+ // });
249
+ // }
250
+
139
251
  // 内力图
140
252
  {
141
253
  let table = "R_POSTMEMBERRESULTS";
@@ -1,6 +1,7 @@
1
1
  import { Longan } from "gs-bim-air";
2
2
  import { CAEObjectSelector } from "../../operators/caeObjectSelector";
3
3
  import { Viewer } from "../../viewer";
4
+ import { RenderObject } from "gs-longan";
4
5
 
5
6
  /**
6
7
  * 设置CAE对象的选择过滤
@@ -51,6 +52,14 @@ export class SelectionInterfaceManager extends Longan.ViewerManagerBase {
51
52
  this.jointSelection = true;
52
53
  this.memberSelection = true;
53
54
  this.plateSelection = true;
55
+
56
+ let viewer = this.viewer as Viewer;
57
+ let tempNode = viewer.process.caeRenderObjectTreeManager.tempNode;
58
+ let node = viewer.findInstanceObject(tempNode);
59
+ if (node) {
60
+ let segment = node.segment;
61
+ segment.selectability.unset();
62
+ }
54
63
  } else if (value === SelectorFiliter.Joint) {
55
64
  this.jointSelection = true;
56
65
  this.memberSelection = false;
@@ -72,18 +81,19 @@ export class SelectionInterfaceManager extends Longan.ViewerManagerBase {
72
81
  this._jointSelection = onoff;
73
82
  let viewer = this.viewer as Viewer;
74
83
  let ro = viewer.process.caeRenderObjectTreeManager.jointNode;
75
- let node = viewer.findInstanceObject(ro);
76
- if (node) {
77
- let segment = node.segment;
84
+ this.setROSelectability(ro, onoff);
78
85
 
79
- if (onoff) {
80
- segment.selectability.unset();
81
- } else {
86
+ if(onoff) {
87
+ let tempNode = viewer.process.caeRenderObjectTreeManager.tempNode;
88
+
89
+ let node = viewer.findInstanceObject(tempNode);
90
+ if (node) {
91
+ let segment = node.segment;
82
92
  segment.selectability
83
- .setVertex(Longan.SelectabilityType.Off)
93
+ .setVertex(Longan.SelectabilityType.On)
94
+ .setMarker(Longan.SelectabilityType.On)
84
95
  .setFace(Longan.SelectabilityType.Off)
85
96
  .setLine(Longan.SelectabilityType.Off)
86
- .setMarker(Longan.SelectabilityType.Off);
87
97
  }
88
98
  }
89
99
  }
@@ -97,34 +107,22 @@ export class SelectionInterfaceManager extends Longan.ViewerManagerBase {
97
107
  let viewer = this.viewer as Viewer;
98
108
 
99
109
  let ro = viewer.process.caeRenderObjectTreeManager.memberNode;
100
- let node = viewer.findInstanceObject(ro);
101
- if (node) {
102
- let segment = node.segment;
103
-
104
- if (onoff) {
105
- segment.selectability.unset();
106
- } else {
107
- segment.selectability
108
- .setVertex(Longan.SelectabilityType.Off)
109
- .setFace(Longan.SelectabilityType.Off)
110
- .setLine(Longan.SelectabilityType.Off)
111
- .setMarker(Longan.SelectabilityType.Off);
112
- }
113
- }
110
+ this.setROSelectability(ro, onoff);
114
111
 
115
112
  let pile = viewer.process.caeRenderObjectTreeManager.pileNode;
116
- let pileNode = viewer.findInstanceObject(pile);
117
- if (pileNode) {
118
- let segment = pileNode.segment;
113
+ this.setROSelectability(pile, onoff);
119
114
 
120
- if (onoff) {
121
- segment.selectability.unset();
122
- } else {
115
+ if(onoff) {
116
+ let tempNode = viewer.process.caeRenderObjectTreeManager.tempNode;
117
+
118
+ let node = viewer.findInstanceObject(tempNode);
119
+ if (node) {
120
+ let segment = node.segment;
123
121
  segment.selectability
124
122
  .setVertex(Longan.SelectabilityType.Off)
125
- .setFace(Longan.SelectabilityType.Off)
126
- .setLine(Longan.SelectabilityType.Off)
127
- .setMarker(Longan.SelectabilityType.Off);
123
+ .setMarker(Longan.SelectabilityType.Off)
124
+ .setFace(Longan.SelectabilityType.On)
125
+ .setLine(Longan.SelectabilityType.On)
128
126
  }
129
127
  }
130
128
  }
@@ -137,17 +135,19 @@ export class SelectionInterfaceManager extends Longan.ViewerManagerBase {
137
135
  this._plateSelection = onoff;
138
136
  let viewer = this.viewer as Viewer;
139
137
  let ro = viewer.process.caeRenderObjectTreeManager.plateNode;
140
- let node = viewer.findInstanceObject(ro);
141
- if (node) {
142
- let segment = node.segment;
143
- if (onoff) {
144
- segment.selectability.unset();
145
- } else {
138
+ this.setROSelectability(ro, onoff);
139
+
140
+ if(onoff) {
141
+ let tempNode = viewer.process.caeRenderObjectTreeManager.tempNode;
142
+
143
+ let node = viewer.findInstanceObject(tempNode);
144
+ if (node) {
145
+ let segment = node.segment;
146
146
  segment.selectability
147
147
  .setVertex(Longan.SelectabilityType.Off)
148
+ .setMarker(Longan.SelectabilityType.Off)
148
149
  .setFace(Longan.SelectabilityType.Off)
149
150
  .setLine(Longan.SelectabilityType.Off)
150
- .setMarker(Longan.SelectabilityType.Off);
151
151
  }
152
152
  }
153
153
  }
@@ -156,6 +156,26 @@ export class SelectionInterfaceManager extends Longan.ViewerManagerBase {
156
156
  return this._plateSelection;
157
157
  }
158
158
 
159
+ private setROSelectability(ro: RenderObject, onoff: boolean) {
160
+ let viewer = this.viewer as Viewer;
161
+ if (ro) {
162
+ let node = viewer.findInstanceObject(ro);
163
+ if (node) {
164
+ let segment = node.segment;
165
+
166
+ if (onoff) {
167
+ segment.selectability.unset();
168
+ } else {
169
+ segment.selectability
170
+ .setVertex(Longan.SelectabilityType.Off)
171
+ .setFace(Longan.SelectabilityType.Off)
172
+ .setLine(Longan.SelectabilityType.Off)
173
+ .setMarker(Longan.SelectabilityType.Off);
174
+ }
175
+ }
176
+ }
177
+ }
178
+
159
179
  /**
160
180
  * SelectionInterfaceManager
161
181
  * 清除当前选择与高亮.