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.
- package/README.md +6 -0
- package/docs/classes/CommandInterfaceManager.md +125 -0
- package/docs/classes/Viewer.md +1 -3
- package/lib/.gz +0 -0
- package/lib/CAEDesign.common-report.html +2 -2
- package/lib/CAEDesign.common.js +387 -68
- package/lib/CAEDesign.umd-report.html +2 -2
- package/lib/CAEDesign.umd.js +387 -68
- package/lib/CAEDesign.umd.min-report.html +2 -2
- package/lib/CAEDesign.umd.min.js +387 -68
- package/package.json +1 -1
- package/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.ts +12 -1
- package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.ts +138 -0
- package/src/caeCardEditor/caeCardObjects/sacinp/cardSURFID.ts +1 -1
- package/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.ts +11 -2
- package/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.ts +30 -0
- package/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.ts +22 -0
- package/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.ts +0 -8
- package/src/gsDevFx/managers/datReaderManager.ts +206 -106
- package/src/gsDevFx/managers/datWriterManager.ts +101 -16
- package/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.ts +129 -4
- package/src/gsDevFx/managers/persistenceManager.ts +16 -2
- package/src/gsDevFx/objects/caeObjects/optionObjects/{modelCenter.ts → modelSurfDR.ts} +56 -56
- package/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.ts +206 -0
- package/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.ts +88 -0
- package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.ts +128 -0
- package/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.ts +143 -0
- package/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.ts +100 -0
- package/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.ts +134 -0
- package/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.ts +82 -0
- package/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.ts +147 -0
- package/src/gsDevFx/objects/weightObjects/jointWeightObject.ts +6 -8
- package/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.ts +108 -0
- package/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.ts +138 -0
- package/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.ts +156 -0
- package/src/gsDevFx/objects/weightObjects/weightBaseObject.ts +87 -0
- package/src/gsDevFx/objects/weightObjects/weightGroupObject.ts +14 -2
- package/src/gsDevFx/objects/weightObjects/weightIdObject.ts +3 -4
- package/src/gsDevFx/viewer.ts +27 -14
- package/src/index.ts +1 -1
- package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.ts +77 -0
- package/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.ts +200 -0
- package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.ts +248 -0
- package/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.ts +104 -0
- package/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.ts +201 -0
- package/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.ts +253 -0
- package/src/viewerWrapper/commands/createSection/commandCreateSection.ts +24 -14
- package/src/viewerWrapper/commands/editSection/commandEditSection.ts +8 -0
- package/src/viewerWrapper/commands/pretreatment/addJointWeight/commandAddJointWeight.ts +9 -9
- package/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.ts +111 -0
- package/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.ts +405 -0
- package/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.ts +54 -0
- package/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.ts +110 -0
- package/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.ts +9 -0
- package/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.ts +497 -0
- package/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.ts +107 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.ts +278 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.ts +57 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.ts +280 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.ts +49 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.ts +250 -0
- package/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.ts +53 -0
- package/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.ts +257 -44
- package/src/viewerWrapper/commands/splitMember/commandSplitMember.ts +1 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.d.ts +2 -0
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardCENTER.d.ts.map +1 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts +133 -0
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardSURFDR.d.ts.map +1 -0
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.d.ts +2 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMCONC.d.ts.map +1 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.d.ts +2 -0
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/sacinp/cardWGTMEMUNIF.d.ts.map +1 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.d.ts +2 -0
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLCOMB.d.ts.map +1 -1
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.d.ts +0 -8
- package/types/caeDesign/src/caeCardEditor/caeCardObjects/seainp/cardLDOPT.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts +4 -1
- package/types/caeDesign/src/gsDevFx/managers/datReaderManager.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/managers/datWriterManager.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts +18 -0
- package/types/caeDesign/src/gsDevFx/managers/interfaceManagers/commandInterfaceManager.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/managers/persistenceManager.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/modelSurfDR.d.ts +15 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/optionObjects/modelSurfDR.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.d.ts +30 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/boundaryJointsObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts +20 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/centerRenderObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.d.ts +25 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts +28 -0
- package/types/caeDesign/src/gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.d.ts +13 -0
- package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationGroupObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.d.ts +23 -0
- package/types/caeDesign/src/gsDevFx/objects/loadCombinationObjects/loadCombinationObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.d.ts +10 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightConcentratedObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.d.ts +10 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/instanceMemberWeightDistributedObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts +2 -4
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/jointWeightObject.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.d.ts +20 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightBaseObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts +20 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightConcentratedObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.d.ts +22 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/memberWeightDistributedObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightBaseObject.d.ts +21 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightBaseObject.d.ts.map +1 -0
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightGroupObject.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/objects/weightObjects/weightIdObject.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/operators/cAEObjectPreSelector.d.ts.map +1 -1
- package/types/caeDesign/src/gsDevFx/viewer.d.ts +1 -0
- package/types/caeDesign/src/gsDevFx/viewer.d.ts.map +1 -1
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.d.ts +7 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/addLoadCombinationConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts +19 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/addLoadCombination/commandAddLoadCombination.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts +23 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/commandEditLoadCombination.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.d.ts +9 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/editLoadCombination/editLoadCombinationConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.d.ts +22 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/commandSetAndShowSeastateLoadOptions.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.d.ts +6 -0
- package/types/caeDesign/src/viewerWrapper/commands/aftertreatment/setAndShowSeastateLoadOptions/setAndShowSeastateLoadOptionsConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/createSection/commandCreateSection.d.ts.map +1 -1
- package/types/caeDesign/src/viewerWrapper/commands/editSection/commandEditSection.d.ts.map +1 -1
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.d.ts +6 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/addMemberWeightConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.d.ts +31 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/addMemberWeight/commandAddMemberWeight.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.d.ts +8 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/centerOfRollConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.d.ts +11 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/centerOfRoll/commandCenterOfRoll.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editJointWeight/commandEditJointWeight.d.ts.map +1 -1
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts +37 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/commandEditMemberWeight.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.d.ts +5 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/editMemberWeight/editMemberWeightConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.d.ts +33 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/commandSurfaceDefinition.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.d.ts +5 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinition/surfaceDefinitionConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.d.ts +32 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/commandSurfaceDefinitionEdit.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.d.ts +12 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts +20 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/commandSurfaceWeightAdd.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.d.ts +10 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/surfaceWeightAdd/surfaceWeightAddConfig.d.ts.map +1 -0
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts +4 -1
- package/types/caeDesign/src/viewerWrapper/commands/pretreatment/viewWeightProperty/commandViewWeightProperty.d.ts.map +1 -1
- package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts +15 -0
- package/types/ceecDesign/src/gsDevFx/objects/designBaseObject/instanceDesignBaseObject.d.ts.map +1 -0
- package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts +0 -53
- package/types/ceecDesign/src/gsDevFx/objects/designBaseObject.d.ts.map +0 -1
- package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts +18 -0
- package/types/ceecDesign/src/gsDevFx/objects/designLightObject/designLightObject.d.ts.map +1 -0
- package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts +8 -0
- package/types/ceecDesign/src/gsDevFx/objects/interfaces.d.ts.map +1 -0
- package/types/ceecDesign/src/gsDevFx/viewer.d.ts.map +0 -1
|
@@ -0,0 +1,280 @@
|
|
|
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 SurfaceDefinitionEditConfig from "./surfaceDefinitionEditConfig";
|
|
8
|
+
import { JointObject } from "../../../../gsDevFx/objects/caeObjects/jointObject";
|
|
9
|
+
import { DesignBaseObject } from "gs-ceec-design";
|
|
10
|
+
import { BusinessState } from "gs-ceec-design";
|
|
11
|
+
import { CaeNumber } from "../../../../utility/utility";
|
|
12
|
+
import { SurfaceDefinitionObject } from "../../../../gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject";
|
|
13
|
+
|
|
14
|
+
enum FocusOption {
|
|
15
|
+
originJoint = "originJoint",
|
|
16
|
+
localXJoint = "localXJoint",
|
|
17
|
+
localYJoint = "localYJoint",
|
|
18
|
+
boundary = "boundary",
|
|
19
|
+
}
|
|
20
|
+
export default class CommandSurfaceDefinitionEdit extends CommandComponent {
|
|
21
|
+
typeName: string = "CommandSurfaceDefinitionEdit";
|
|
22
|
+
|
|
23
|
+
config: SurfaceDefinitionEditConfig;
|
|
24
|
+
preSelector: CAEObjectPreSelector = null;
|
|
25
|
+
caeObjectSelector: CAEObjectSelector = null;
|
|
26
|
+
expectFilter = SelectorFiliter.Joint;
|
|
27
|
+
currentFocus = FocusOption.originJoint;
|
|
28
|
+
constructor() {
|
|
29
|
+
super();
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
begin(): void {
|
|
33
|
+
this.changeOperators();
|
|
34
|
+
this.config = new SurfaceDefinitionEditConfig();
|
|
35
|
+
this.config.show();
|
|
36
|
+
}
|
|
37
|
+
restore(): void {
|
|
38
|
+
this.changeOperators();
|
|
39
|
+
this.config.show();
|
|
40
|
+
this.config.refreshCenterIdList();
|
|
41
|
+
}
|
|
42
|
+
end(): void {
|
|
43
|
+
this.config.hide();
|
|
44
|
+
super.end();
|
|
45
|
+
// 清空当前所有选中与高亮,并刷新视图
|
|
46
|
+
this.viewer.selectionManager.clearAllSelectionAndHighlight();
|
|
47
|
+
this.viewer.updateDisplay();
|
|
48
|
+
// 切换回默认选择命令
|
|
49
|
+
let commandSelect = new CommandSelect();
|
|
50
|
+
this.process.commandManager.execute(commandSelect);
|
|
51
|
+
}
|
|
52
|
+
commandOk(): void {
|
|
53
|
+
// 在当前模型整个节点树上创建一个回转中心节点
|
|
54
|
+
let pretreatmentRO = this.viewer.process.findRenderObjectByName(
|
|
55
|
+
"前处理可视化辅助"
|
|
56
|
+
) as DesignBaseObject;
|
|
57
|
+
|
|
58
|
+
let surfaceParent = this.process.findCaeObjectByNameInChildObject(
|
|
59
|
+
pretreatmentRO,
|
|
60
|
+
"表面定义"
|
|
61
|
+
) as DesignBaseObject;
|
|
62
|
+
if (!surfaceParent) {
|
|
63
|
+
surfaceParent = new DesignBaseObject();
|
|
64
|
+
surfaceParent.businessState = BusinessState.Creating;
|
|
65
|
+
surfaceParent.name = "表面定义";
|
|
66
|
+
this.process.addRenderObject(pretreatmentRO, surfaceParent);
|
|
67
|
+
} else {
|
|
68
|
+
// 添加之前先删除
|
|
69
|
+
surfaceParent.businessState = BusinessState.Editing;
|
|
70
|
+
for (let i = 0; i < surfaceParent.childObjects.length; i++) {
|
|
71
|
+
const item = surfaceParent.childObjects[i];
|
|
72
|
+
if (item instanceof SurfaceDefinitionObject) {
|
|
73
|
+
// 后台临时删除
|
|
74
|
+
item.tempDelete(this.viewer);
|
|
75
|
+
item.businessState = BusinessState.Deleting;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
let data = this.config.properties.items[0].data;
|
|
81
|
+
data.tip.value = null;
|
|
82
|
+
const surfaceList = this.config.surfaceList;
|
|
83
|
+
console.log("表面定义编辑", this.config, surfaceList);
|
|
84
|
+
let hasError = false; // 标志位
|
|
85
|
+
if (surfaceList.length === 0) {
|
|
86
|
+
data.tip.value = 8; // 没有表面定义
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
for (const item of surfaceList) {
|
|
90
|
+
// 校验输入的点是否存在
|
|
91
|
+
let originJoint = this.process.findCaeObjectByNameInChildObject(
|
|
92
|
+
this.process.caeRenderObjectTreeManager.jointNode,
|
|
93
|
+
item.originJointName
|
|
94
|
+
);
|
|
95
|
+
let localXJoint = this.process.findCaeObjectByNameInChildObject(
|
|
96
|
+
this.process.caeRenderObjectTreeManager.jointNode,
|
|
97
|
+
item.localXJointName
|
|
98
|
+
);
|
|
99
|
+
let localYJoint = this.process.findCaeObjectByNameInChildObject(
|
|
100
|
+
this.process.caeRenderObjectTreeManager.jointNode,
|
|
101
|
+
item.localYJointName
|
|
102
|
+
);
|
|
103
|
+
if (!originJoint) {
|
|
104
|
+
data.tip.value = `3,${item.originJointName}`;
|
|
105
|
+
hasError = true; // 设置标志位为true
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
if (!localXJoint) {
|
|
109
|
+
data.tip.value = `3,${item.localXJointName}`;
|
|
110
|
+
hasError = true; // 设置标志位为true
|
|
111
|
+
break;
|
|
112
|
+
}
|
|
113
|
+
if (!localYJoint) {
|
|
114
|
+
data.tip.value = `3,${item.localYJointName}`;
|
|
115
|
+
hasError = true; // 设置标志位为true
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// 检验容差是否大于0
|
|
120
|
+
if (item.outOfPlaneTolerance <= 0) {
|
|
121
|
+
data.tip.value = 4;
|
|
122
|
+
}
|
|
123
|
+
let boundaryJointValue = [];
|
|
124
|
+
// 边界节点(非必填),如果选择了,最多选择14个点,最少选择3个
|
|
125
|
+
for (let i = 1; i <= 14; i++) {
|
|
126
|
+
if (item.boundaryJoints[`boundryJoint${i}st`]) {
|
|
127
|
+
boundaryJointValue.push(item.boundaryJoints[`boundryJoint${i}st`]);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
console.log(
|
|
131
|
+
"boundaryJointValue",
|
|
132
|
+
boundaryJointValue,
|
|
133
|
+
boundaryJointValue.length
|
|
134
|
+
);
|
|
135
|
+
|
|
136
|
+
if (boundaryJointValue.length > 0) {
|
|
137
|
+
if (boundaryJointValue.length > 14) {
|
|
138
|
+
data.tip.value = 5;
|
|
139
|
+
hasError = true; // 设置标志位为true
|
|
140
|
+
break;
|
|
141
|
+
}
|
|
142
|
+
if (boundaryJointValue.length < 3) {
|
|
143
|
+
data.tip.value = 6;
|
|
144
|
+
hasError = true; // 设置标志位为true
|
|
145
|
+
break;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
if (hasError) return;
|
|
149
|
+
// 边界节点的合法性校验
|
|
150
|
+
let errorBoundaryJoint = new Array<string>();
|
|
151
|
+
for (let i = 0; i < boundaryJointValue.length; i++) {
|
|
152
|
+
const jointName = boundaryJointValue[i];
|
|
153
|
+
let joint = this.process.findCaeObjectByNameInChildObject(
|
|
154
|
+
this.process.caeRenderObjectTreeManager.jointNode,
|
|
155
|
+
jointName
|
|
156
|
+
);
|
|
157
|
+
if (!joint) {
|
|
158
|
+
errorBoundaryJoint.push(jointName);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
if (errorBoundaryJoint && errorBoundaryJoint?.length) {
|
|
162
|
+
const errorBoundaryJointStr = errorBoundaryJoint.join(",");
|
|
163
|
+
data.tip.value = `3,${errorBoundaryJointStr}`;
|
|
164
|
+
hasError = true; // 设置标志位为true
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// 校验结束
|
|
169
|
+
if (hasError) return;
|
|
170
|
+
// 添加到对应节点数中
|
|
171
|
+
surfaceList.forEach((item) => {
|
|
172
|
+
let surfaceDefinition = new SurfaceDefinitionObject(item.surfaceID);
|
|
173
|
+
surfaceDefinition.businessState = BusinessState.Creating;
|
|
174
|
+
surfaceDefinition.surfaceID = item.surfaceID;
|
|
175
|
+
surfaceDefinition.originJointName = item.originJointName;
|
|
176
|
+
surfaceDefinition.localXJointName = item.localXJointName;
|
|
177
|
+
surfaceDefinition.localYJointName = item.localYJointName;
|
|
178
|
+
surfaceDefinition.outOfPlaneTolerance = CaeNumber(
|
|
179
|
+
item.outOfPlaneTolerance
|
|
180
|
+
);
|
|
181
|
+
surfaceDefinition.loadDistuibutionType = item.loadDistuibutionType;
|
|
182
|
+
surfaceDefinition.boundaryJoints = item.boundaryJoints;
|
|
183
|
+
// 推入到节点树上的表面定义的_childObjects
|
|
184
|
+
this.process.addRenderObject(surfaceParent, surfaceDefinition);
|
|
185
|
+
});
|
|
186
|
+
// 创建回转中心成功
|
|
187
|
+
data.tip.value = 8;
|
|
188
|
+
console.log("表面定义编辑commandOk", data, this.config);
|
|
189
|
+
}
|
|
190
|
+
// 切换当前命令所需操作器(设置鼠标行为)
|
|
191
|
+
changeOperators(): void {
|
|
192
|
+
// 进入命令前清空选中与高亮.
|
|
193
|
+
// 进入命令前清空选中与高亮.
|
|
194
|
+
// this.viewer.selectionManager.clearAllSelectionAndHighlight();
|
|
195
|
+
// this.viewer.updateDisplay();
|
|
196
|
+
|
|
197
|
+
// 清空操作器.
|
|
198
|
+
this.viewer.operatorManager.clear();
|
|
199
|
+
// 添加操作器
|
|
200
|
+
this.viewer.operatorManager.add(new CameraMouse());
|
|
201
|
+
|
|
202
|
+
// 初始化预选操作器
|
|
203
|
+
this.preSelector = new CAEObjectPreSelector();
|
|
204
|
+
// 添加预选操作器
|
|
205
|
+
// this.viewer.operatorManager.add(this.preSelector);
|
|
206
|
+
|
|
207
|
+
// 设置过滤器,仅允许选中 Joint 类型对象
|
|
208
|
+
this.viewer.selectionInterfaceManager.selectorFilter = this.expectFilter;
|
|
209
|
+
|
|
210
|
+
// 初始化点击选择器
|
|
211
|
+
this.caeObjectSelector = new CAEObjectSelector();
|
|
212
|
+
// 添加点击选择器
|
|
213
|
+
this.viewer.operatorManager.add(this.caeObjectSelector);
|
|
214
|
+
|
|
215
|
+
this.caeObjectSelector.lButtonUp.add(() => {
|
|
216
|
+
setTimeout(() => {
|
|
217
|
+
this.updatePanel();
|
|
218
|
+
}, 0);
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
updatePanel() {
|
|
222
|
+
if (
|
|
223
|
+
this.viewer.selectionInterfaceManager.selectorFilter === this.expectFilter
|
|
224
|
+
) {
|
|
225
|
+
// 更新面板的边界节点列表.
|
|
226
|
+
let data = this.config.properties.items[0].data;
|
|
227
|
+
let activeSurfaceID = data.activeSurfaceID.value;
|
|
228
|
+
|
|
229
|
+
this.config.surfaceList.forEach((item) => {
|
|
230
|
+
if (item.surfaceID !== activeSurfaceID) return;
|
|
231
|
+
// 更新面板的选中点列表.
|
|
232
|
+
let objects = this.caeObjectSelector.selectedRenderObjects;
|
|
233
|
+
if (objects.count() > 0) {
|
|
234
|
+
let object = objects.items[0];
|
|
235
|
+
|
|
236
|
+
// 更新选中的边界节点
|
|
237
|
+
if (this.currentFocus === FocusOption.boundary) {
|
|
238
|
+
for (let i = 1; i <= 14; i++) {
|
|
239
|
+
item.boundaryJoints[`boundryJoint${i}st`] = "";
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
// 再写入 JointObject 数据,最多只能设置 14 个
|
|
243
|
+
const count = Math.min(objects.count(), 14); // 限制最大为14
|
|
244
|
+
for (let i = 0; i < count; i++) {
|
|
245
|
+
let info = objects.items[i];
|
|
246
|
+
const boundryname = `boundryJoint${i + 1}st`;
|
|
247
|
+
if (info instanceof JointObject) {
|
|
248
|
+
item.boundaryJoints[boundryname] = info.name;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
} else if (this.currentFocus === FocusOption.originJoint) {
|
|
252
|
+
// 更新选中的原点点
|
|
253
|
+
item.originJointName = object.name;
|
|
254
|
+
} else if (this.currentFocus === FocusOption.localXJoint) {
|
|
255
|
+
// 更新选中的原点点
|
|
256
|
+
item.localXJointName = object.name;
|
|
257
|
+
} else if (this.currentFocus === FocusOption.localYJoint) {
|
|
258
|
+
// 更新选中的原点点
|
|
259
|
+
item.localYJointName = object.name;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
});
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
originJointActive() {
|
|
267
|
+
console.log("originJointActive");
|
|
268
|
+
|
|
269
|
+
this.currentFocus = FocusOption.originJoint;
|
|
270
|
+
}
|
|
271
|
+
localXJointActive() {
|
|
272
|
+
this.currentFocus = FocusOption.localXJoint;
|
|
273
|
+
}
|
|
274
|
+
localYJointActive() {
|
|
275
|
+
this.currentFocus = FocusOption.localYJoint;
|
|
276
|
+
}
|
|
277
|
+
boundaryActive() {
|
|
278
|
+
this.currentFocus = FocusOption.boundary;
|
|
279
|
+
}
|
|
280
|
+
}
|
package/src/viewerWrapper/commands/pretreatment/surfaceDefinitionEdit/surfaceDefinitionEditConfig.ts
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Process } from "../../../../gsDevFx/process";
|
|
2
|
+
import { Config } from "../../../../gsDevFx/propertyComponents/config";
|
|
3
|
+
import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
|
|
4
|
+
import { SurfaceDefinitionObject } from "../../../../gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject";
|
|
5
|
+
import { BusinessState } from "gs-ceec-design";
|
|
6
|
+
export default class SurfaceDefinitionConfig extends Config {
|
|
7
|
+
|
|
8
|
+
surfaceList: SurfaceDefinitionObject[] = null;
|
|
9
|
+
activeSurfaceID: { value: any; name: string } = { value: null, name: "当前选中的表面ID" };
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
let property = new PropertyComponent();
|
|
13
|
+
property.name = "编辑表面定义";
|
|
14
|
+
this.surfaceList = new Array<SurfaceDefinitionObject>();
|
|
15
|
+
property.data = {
|
|
16
|
+
activeSurfaceID: this.activeSurfaceID,
|
|
17
|
+
tip: {
|
|
18
|
+
name: "提示",
|
|
19
|
+
value: null,
|
|
20
|
+
},
|
|
21
|
+
};
|
|
22
|
+
this.properties.add(property);
|
|
23
|
+
this.refreshCenterIdList();
|
|
24
|
+
console.log("进入编辑表面定义");
|
|
25
|
+
}
|
|
26
|
+
refreshCenterIdList() {
|
|
27
|
+
this.surfaceList = [];
|
|
28
|
+
// 获取当前模型的表面定义节点
|
|
29
|
+
let grupGroup = Process.activeProcess.findRenderObjectByName("表面定义");
|
|
30
|
+
console.log("获取当前模型的表面定义节点", grupGroup);
|
|
31
|
+
if (grupGroup && grupGroup?.childObjects?.length) {
|
|
32
|
+
for (let i = 0; i < grupGroup.childObjects.length; i++) {
|
|
33
|
+
let child = grupGroup.childObjects[i];
|
|
34
|
+
if (
|
|
35
|
+
child instanceof SurfaceDefinitionObject &&
|
|
36
|
+
child.checkBusinessStateIsActive() &&
|
|
37
|
+
child.lastBusinessState !== BusinessState.Deleting &&
|
|
38
|
+
child.lastBusinessState !== BusinessState.Dead
|
|
39
|
+
) {
|
|
40
|
+
this.surfaceList.push(child);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
if (!this.activeSurfaceID.value && this.surfaceList.length > 0) {
|
|
45
|
+
this.activeSurfaceID.value = this.surfaceList[0].surfaceID;
|
|
46
|
+
}
|
|
47
|
+
console.log("赋值初始表面定义编辑节点", this.surfaceList, this.activeSurfaceID.value);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import { CommandComponent } from "../../commandComponent";
|
|
2
|
+
import { CAEObjectSelector } from "../../../../gsDevFx/operators/caeObjectSelector";
|
|
3
|
+
import SurfaceAddWeightConfig from "./surfaceWeightAddConfig";
|
|
4
|
+
import { DesignBaseObject } from "gs-ceec-design";
|
|
5
|
+
import { BusinessState } from "gs-ceec-design";
|
|
6
|
+
import { SurfaceWeightObject } from "../../../../gsDevFx/objects/caeObjects/pretreatment/surfaceWeightObject";
|
|
7
|
+
import { WeightGroupObject } from "../../../../gsDevFx/objects/weightObjects/weightGroupObject";
|
|
8
|
+
export default class CommandSurfaceWeightAdd extends CommandComponent {
|
|
9
|
+
typeName: string = "CommandSurfaceWeightAdd";
|
|
10
|
+
|
|
11
|
+
config: SurfaceAddWeightConfig;
|
|
12
|
+
caeObjectSelector: CAEObjectSelector = null;
|
|
13
|
+
weightGroupRO: WeightGroupObject = null;
|
|
14
|
+
constructor() {
|
|
15
|
+
super();
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
begin(): void {
|
|
19
|
+
this.config = new SurfaceAddWeightConfig();
|
|
20
|
+
this.config.show();
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
restore(): void {
|
|
24
|
+
this.config.show();
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
end(): void {
|
|
28
|
+
this.config.hide();
|
|
29
|
+
super.end();
|
|
30
|
+
if (this.weightGroupRO) {
|
|
31
|
+
this.weightGroupRO.inactive(this.viewer);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
commandOk(): void {
|
|
35
|
+
// 在当前模型整个节点树上创建一个回转中心节点
|
|
36
|
+
let pretreatmentRO = this.viewer.process.findRenderObjectByName(
|
|
37
|
+
"前处理可视化辅助"
|
|
38
|
+
) as DesignBaseObject;
|
|
39
|
+
let surfaceWeightParent = this.process.findCaeObjectByNameInChildObject(
|
|
40
|
+
pretreatmentRO,
|
|
41
|
+
"表面质量"
|
|
42
|
+
) as DesignBaseObject;
|
|
43
|
+
if (!surfaceWeightParent) {
|
|
44
|
+
surfaceWeightParent = new DesignBaseObject();
|
|
45
|
+
surfaceWeightParent.businessState = BusinessState.Creating;
|
|
46
|
+
surfaceWeightParent.name = "表面质量";
|
|
47
|
+
this.process.addRenderObject(pretreatmentRO, surfaceWeightParent);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
let data = this.config.properties.items[0].data;
|
|
51
|
+
data.tip.value = null;
|
|
52
|
+
const {
|
|
53
|
+
weightGroupID,
|
|
54
|
+
weightID,
|
|
55
|
+
pressure,
|
|
56
|
+
density,
|
|
57
|
+
xFactor,
|
|
58
|
+
yFactor,
|
|
59
|
+
zFactor,
|
|
60
|
+
surfaceIDfirst,
|
|
61
|
+
surfaceIDSecond,
|
|
62
|
+
surfaceIDThird,
|
|
63
|
+
surfaceID4th,
|
|
64
|
+
surfaceID5th,
|
|
65
|
+
} = data;
|
|
66
|
+
if (!weightGroupID.value || !weightID.value) {
|
|
67
|
+
data.tip.value = 1;
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (!SurfaceWeightObject.checkName(weightGroupID.value)) {
|
|
71
|
+
data.tip.value = `2,${weightGroupID.value}`;
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (!SurfaceWeightObject.checkName(weightID.value)) {
|
|
75
|
+
data.tip.value = `3,${weightID.value}`;
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
// 压力填写的数值需大于0,必填项
|
|
79
|
+
if (
|
|
80
|
+
pressure.value === "" ||
|
|
81
|
+
pressure.value === null ||
|
|
82
|
+
Number(pressure.value) <= 0
|
|
83
|
+
) {
|
|
84
|
+
data.tip.value = 6;
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
// 密度 数值需大于等于0,非必填项
|
|
88
|
+
if (density.value !== "" && Number(density.value) < 0) {
|
|
89
|
+
data.tip.value = 7;
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
// 校验新增的质量id是否已存在
|
|
93
|
+
let existingWeigth = this.process.findCaeObjectByNameInChildObject(
|
|
94
|
+
surfaceWeightParent,
|
|
95
|
+
weightID.value
|
|
96
|
+
);
|
|
97
|
+
if (existingWeigth) {
|
|
98
|
+
data.tip.value = `4,${weightID.value}`;
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
// 校验选择的表面id是否存在
|
|
102
|
+
let surfaceParent = this.process.findCaeObjectByNameInChildObject(
|
|
103
|
+
pretreatmentRO,
|
|
104
|
+
"表面定义"
|
|
105
|
+
) as DesignBaseObject;
|
|
106
|
+
const errSurfaceId = [];
|
|
107
|
+
if (surfaceIDfirst.value) {
|
|
108
|
+
let existingValue = this.process.findCaeObjectByNameInChildObject(
|
|
109
|
+
surfaceParent,
|
|
110
|
+
surfaceIDfirst.value
|
|
111
|
+
);
|
|
112
|
+
if (existingValue) {
|
|
113
|
+
errSurfaceId.push(surfaceIDfirst.value);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
if (surfaceIDSecond.value) {
|
|
117
|
+
let existingValue = this.process.findCaeObjectByNameInChildObject(
|
|
118
|
+
surfaceParent,
|
|
119
|
+
surfaceIDSecond.value
|
|
120
|
+
);
|
|
121
|
+
if (existingValue) {
|
|
122
|
+
errSurfaceId.push(surfaceIDSecond.value);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
if (surfaceIDThird.value) {
|
|
126
|
+
let existingValue = this.process.findCaeObjectByNameInChildObject(
|
|
127
|
+
surfaceParent,
|
|
128
|
+
surfaceIDThird.value
|
|
129
|
+
);
|
|
130
|
+
if (existingValue) {
|
|
131
|
+
errSurfaceId.push(surfaceIDThird.value);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (surfaceID4th.value) {
|
|
135
|
+
let existingValue = this.process.findCaeObjectByNameInChildObject(
|
|
136
|
+
surfaceParent,
|
|
137
|
+
surfaceID4th.value
|
|
138
|
+
);
|
|
139
|
+
if (existingValue) {
|
|
140
|
+
errSurfaceId.push(surfaceID4th.value);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
if (surfaceID5th.value) {
|
|
144
|
+
let existingValue = this.process.findCaeObjectByNameInChildObject(
|
|
145
|
+
surfaceParent,
|
|
146
|
+
surfaceID5th.value
|
|
147
|
+
);
|
|
148
|
+
if (existingValue) {
|
|
149
|
+
errSurfaceId.push(surfaceID5th.value);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (errSurfaceId.length) {
|
|
153
|
+
data.tip.value = `5,${errSurfaceId.join("、")}`;
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
// 校验结束,设置值
|
|
158
|
+
if (!xFactor.value) {
|
|
159
|
+
xFactor.value = 0;
|
|
160
|
+
}
|
|
161
|
+
if (!yFactor.value) {
|
|
162
|
+
yFactor.value = 0;
|
|
163
|
+
}
|
|
164
|
+
if (!zFactor.value) {
|
|
165
|
+
zFactor.value = 0;
|
|
166
|
+
}
|
|
167
|
+
let surfaceWeightItem = new SurfaceWeightObject(weightID.value);
|
|
168
|
+
surfaceWeightItem.businessState = BusinessState.Creating;
|
|
169
|
+
surfaceWeightItem.weightGroupID = weightGroupID.value;
|
|
170
|
+
surfaceWeightItem.weightID = weightID.value;
|
|
171
|
+
surfaceWeightItem.pressure = pressure.value;
|
|
172
|
+
surfaceWeightItem.density = density.value;
|
|
173
|
+
surfaceWeightItem.xFactor = xFactor.value;
|
|
174
|
+
surfaceWeightItem.yFactor = yFactor.value;
|
|
175
|
+
surfaceWeightItem.zFactor = zFactor.value;
|
|
176
|
+
surfaceWeightItem.surfaceIDfirst = surfaceIDfirst.value;
|
|
177
|
+
surfaceWeightItem.surfaceIDSecond = surfaceIDSecond.value;
|
|
178
|
+
surfaceWeightItem.surfaceIDThird = surfaceIDThird.value;
|
|
179
|
+
surfaceWeightItem.surfaceID4th = surfaceID4th.value;
|
|
180
|
+
surfaceWeightItem.surfaceID5th = surfaceID5th.value;
|
|
181
|
+
this.process.addRenderObject(surfaceWeightParent, surfaceWeightItem);
|
|
182
|
+
// 添加表面组信息
|
|
183
|
+
this.weightGroupRO = this.getAndCreateWeightGroupObjectByName(
|
|
184
|
+
weightGroupID.value
|
|
185
|
+
);
|
|
186
|
+
|
|
187
|
+
data.tip.value = 8;
|
|
188
|
+
}
|
|
189
|
+
updateSurfaceId(): void {
|
|
190
|
+
this.config.refreshCenterIdList();
|
|
191
|
+
}
|
|
192
|
+
getWeightGroups() {
|
|
193
|
+
let weightGroups =
|
|
194
|
+
this.viewer.process.findRenderObjectsByType("WeightGroupObject");
|
|
195
|
+
return weightGroups;
|
|
196
|
+
}
|
|
197
|
+
private getAndCreateWeightGroupObjectByName(weightGroupID: string) {
|
|
198
|
+
let weightGroupRO = this.getWeightGroupObjectByName(weightGroupID);
|
|
199
|
+
|
|
200
|
+
if (!weightGroupRO) {
|
|
201
|
+
let pretreatmentRO = this.viewer.process.findRenderObjectByName(
|
|
202
|
+
"前处理可视化辅助"
|
|
203
|
+
) as DesignBaseObject;
|
|
204
|
+
|
|
205
|
+
let weightGroupParent = this.process.findCaeObjectByNameInChildObject(
|
|
206
|
+
pretreatmentRO,
|
|
207
|
+
"附加质量"
|
|
208
|
+
) as DesignBaseObject;
|
|
209
|
+
|
|
210
|
+
if (!weightGroupParent) {
|
|
211
|
+
weightGroupParent = new DesignBaseObject();
|
|
212
|
+
weightGroupParent.businessState = BusinessState.Creating;
|
|
213
|
+
weightGroupParent.name = "附加质量";
|
|
214
|
+
this.process.addRenderObject(pretreatmentRO, weightGroupParent);
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
weightGroupRO = new WeightGroupObject(weightGroupID);
|
|
218
|
+
weightGroupRO.businessState = BusinessState.Creating;
|
|
219
|
+
this.process.addRenderObject(weightGroupParent, weightGroupRO);
|
|
220
|
+
} else {
|
|
221
|
+
weightGroupRO.businessState = BusinessState.Editing;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
return weightGroupRO;
|
|
225
|
+
}
|
|
226
|
+
private getWeightGroupObjectByName(weightGroupID: string) {
|
|
227
|
+
let pretreatmentRO = this.viewer.process.findRenderObjectByName(
|
|
228
|
+
"前处理可视化辅助"
|
|
229
|
+
) as DesignBaseObject;
|
|
230
|
+
let weightGroupParent =
|
|
231
|
+
this.viewer.process.findCaeObjectByNameInChildObject(
|
|
232
|
+
pretreatmentRO,
|
|
233
|
+
"附加质量"
|
|
234
|
+
) as DesignBaseObject;
|
|
235
|
+
|
|
236
|
+
if (!weightGroupParent) {
|
|
237
|
+
weightGroupParent = new DesignBaseObject();
|
|
238
|
+
weightGroupParent.businessState = BusinessState.Creating;
|
|
239
|
+
weightGroupParent.name = "附加质量";
|
|
240
|
+
this.process.addRenderObject(pretreatmentRO, weightGroupParent);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
let weightGroupRO = this.process.findCaeObjectByNameInChildObject(
|
|
244
|
+
weightGroupParent,
|
|
245
|
+
weightGroupID
|
|
246
|
+
) as WeightGroupObject;
|
|
247
|
+
|
|
248
|
+
return weightGroupRO;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Config } from "../../../../gsDevFx/propertyComponents/config";
|
|
2
|
+
import { PropertyComponent } from "../../../../gsDevFx/propertyComponents/propertyComponent";
|
|
3
|
+
import { Process } from "../../../../gsDevFx/process";
|
|
4
|
+
import { SurfaceDefinitionObject } from "../../../../gsDevFx/objects/caeObjects/pretreatment/surfaceDefinitionObject";
|
|
5
|
+
export default class SurfaceAddWeightConfig extends Config {
|
|
6
|
+
surfaceIDList: { value: any; name: string }[] = [];
|
|
7
|
+
constructor() {
|
|
8
|
+
super();
|
|
9
|
+
let property = new PropertyComponent();
|
|
10
|
+
property.name = "新增表面质量";
|
|
11
|
+
property.data = {
|
|
12
|
+
weightGroupID: { value: null, name: "质量组ID" },
|
|
13
|
+
weightID: { value: null, name: "质量ID" },
|
|
14
|
+
surfaceIDfirst: { value: null, name: "表面ID1" },
|
|
15
|
+
surfaceIDSecond: { value: null, name: "表面ID2" },
|
|
16
|
+
surfaceIDThird: { value: null, name: "表面ID3" },
|
|
17
|
+
surfaceID4th: { value: null, name: "表面ID4" },
|
|
18
|
+
surfaceID5th: { value: null, name: "表面ID5" },
|
|
19
|
+
pressure: { value: 0, name: "压力" },
|
|
20
|
+
density: { value: 0, name: "密度" },
|
|
21
|
+
xFactor: { value: 0, name: "质量系数X" },
|
|
22
|
+
yFactor: { value: 0, name: "质量系数Y" },
|
|
23
|
+
zFactor: { value: 0, name: "质量系数Z" },
|
|
24
|
+
tip: {
|
|
25
|
+
name: "提示",
|
|
26
|
+
value: null,
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
this.properties.add(property);
|
|
30
|
+
this.refreshCenterIdList();
|
|
31
|
+
}
|
|
32
|
+
refreshCenterIdList() {
|
|
33
|
+
// 设置表面id的值
|
|
34
|
+
const surfaceIDList = [];
|
|
35
|
+
let grupGroup = Process.activeProcess.findRenderObjectByName("表面定义");
|
|
36
|
+
console.log("获取当前模型的表面定义节点", grupGroup);
|
|
37
|
+
if (grupGroup?._childObjects && grupGroup?._childObjects?.length) {
|
|
38
|
+
for (let i = 0; i < grupGroup._childObjects.length; i++) {
|
|
39
|
+
let child = grupGroup._childObjects[i];
|
|
40
|
+
if (
|
|
41
|
+
child instanceof SurfaceDefinitionObject &&
|
|
42
|
+
child.checkBusinessStateIsActive()
|
|
43
|
+
) {
|
|
44
|
+
// 只添加有效的表面定义对象
|
|
45
|
+
if (child?.surfaceID) {
|
|
46
|
+
surfaceIDList.push(child.surfaceID);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
this.surfaceIDList = surfaceIDList;
|
|
52
|
+
}
|
|
53
|
+
}
|