qtmodel 0.9.4__tar.gz → 0.9.6__tar.gz

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.

Potentially problematic release.


This version of qtmodel might be problematic. Click here for more details.

@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qtmodel
3
- Version: 0.9.4
4
- Summary: python modeling for qt 2025-07-01
3
+ Version: 0.9.6
4
+ Summary: python modeling for qt 2025-07-11
5
5
  Home-page: https://github.com/Inface0443/pyqt
6
6
  Author: dqy-zhj
7
7
  Author-email: 1105417715@qq.com
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- > 最新版本 V0.9.4 - 2025-07-01
15
+ > 最新版本 V0.9.6 - 2025-07-11
16
16
  > pip install --upgrade qtmodel -i https://pypi.org/simple
17
17
  - 新增更新结构组接口
18
18
  # 建模操作
@@ -3229,6 +3229,16 @@ mdb.remove_load_combine(name="荷载组合1")
3229
3229
  ```
3230
3230
  Returns: 无
3231
3231
  # 视图与结果提取
3232
+ ### display_info
3233
+ 显示字典并打印
3234
+ > 参数:
3235
+ > dict_info:需要传输的数据
3236
+ ```Python
3237
+ # 示例代码
3238
+ from qtmodel import *
3239
+ odb.display_info(Node(1,1,2,3).__str__())
3240
+ ```
3241
+ Returns: 无
3232
3242
  ## 视图控制
3233
3243
  ### display_node_id
3234
3244
  设置节点号显示
@@ -3538,7 +3548,7 @@ Returns:list[dict]包含该模态下屈曲模态向量列表
3538
3548
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3539
3549
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3540
3550
  > show_increment: 是否显示增量结果
3541
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3551
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3542
3552
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Fxyz 5-Mx 6-My 7-Mz 8-Mxyz
3543
3553
  > show_number: 数值选项卡开启
3544
3554
  > show_legend: 图例选项卡开启
@@ -3563,7 +3573,7 @@ Returns: 无
3563
3573
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3564
3574
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3565
3575
  > show_increment: 是否显示增量结果
3566
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3576
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3567
3577
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3568
3578
  > show_deformed: 变形选项卡开启
3569
3579
  > deformed_scale:变形比例
@@ -3592,7 +3602,7 @@ Returns: 无
3592
3602
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3593
3603
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3594
3604
  > show_increment: 是否显示增量结果
3595
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3605
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3596
3606
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3597
3607
  > show_line_chart: 折线图选项卡开启
3598
3608
  > line_scale:折线图比例
@@ -3624,7 +3634,7 @@ Returns: 无
3624
3634
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3625
3635
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3626
3636
  > show_increment: 是否显示增量结果
3627
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3637
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3628
3638
  > component: 分量编号 0-N 1-Fx 2-Fy 3-Fz
3629
3639
  > show_line_chart: 折线图选项卡开启
3630
3640
  > line_scale:折线图比例
@@ -3657,7 +3667,7 @@ Returns: 无
3657
3667
  > force_kind: 内力选项 1-单元 2-节点平均
3658
3668
  > case_name: 详细荷载工况名
3659
3669
  > stage_id: 阶段编号
3660
- > envelope_type: 包络类型
3670
+ > envelop_type: 包络类型
3661
3671
  > show_number: 是否显示数值
3662
3672
  > show_deformed: 是否显示变形形状
3663
3673
  > show_undeformed: 是否显示未变形形状
@@ -3685,7 +3695,7 @@ Returns: 无
3685
3695
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3686
3696
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3687
3697
  > show_increment: 是否显示增量结果
3688
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3698
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3689
3699
  > mat_type: 材料类型 1-主材 2-辅材 3-主材+辅材
3690
3700
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Mx 5-My 6-Mz
3691
3701
  > show_line_chart: 折线图选项卡开启
@@ -3715,7 +3725,7 @@ Returns: 无
3715
3725
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3716
3726
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3717
3727
  > show_increment: 是否显示增量结果
3718
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3728
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3719
3729
  > component: 分量编号 1-轴力 2-Mzx 3-My 4-组合包络 5-左上 6-右上 7-右下 8-左下
3720
3730
  > show_line_chart: 折线图选项卡开启
3721
3731
  > line_scale:折线图比例
@@ -3744,7 +3754,7 @@ Returns: 无
3744
3754
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3745
3755
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3746
3756
  > show_increment: 是否显示增量结果
3747
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3757
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3748
3758
  > show_line_chart: 折线图选项卡开启
3749
3759
  > line_scale:折线图比例
3750
3760
  > flip_plot:反向绘制
@@ -3772,7 +3782,7 @@ Returns: 无
3772
3782
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3773
3783
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3774
3784
  > show_increment: 是否显示增量结果
3775
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3785
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3776
3786
  > mat_type: 材料类型 1-主材 2-辅材
3777
3787
  > component: 分量编号 1-轴力分量 2-Mz分量 3-My分量 4-包络 5-左上 6-右上 7-左下 8-右下
3778
3788
  > show_line_chart: 折线图选项卡开启
@@ -3803,7 +3813,7 @@ Returns: 无
3803
3813
  > stress_kind: 力类型 1-单元 2-节点平均
3804
3814
  > case_name: 详细荷载工况名
3805
3815
  > stage_id: 阶段编号
3806
- > envelope_type: 包络类型
3816
+ > envelop_type: 包络类型
3807
3817
  > show_number: 是否显示数值
3808
3818
  > show_deformed: 是否显示变形形状
3809
3819
  > show_undeformed: 是否显示未变形形状
@@ -1,4 +1,4 @@
1
- > 最新版本 V0.9.4 - 2025-07-01
1
+ > 最新版本 V0.9.6 - 2025-07-11
2
2
  > pip install --upgrade qtmodel -i https://pypi.org/simple
3
3
  - 新增更新结构组接口
4
4
  # 建模操作
@@ -3215,6 +3215,16 @@ mdb.remove_load_combine(name="荷载组合1")
3215
3215
  ```
3216
3216
  Returns: 无
3217
3217
  # 视图与结果提取
3218
+ ### display_info
3219
+ 显示字典并打印
3220
+ > 参数:
3221
+ > dict_info:需要传输的数据
3222
+ ```Python
3223
+ # 示例代码
3224
+ from qtmodel import *
3225
+ odb.display_info(Node(1,1,2,3).__str__())
3226
+ ```
3227
+ Returns: 无
3218
3228
  ## 视图控制
3219
3229
  ### display_node_id
3220
3230
  设置节点号显示
@@ -3524,7 +3534,7 @@ Returns:list[dict]包含该模态下屈曲模态向量列表
3524
3534
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3525
3535
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3526
3536
  > show_increment: 是否显示增量结果
3527
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3537
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3528
3538
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Fxyz 5-Mx 6-My 7-Mz 8-Mxyz
3529
3539
  > show_number: 数值选项卡开启
3530
3540
  > show_legend: 图例选项卡开启
@@ -3549,7 +3559,7 @@ Returns: 无
3549
3559
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3550
3560
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3551
3561
  > show_increment: 是否显示增量结果
3552
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3562
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3553
3563
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3554
3564
  > show_deformed: 变形选项卡开启
3555
3565
  > deformed_scale:变形比例
@@ -3578,7 +3588,7 @@ Returns: 无
3578
3588
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3579
3589
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3580
3590
  > show_increment: 是否显示增量结果
3581
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3591
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3582
3592
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3583
3593
  > show_line_chart: 折线图选项卡开启
3584
3594
  > line_scale:折线图比例
@@ -3610,7 +3620,7 @@ Returns: 无
3610
3620
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3611
3621
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3612
3622
  > show_increment: 是否显示增量结果
3613
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3623
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3614
3624
  > component: 分量编号 0-N 1-Fx 2-Fy 3-Fz
3615
3625
  > show_line_chart: 折线图选项卡开启
3616
3626
  > line_scale:折线图比例
@@ -3643,7 +3653,7 @@ Returns: 无
3643
3653
  > force_kind: 内力选项 1-单元 2-节点平均
3644
3654
  > case_name: 详细荷载工况名
3645
3655
  > stage_id: 阶段编号
3646
- > envelope_type: 包络类型
3656
+ > envelop_type: 包络类型
3647
3657
  > show_number: 是否显示数值
3648
3658
  > show_deformed: 是否显示变形形状
3649
3659
  > show_undeformed: 是否显示未变形形状
@@ -3671,7 +3681,7 @@ Returns: 无
3671
3681
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3672
3682
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3673
3683
  > show_increment: 是否显示增量结果
3674
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3684
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3675
3685
  > mat_type: 材料类型 1-主材 2-辅材 3-主材+辅材
3676
3686
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Mx 5-My 6-Mz
3677
3687
  > show_line_chart: 折线图选项卡开启
@@ -3701,7 +3711,7 @@ Returns: 无
3701
3711
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3702
3712
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3703
3713
  > show_increment: 是否显示增量结果
3704
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3714
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3705
3715
  > component: 分量编号 1-轴力 2-Mzx 3-My 4-组合包络 5-左上 6-右上 7-右下 8-左下
3706
3716
  > show_line_chart: 折线图选项卡开启
3707
3717
  > line_scale:折线图比例
@@ -3730,7 +3740,7 @@ Returns: 无
3730
3740
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3731
3741
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3732
3742
  > show_increment: 是否显示增量结果
3733
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3743
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3734
3744
  > show_line_chart: 折线图选项卡开启
3735
3745
  > line_scale:折线图比例
3736
3746
  > flip_plot:反向绘制
@@ -3758,7 +3768,7 @@ Returns: 无
3758
3768
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3759
3769
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3760
3770
  > show_increment: 是否显示增量结果
3761
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3771
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3762
3772
  > mat_type: 材料类型 1-主材 2-辅材
3763
3773
  > component: 分量编号 1-轴力分量 2-Mz分量 3-My分量 4-包络 5-左上 6-右上 7-左下 8-右下
3764
3774
  > show_line_chart: 折线图选项卡开启
@@ -3789,7 +3799,7 @@ Returns: 无
3789
3799
  > stress_kind: 力类型 1-单元 2-节点平均
3790
3800
  > case_name: 详细荷载工况名
3791
3801
  > stage_id: 阶段编号
3792
- > envelope_type: 包络类型
3802
+ > envelop_type: 包络类型
3793
3803
  > show_number: 是否显示数值
3794
3804
  > show_deformed: 是否显示变形形状
3795
3805
  > show_undeformed: 是否显示未变形形状
@@ -222,6 +222,7 @@ class ElasticSupport:
222
222
  support_type:支承类型 1-线性 2-受拉 3-受压
223
223
  boundary_info:边界信息 受拉和受压时列表长度为1 线性时列表长度为6
224
224
  group_name:边界组
225
+ node_system:0-整体坐标 1-节点坐标
225
226
  """
226
227
  self.support_id = support_id
227
228
  self.node_id = node_id
@@ -1,5 +1,6 @@
1
- import json
2
1
  from __main__ import qt_model
2
+ import json
3
+ from typing import Union
3
4
  from .qt_db import *
4
5
 
5
6
 
@@ -8,6 +9,17 @@ class Odb:
8
9
  获取模型计算结果和模型信息,目前结果仅支持字典类型输出
9
10
  注意:使用外部调用post运行时可以通过print(json.dumps(result))来传递数据,post得到数据后可通过json.loads(result)解析
10
11
  """
12
+ @staticmethod
13
+ def display_info(dict_info:Union[dict, list]):
14
+ """
15
+ 显示字典并打印
16
+ Args:
17
+ dict_info:需要传输的数据
18
+ Example:
19
+ odb.display_info(Node(1,1,2,3).__str__())
20
+ Returns: 无
21
+ """
22
+ print(json.dumps(dict_info))
11
23
 
12
24
  # region 视图控制
13
25
  @staticmethod
@@ -201,7 +213,7 @@ class Odb:
201
213
  list_res = []
202
214
  for item in bs_list:
203
215
  force = [item.Force.Fx, item.Force.Fy, item.Force.Fz, item.Force.Mx, item.Force.My, item.Force.Mz]
204
- list_res.append(str(SupportReaction(item.NodeId, force, item.Time)))
216
+ list_res.append(SupportReaction(item.NodeId, force, item.Time).__str__())
205
217
  return list_res if len(list_res) > 1 else list_res[0]
206
218
  except Exception as ex:
207
219
  raise Exception(ex)
@@ -234,7 +246,7 @@ class Odb:
234
246
  for item in bf_list:
235
247
  displacements = [item.Displacement.Dx, item.Displacement.Dy, item.Displacement.Dz,
236
248
  item.Displacement.Rx, item.Displacement.Ry, item.Displacement.Rz]
237
- list_res.append(str(NodeDisplacement(item.NodeId, displacements, item.Time)))
249
+ list_res.append(NodeDisplacement(item.NodeId, displacements, item.Time).__str__())
238
250
  return list_res if len(list_res) > 1 else list_res[0]
239
251
  except Exception as ex:
240
252
  raise Exception(ex)
@@ -267,7 +279,7 @@ class Odb:
267
279
  item.StressI[6], item.StressI[7], item.StressI[8]]
268
280
  stress_j = [item.StressJ[0], item.StressJ[1], item.StressJ[2], item.StressJ[3], item.StressJ[4], item.StressJ[5],
269
281
  item.StressJ[6], item.StressJ[7], item.StressJ[8]]
270
- list_res.append(str(BeamElementStress(item.ElementId, stress_i, stress_j)))
282
+ list_res.append(BeamElementStress(item.ElementId, stress_i, stress_j).__str__())
271
283
  elif item.ElementType == "SHELL" or item.ElementType == "PLATE":
272
284
  stress_i = [item.StressI[0], item.StressI[1], item.StressI[2], item.StressI[3], item.StressI[4]]
273
285
  stress_j = [item.StressJ[0], item.StressJ[1], item.StressJ[2], item.StressJ[3], item.StressJ[4]]
@@ -277,10 +289,10 @@ class Odb:
277
289
  stress_j2 = [item.StressJ2[0], item.StressJ2[1], item.StressJ2[2], item.StressJ2[3], item.StressJ2[4]]
278
290
  stress_k2 = [item.StressK2[0], item.StressK2[1], item.StressK2[2], item.StressK2[3], item.StressK2[4]]
279
291
  stress_l2 = [item.StressL2[0], item.StressL2[1], item.StressL2[2], item.StressL2[3], item.StressL2[4]]
280
- list_res.append(str(ShellElementStress(item.ElementId, stress_i, stress_j, stress_k, stress_l,
281
- stress_i2, stress_j2, stress_k2, stress_l2)))
292
+ list_res.append(ShellElementStress(item.ElementId, stress_i, stress_j, stress_k, stress_l,
293
+ stress_i2, stress_j2, stress_k2, stress_l2).__str__())
282
294
  elif item.ElementType == "CABLE" or item.ElementType == "LINK" or item.ElementType == "TRUSS":
283
- list_res.append(str(TrussElementStress(item.ElementId, item.StressI[0], item.StressJ[0])))
295
+ list_res.append(TrussElementStress(item.ElementId, item.StressI[0], item.StressJ[0]).__str__())
284
296
  elif item.ElementType == "COM-BEAM":
285
297
  stress_i = [item.StressI[0], item.StressI[1], item.StressI[2], item.StressI[3], item.StressI[4], item.StressI[5],
286
298
  item.StressI[6], item.StressI[7], item.StressI[8]]
@@ -290,7 +302,7 @@ class Odb:
290
302
  item.StressI2[6], item.StressI2[7], item.StressI2[8]]
291
303
  stress_j2 = [item.StressJ2[0], item.StressJ2[1], item.StressJ2[2], item.StressJ2[3], item.StressJ2[4], item.StressJ2[5],
292
304
  item.StressJ2[6], item.StressJ2[7], item.StressJ2[8]]
293
- list_res.append(str(CompositeBeamStress(item.ElementId, stress_i, stress_j, stress_i2, stress_j2)))
305
+ list_res.append(CompositeBeamStress(item.ElementId, stress_i, stress_j, stress_i2, stress_j2).__str__())
294
306
  else:
295
307
  raise TypeError(f"操作错误,不存在{item.ElementType}类型")
296
308
  return list_res if len(list_res) > 1 else list_res[0]
@@ -319,7 +331,7 @@ class Odb:
319
331
  Returns: 包含信息为list[dict] or dict
320
332
  """
321
333
  try:
322
- bf_list = qt_model.GetElementForce(ids=ids, stageId=stage_id, envelopeType=envelop_type,
334
+ bf_list = qt_model.GetElementForce(ids=ids, stageId=stage_id, envelopType=envelop_type,
323
335
  resultKind=result_kind, increamentType=increment_type, caseName=case_name,
324
336
  isTimeHistory=is_time_history, isBoundaryElement=is_boundary_element)
325
337
  list_res = []
@@ -327,17 +339,17 @@ class Odb:
327
339
  if item.ElementType == "BEAM":
328
340
  force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
329
341
  force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
330
- list_res.append(str(BeamElementForce(item.ElementId, force_i, force_j, item.Time)))
342
+ list_res.append(BeamElementForce(item.ElementId, force_i, force_j, item.Time).__str__())
331
343
  elif item.ElementType == "SHELL" or item.ElementType == "PLATE":
332
344
  force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
333
345
  force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
334
346
  force_k = [item.ForceK.Fx, item.ForceK.Fy, item.ForceK.Fz, item.ForceK.Mx, item.ForceK.My, item.ForceK.Mz]
335
347
  force_l = [item.ForceL.Fx, item.ForceL.Fy, item.ForceL.Fz, item.ForceL.Mx, item.ForceL.My, item.ForceL.Mz]
336
- list_res.append(str(ShellElementForce(item.ElementId, force_i, force_j, force_k, force_l, item.Time)))
348
+ list_res.append(ShellElementForce(item.ElementId, force_i, force_j, force_k, force_l, item.Time).__str__())
337
349
  elif item.ElementType == "CABLE" or item.ElementType == "LINK" or item.ElementType == "TRUSS":
338
350
  force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
339
351
  force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
340
- list_res.append(str(TrussElementForce(item.ElementId, force_i, force_j, item.Time)))
352
+ list_res.append(TrussElementForce(item.ElementId, force_i, force_j, item.Time).__str__())
341
353
  elif item.ElementType == "COM-BEAM":
342
354
  all_force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
343
355
  all_force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
@@ -349,8 +361,8 @@ class Odb:
349
361
  sub_force_j = [item.SubForceJ.Fx, item.SubForceJ.Fy, item.SubForceJ.Fz, item.SubForceJ.Mx, item.SubForceJ.My, item.SubForceJ.Mz]
350
362
  is_composite = item.IsComposite
351
363
  shear_force = item.ShearForce
352
- list_res.append(str(CompositeElementForce(item.ElementId, all_force_i, all_force_j, shear_force,
353
- main_force_i, main_force_j, sub_force_i, sub_force_j, is_composite)))
364
+ list_res.append(CompositeElementForce(item.ElementId, all_force_i, all_force_j, shear_force,
365
+ main_force_i, main_force_j, sub_force_i, sub_force_j, is_composite).__str__())
354
366
 
355
367
  else:
356
368
  raise TypeError(f"操作错误,不存在{item.ElementType}类型")
@@ -372,7 +384,7 @@ class Odb:
372
384
  try:
373
385
  item = qt_model.GetSelfConcurrentReaction(nodeId=node_id, caseName=case_name)
374
386
  force = [item.Force.Fx, item.Force.Fy, item.Force.Fz, item.Force.Mx, item.Force.My, item.Force.Mz]
375
- return str(SupportReaction(item.NodeId, force))
387
+ return SupportReaction(item.NodeId, force).__str__()
376
388
  except Exception as ex:
377
389
  raise Exception(ex)
378
390
 
@@ -392,7 +404,7 @@ class Odb:
392
404
  list_res = []
393
405
  for item in res_dict:
394
406
  force = [item.Force.Fx, item.Force.Fy, item.Force.Fz, item.Force.Mx, item.Force.My, item.Force.Mz]
395
- list_res.append(str(SupportReaction(item.NodeId, force)))
407
+ list_res.append(SupportReaction(item.NodeId, force).__str__())
396
408
  return list_res
397
409
  except Exception as ex:
398
410
  raise Exception(ex)
@@ -416,13 +428,13 @@ class Odb:
416
428
  if item.ElementType == "BEAM":
417
429
  force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
418
430
  force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
419
- list_res.append(str(BeamElementForce(item.ElementId, force_i, force_j, item.Time)))
431
+ list_res.append(BeamElementForce(item.ElementId, force_i, force_j, item.Time).__str__())
420
432
  elif item.ElementType == "SHELL" or item.ElementType == "PLATE":
421
433
  force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
422
434
  force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
423
435
  force_k = [item.ForceK.Fx, item.ForceK.Fy, item.ForceK.Fz, item.ForceK.Mx, item.ForceK.My, item.ForceK.Mz]
424
436
  force_l = [item.ForceL.Fx, item.ForceL.Fy, item.ForceL.Fz, item.ForceL.Mx, item.ForceL.My, item.ForceL.Mz]
425
- list_res.append(str(ShellElementForce(item.ElementId, force_i, force_j, force_k, force_l, item.Time)))
437
+ list_res.append(ShellElementForce(item.ElementId, force_i, force_j, force_k, force_l, item.Time).__str__())
426
438
  elif item.ElementType == "COM-BEAM":
427
439
  all_force_i = [item.ForceI.Fx, item.ForceI.Fy, item.ForceI.Fz, item.ForceI.Mx, item.ForceI.My, item.ForceI.Mz]
428
440
  all_force_j = [item.ForceJ.Fx, item.ForceJ.Fy, item.ForceJ.Fz, item.ForceJ.Mx, item.ForceJ.My, item.ForceJ.Mz]
@@ -434,8 +446,8 @@ class Odb:
434
446
  sub_force_j = [item.SubForceJ.Fx, item.SubForceJ.Fy, item.SubForceJ.Fz, item.SubForceJ.Mx, item.SubForceJ.My, item.SubForceJ.Mz]
435
447
  is_composite = item.IsComposite
436
448
  shear_force = item.ShearForce
437
- list_res.append(str(CompositeElementForce(item.ElementId, all_force_i, all_force_j, shear_force,
438
- main_force_i, main_force_j, sub_force_i, sub_force_j, is_composite)))
449
+ list_res.append(CompositeElementForce(item.ElementId, all_force_i, all_force_j, shear_force,
450
+ main_force_i, main_force_j, sub_force_i, sub_force_j, is_composite).__str__())
439
451
  return list_res
440
452
  except Exception as ex:
441
453
  raise Exception(ex)
@@ -461,7 +473,7 @@ class Odb:
461
473
  list_res = []
462
474
  for item in bf_list:
463
475
  force = [item.Force.Dx, item.Force.Dy, item.Force.Dz, item.Force.Rx, item.Force.Ry, item.Force.Rz]
464
- list_res.append(str(ElasticLinkForce(item.NodeId, force)))
476
+ list_res.append(ElasticLinkForce(item.NodeId, force).__str__())
465
477
  return list_res if len(list_res) > 1 else list_res[0]
466
478
  except Exception as ex:
467
479
  raise Exception(ex)
@@ -487,7 +499,7 @@ class Odb:
487
499
  list_res = []
488
500
  for item in bf_list:
489
501
  force = [item.Force.Dx, item.Force.Dy, item.Force.Dz, item.Force.Rx, item.Force.Ry, item.Force.Rz]
490
- list_res.append(str(ConstrainEquationForce(item.NodeId, force)))
502
+ list_res.append(ConstrainEquationForce(item.NodeId, force).__str__())
491
503
  return list_res if len(list_res) > 1 else list_res[0]
492
504
  except Exception as ex:
493
505
  raise Exception(ex)
@@ -508,8 +520,8 @@ class Odb:
508
520
  bf_list = qt_model.GetCableElementLength(ids=ids, stageId=stage_id, incrementType=increment_type)
509
521
  list_res = []
510
522
  for item in bf_list:
511
- list_res.append(str(CableLengthResult(item.ElementId, item.UnstressedLength, item.CosAXi, item.CosAYi, item.CosAZi,
512
- item.CosAXj, item.CosAYj, item.CosAZj, item.Dx, item.Dy, item.Dz)))
523
+ list_res.append(CableLengthResult(item.ElementId, item.UnstressedLength, item.CosAXi, item.CosAYi, item.CosAZi,
524
+ item.CosAXj, item.CosAYj, item.CosAZj, item.Dx, item.Dy, item.Dz).__str__())
513
525
  return list_res if len(list_res) > 1 else list_res[0]
514
526
  except Exception as ex:
515
527
  raise Exception(ex)
@@ -536,7 +548,7 @@ class Odb:
536
548
  item.ModeParticipationMass.Rx, item.ModeParticipationMass.Ry, item.ModeParticipationMass.Rz]
537
549
  sum_mode_mass = [item.SumOfModeParticipationMass.Dx, item.SumOfModeParticipationMass.Dy, item.SumOfModeParticipationMass.Dz,
538
550
  item.SumOfModeParticipationMass.Rx, item.SumOfModeParticipationMass.Ry, item.SumOfModeParticipationMass.Rz]
539
- list_res.append(str(FreeVibrationResult(item.OrderId, item.AngularFrequency, mode_mass, sum_mode_mass, mode_factor)))
551
+ list_res.append(FreeVibrationResult(item.OrderId, item.AngularFrequency, mode_mass, sum_mode_mass, mode_factor).__str__())
540
552
  return list_res
541
553
  except Exception as ex:
542
554
  raise Exception(ex)
@@ -557,7 +569,7 @@ class Odb:
557
569
  for item in bf_list:
558
570
  displacements = [item.Displacement.Dx, item.Displacement.Dy, item.Displacement.Dz,
559
571
  item.Displacement.Rx, item.Displacement.Ry, item.Displacement.Rz]
560
- list_res.append(str(NodeDisplacement(item.NodeId, displacements, item.Time)))
572
+ list_res.append(NodeDisplacement(item.NodeId, displacements, item.Time).__str__())
561
573
  except Exception as ex:
562
574
  raise Exception(ex)
563
575
 
@@ -574,7 +586,7 @@ class Odb:
574
586
  bf_list = qt_model.GetBucklingEigenvalue()
575
587
  list_res = []
576
588
  for item in bf_list:
577
- list_res.append(str(ElasticBucklingResult(item.OrderId, item.EigenValue)))
589
+ list_res.append(ElasticBucklingResult(item.OrderId, item.EigenValue).__str__())
578
590
  return list_res
579
591
  except Exception as ex:
580
592
  raise Exception(ex)
@@ -595,7 +607,7 @@ class Odb:
595
607
  for item in bf_list:
596
608
  displacements = [item.Displacement.Dx, item.Displacement.Dy, item.Displacement.Dz,
597
609
  item.Displacement.Rx, item.Displacement.Ry, item.Displacement.Rz]
598
- list_res.append(str(NodeDisplacement(item.NodeId, displacements, item.Time)))
610
+ list_res.append(NodeDisplacement(item.NodeId, displacements, item.Time).__str__())
599
611
  except Exception as ex:
600
612
  raise Exception(ex)
601
613
 
@@ -604,7 +616,7 @@ class Odb:
604
616
  # region 绘制模型结果
605
617
  @staticmethod
606
618
  def plot_reaction_result(file_path: str, stage_id: int = 1, case_name: str = "", show_increment: bool = False,
607
- envelope_type: int = 1, component: int = 1,
619
+ envelop_type: int = 1, component: int = 1,
608
620
  show_number: bool = True, text_rotation=0, max_min_kind: int = -1,
609
621
  show_legend: bool = True, digital_count=3, text_exponential: bool = True, arrow_scale: float = 1,
610
622
  is_time_history: bool = True, time_kind: int = 1, time_tick: float = 1.0):
@@ -615,7 +627,7 @@ class Odb:
615
627
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
616
628
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
617
629
  show_increment: 是否显示增量结果
618
- envelope_type: 施工阶段包络类型 1-最大 2-最小
630
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
619
631
  component: 分量编号 1-Fx 2-Fy 3-Fz 4-Fxyz 5-Mx 6-My 7-Mz 8-Mxyz
620
632
  show_number: 数值选项卡开启
621
633
  show_legend: 图例选项卡开启
@@ -633,7 +645,7 @@ class Odb:
633
645
  """
634
646
  try:
635
647
  qt_model.PlotReactionResult(filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
636
- envelopeType=envelope_type, component=component,
648
+ envelopType=envelop_type, component=component,
637
649
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
638
650
  showLegend=show_legend, digitalCount=digital_count,
639
651
  textExponential=text_exponential, arrowScale=arrow_scale,
@@ -643,7 +655,7 @@ class Odb:
643
655
 
644
656
  @staticmethod
645
657
  def plot_displacement_result(file_path: str, stage_id: int = 1, case_name: str = "", show_increment: bool = False,
646
- envelope_type: int = 1, component: int = 1,
658
+ envelop_type: int = 1, component: int = 1,
647
659
  show_deformed: bool = True, deformed_scale: float = 1.0, deformed_actual: bool = False,
648
660
  show_number: bool = True, text_rotation=0, max_min_kind: int = 1,
649
661
  show_legend: bool = True, digital_count=3, text_exponential: bool = True, show_undeformed: bool = True,
@@ -655,7 +667,7 @@ class Odb:
655
667
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
656
668
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
657
669
  show_increment: 是否显示增量结果
658
- envelope_type: 施工阶段包络类型 1-最大 2-最小
670
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
659
671
  component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
660
672
  show_deformed: 变形选项卡开启
661
673
  deformed_scale:变形比例
@@ -677,7 +689,7 @@ class Odb:
677
689
  """
678
690
  try:
679
691
  qt_model.PlotDisplacementResult(filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
680
- envelopeType=envelope_type, component=component,
692
+ envelopType=envelop_type, component=component,
681
693
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
682
694
  showNumber=show_number, textRotate=text_rotation, digitalCount=digital_count,
683
695
  textExponential=text_exponential, maxMinKind=max_min_kind,
@@ -688,7 +700,7 @@ class Odb:
688
700
 
689
701
  @staticmethod
690
702
  def plot_beam_element_force(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
691
- envelope_type: int = 1, component: int = 1,
703
+ envelop_type: int = 1, component: int = 1,
692
704
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
693
705
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
694
706
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -702,7 +714,7 @@ class Odb:
702
714
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
703
715
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
704
716
  show_increment: 是否显示增量结果
705
- envelope_type: 施工阶段包络类型 1-最大 2-最小
717
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
706
718
  component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
707
719
  show_line_chart: 折线图选项卡开启
708
720
  line_scale:折线图比例
@@ -728,7 +740,7 @@ class Odb:
728
740
  try:
729
741
  qt_model.PlotBeamElementForce(
730
742
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
731
- envelopeType=envelope_type, component=component,
743
+ envelopType=envelop_type, component=component,
732
744
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
733
745
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
734
746
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -740,7 +752,7 @@ class Odb:
740
752
 
741
753
  @staticmethod
742
754
  def plot_truss_element_force(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
743
- envelope_type: int = 1, component: int = 1,
755
+ envelop_type: int = 1, component: int = 1,
744
756
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
745
757
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
746
758
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -754,7 +766,7 @@ class Odb:
754
766
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
755
767
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
756
768
  show_increment: 是否显示增量结果
757
- envelope_type: 施工阶段包络类型 1-最大 2-最小
769
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
758
770
  component: 分量编号 0-N 1-Fx 2-Fy 3-Fz
759
771
  show_line_chart: 折线图选项卡开启
760
772
  line_scale:折线图比例
@@ -780,7 +792,7 @@ class Odb:
780
792
  try:
781
793
  qt_model.PlotTrussElementForce(
782
794
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
783
- envelopeType=envelope_type, component=component,
795
+ envelopType=envelop_type, component=component,
784
796
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
785
797
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
786
798
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -792,7 +804,7 @@ class Odb:
792
804
 
793
805
  @staticmethod
794
806
  def plot_plate_element_force(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
795
- envelope_type: int = 1, force_kind: int = 1, component: int = 1,
807
+ envelop_type: int = 1, force_kind: int = 1, component: int = 1,
796
808
  show_number: bool = False, text_rotate: int = 0, max_min_kind: int = 1,
797
809
  show_deformed: bool = True, deformed_scale: float = 1.0, deformed_actual: bool = False,
798
810
  show_legend: bool = True, digital_count: int = 3, text_exponential: bool = True,
@@ -805,7 +817,7 @@ class Odb:
805
817
  force_kind: 内力选项 1-单元 2-节点平均
806
818
  case_name: 详细荷载工况名
807
819
  stage_id: 阶段编号
808
- envelope_type: 包络类型
820
+ envelop_type: 包络类型
809
821
  show_number: 是否显示数值
810
822
  show_deformed: 是否显示变形形状
811
823
  show_undeformed: 是否显示未变形形状
@@ -827,7 +839,7 @@ class Odb:
827
839
  try:
828
840
  qt_model.PlotPlateElementForce(
829
841
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
830
- envelopeType=envelope_type, forceKind=force_kind, component=component,
842
+ envelopType=envelop_type, forceKind=force_kind, component=component,
831
843
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
832
844
  showNumber=show_number, textRotate=text_rotate, maxMinKind=max_min_kind,
833
845
  showLegend=show_legend, digitalCount=digital_count, textExponential=text_exponential,
@@ -837,7 +849,7 @@ class Odb:
837
849
 
838
850
  @staticmethod
839
851
  def plot_composite_beam_force(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
840
- envelope_type: int = 1, mat_type: int = 1, component: int = 1,
852
+ envelop_type: int = 1, mat_type: int = 1, component: int = 1,
841
853
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
842
854
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
843
855
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -850,7 +862,7 @@ class Odb:
850
862
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
851
863
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
852
864
  show_increment: 是否显示增量结果
853
- envelope_type: 施工阶段包络类型 1-最大 2-最小
865
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
854
866
  mat_type: 材料类型 1-主材 2-辅材 3-主材+辅材
855
867
  component: 分量编号 1-Fx 2-Fy 3-Fz 4-Mx 5-My 6-Mz
856
868
  show_line_chart: 折线图选项卡开启
@@ -874,7 +886,7 @@ class Odb:
874
886
  try:
875
887
  qt_model.PlotCompositeBeamForce(
876
888
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
877
- envelopeType=envelope_type, matType=mat_type, component=component,
889
+ envelopType=envelop_type, matType=mat_type, component=component,
878
890
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
879
891
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
880
892
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -885,7 +897,7 @@ class Odb:
885
897
 
886
898
  @staticmethod
887
899
  def plot_beam_element_stress(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
888
- envelope_type: int = 1, component: int = 1,
900
+ envelop_type: int = 1, component: int = 1,
889
901
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
890
902
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
891
903
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -898,7 +910,7 @@ class Odb:
898
910
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
899
911
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
900
912
  show_increment: 是否显示增量结果
901
- envelope_type: 施工阶段包络类型 1-最大 2-最小
913
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
902
914
  component: 分量编号 1-轴力 2-Mzx 3-My 4-组合包络 5-左上 6-右上 7-右下 8-左下
903
915
  show_line_chart: 折线图选项卡开启
904
916
  line_scale:折线图比例
@@ -921,7 +933,7 @@ class Odb:
921
933
  try:
922
934
  qt_model.PlotBeamElementStress(
923
935
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
924
- envelopeType=envelope_type, component=component,
936
+ envelopType=envelop_type, component=component,
925
937
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
926
938
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
927
939
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -931,7 +943,7 @@ class Odb:
931
943
  raise Exception(ex)
932
944
 
933
945
  @staticmethod
934
- def plot_truss_element_stress(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False, envelope_type: int = 1,
946
+ def plot_truss_element_stress(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False, envelop_type: int = 1,
935
947
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
936
948
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
937
949
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -944,7 +956,7 @@ class Odb:
944
956
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
945
957
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
946
958
  show_increment: 是否显示增量结果
947
- envelope_type: 施工阶段包络类型 1-最大 2-最小
959
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
948
960
  show_line_chart: 折线图选项卡开启
949
961
  line_scale:折线图比例
950
962
  flip_plot:反向绘制
@@ -965,7 +977,7 @@ class Odb:
965
977
  """
966
978
  try:
967
979
  qt_model.PlotTrussElementStress(
968
- filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment, envelopeType=envelope_type,
980
+ filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment, envelopType=envelop_type,
969
981
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
970
982
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
971
983
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -976,7 +988,7 @@ class Odb:
976
988
 
977
989
  @staticmethod
978
990
  def plot_composite_beam_stress(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
979
- envelope_type: int = 1, mat_type: int = 0, component: int = 1,
991
+ envelop_type: int = 1, mat_type: int = 0, component: int = 1,
980
992
  show_line_chart: bool = True, line_scale: float = 1.0, flip_plot: bool = True,
981
993
  show_deformed: bool = True, deformed_actual: bool = False, deformed_scale: float = 1.0,
982
994
  show_number: bool = False, text_rotation: int = 0, max_min_kind: int = 1,
@@ -989,7 +1001,7 @@ class Odb:
989
1001
  stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
990
1002
  case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
991
1003
  show_increment: 是否显示增量结果
992
- envelope_type: 施工阶段包络类型 1-最大 2-最小
1004
+ envelop_type: 施工阶段包络类型 1-最大 2-最小
993
1005
  mat_type: 材料类型 1-主材 2-辅材
994
1006
  component: 分量编号 1-轴力分量 2-Mz分量 3-My分量 4-包络 5-左上 6-右上 7-左下 8-右下
995
1007
  show_line_chart: 折线图选项卡开启
@@ -1013,7 +1025,7 @@ class Odb:
1013
1025
  try:
1014
1026
  qt_model.PlotCompositeBeamStress(
1015
1027
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
1016
- envelopeType=envelope_type, matType=mat_type, component=component,
1028
+ envelopType=envelop_type, matType=mat_type, component=component,
1017
1029
  showLineChart=show_line_chart, lineScale=line_scale, flipPlot=flip_plot,
1018
1030
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
1019
1031
  showNumber=show_number, textRotate=text_rotation, maxMinKind=max_min_kind,
@@ -1024,7 +1036,7 @@ class Odb:
1024
1036
 
1025
1037
  @staticmethod
1026
1038
  def plot_plate_element_stress(file_path: str, stage_id: int = 1, case_name: str = "合计", show_increment: bool = False,
1027
- envelope_type: int = 1, stress_kind: int = 0, component: int = 1,
1039
+ envelop_type: int = 1, stress_kind: int = 0, component: int = 1,
1028
1040
  show_number: bool = False, text_rotate: int = 0, max_min_kind: int = 1,
1029
1041
  show_deformed: bool = True, deformed_scale: float = 1.0, deformed_actual: bool = False,
1030
1042
  show_legend: bool = True, digital_count: int = 3, text_exponential: bool = True,
@@ -1037,7 +1049,7 @@ class Odb:
1037
1049
  stress_kind: 力类型 1-单元 2-节点平均
1038
1050
  case_name: 详细荷载工况名
1039
1051
  stage_id: 阶段编号
1040
- envelope_type: 包络类型
1052
+ envelop_type: 包络类型
1041
1053
  show_number: 是否显示数值
1042
1054
  show_deformed: 是否显示变形形状
1043
1055
  show_undeformed: 是否显示未变形形状
@@ -1057,7 +1069,7 @@ class Odb:
1057
1069
  try:
1058
1070
  qt_model.PlotPlateElementStress(
1059
1071
  filePath=file_path, stageId=stage_id, caseName=case_name, showIncrement=show_increment,
1060
- envelopeType=envelope_type, stressKind=stress_kind, component=component,
1072
+ envelopType=envelop_type, stressKind=stress_kind, component=component,
1061
1073
  showDeformed=show_deformed, deformedScale=deformed_scale, deformedActual=deformed_actual,
1062
1074
  showNumber=show_number, textRotate=text_rotate, maxMinKind=max_min_kind,
1063
1075
  showLegend=show_legend, digitalCount=digital_count, textExponential=text_exponential,
@@ -1398,7 +1410,7 @@ class Odb:
1398
1410
  node_list = qt_model.GetNodeData(ids)
1399
1411
  res_list = []
1400
1412
  for item in node_list:
1401
- res_list.append(str(Node(item.Id, item.XCoor, item.YCoor, item.ZCoor)))
1413
+ res_list.append(Node(item.Id, item.XCoor, item.YCoor, item.ZCoor).__str__())
1402
1414
  return res_list if len(res_list) > 1 else res_list[0]
1403
1415
  except Exception as ex:
1404
1416
  raise Exception(ex)
@@ -1473,7 +1485,8 @@ class Odb:
1473
1485
  else:
1474
1486
  item_list = qt_model.GetBeamElementData(ids)
1475
1487
  for item in item_list:
1476
- res_list.append(str(Element(item.Id, "BEAM", [item.StartNode.Id, item.EndNode.Id], item.MaterialId, item.SectionId, item.BetaAngle)))
1488
+ res_list.append(Element(item.Id, "BEAM", [item.StartNode.Id, item.EndNode.Id],
1489
+ item.MaterialId, item.SectionId, item.BetaAngle).__str__())
1477
1490
  return res_list
1478
1491
  except Exception as ex:
1479
1492
  raise Exception(ex)
@@ -1495,8 +1508,8 @@ class Odb:
1495
1508
  else:
1496
1509
  item_list = qt_model.GetPlateElementData(ids)
1497
1510
  for item in item_list:
1498
- res_list.append(str(Element(item.Id, "PLATE", [item.NodeI.Id, item.NodeJ.Id, item.NodeK.Id, item.NodeL.Id],
1499
- item.MaterialId, item.ThicknessId, item.BetaAngle)))
1511
+ res_list.append(Element(item.Id, "PLATE", [item.NodeI.Id, item.NodeJ.Id, item.NodeK.Id, item.NodeL.Id],
1512
+ item.MaterialId, item.ThicknessId, item.BetaAngle).__str__())
1500
1513
  return res_list
1501
1514
  except Exception as ex:
1502
1515
  raise Exception(ex)
@@ -1518,8 +1531,8 @@ class Odb:
1518
1531
  else:
1519
1532
  item_list = qt_model.GetCableElementData(ids)
1520
1533
  for item in item_list:
1521
- res_list.append(str(Element(item.Id, "CABLE", [item.StartNode.Id, item.EndNode.Id], item.MaterialId, item.SectionId, item.BetaAngle,
1522
- int(item.InitialParameterType), item.InitialParameter)))
1534
+ res_list.append(Element(item.Id, "CABLE", [item.StartNode.Id, item.EndNode.Id], item.MaterialId, item.SectionId, item.BetaAngle,
1535
+ int(item.InitialParameterType), item.InitialParameter).__str__())
1523
1536
  return res_list
1524
1537
  except Exception as ex:
1525
1538
  raise Exception(ex)
@@ -1541,7 +1554,8 @@ class Odb:
1541
1554
  else:
1542
1555
  item_list = qt_model.GetLinkElementData(ids)
1543
1556
  for item in item_list:
1544
- res_list.append(str(Element(item.Id, "LINK", [item.StartNode.Id, item.EndNode.Id], item.MaterialId, item.SectionId, item.BetaAngle)))
1557
+ res_list.append(Element(item.Id, "LINK", [item.StartNode.Id, item.EndNode.Id],
1558
+ item.MaterialId, item.SectionId, item.BetaAngle).__str__())
1545
1559
  return res_list
1546
1560
  except Exception as ex:
1547
1561
  raise Exception(ex)
@@ -1581,10 +1595,10 @@ class Odb:
1581
1595
  item_list = qt_model.GetConcreteMaterialData(ids)
1582
1596
  for item in item_list:
1583
1597
  creep_id = -1 if item.IsCalShrinkCreep is False else item.ConcreteTimeDependency.Id
1584
- res_list.append(str(Material(mat_id=item.Id, name=item.Name, mat_type="混凝土", standard=item.Standard, database=item.Database,
1598
+ res_list.append(Material(mat_id=item.Id, name=item.Name, mat_type="混凝土", standard=item.Standard, database=item.Database,
1585
1599
  data_info=[item.ElasticModulus, item.UnitWeight, item.PosiRatio, item.TemperatureCoefficient],
1586
1600
  modified=item.IsModifiedByUser, construct_factor=item.ConstructionCoefficient,
1587
- creep_id=creep_id, f_cuk=item.StrengthCheck.Fcuk)))
1601
+ creep_id=creep_id, f_cuk=item.StrengthCheck.Fcuk).__str__())
1588
1602
  return res_list
1589
1603
  except Exception as ex:
1590
1604
  raise Exception(ex)
@@ -1603,11 +1617,11 @@ class Odb:
1603
1617
  res_list = []
1604
1618
  item_list = qt_model.GetSteelPlateMaterialData(ids)
1605
1619
  for item in item_list:
1606
- res_list.append(str(Material(mat_id=item.Id, name=item.Name, mat_type="钢材", standard=item.Standard,
1620
+ res_list.append(Material(mat_id=item.Id, name=item.Name, mat_type="钢材", standard=item.Standard,
1607
1621
  database=item.StrengthCheck.Database,
1608
1622
  data_info=[item.ElasticModulus, item.UnitWeight, item.PosiRatio, item.TemperatureCoefficient],
1609
1623
  modified=item.IsModifiedByUser, construct_factor=item.ConstructionCoefficient,
1610
- creep_id=-1, f_cuk=0)))
1624
+ creep_id=-1, f_cuk=0).__str__())
1611
1625
  return res_list
1612
1626
  except Exception as ex:
1613
1627
  raise Exception(ex)
@@ -1626,10 +1640,10 @@ class Odb:
1626
1640
  res_list = []
1627
1641
  item_list = qt_model.GetPreStressedBarMaterialData(ids)
1628
1642
  for item in item_list:
1629
- res_list.append(str(Material(mat_id=item.Id, name=item.Name, mat_type="预应力", standard=item.Standard, database=item.Database,
1643
+ res_list.append(Material(mat_id=item.Id, name=item.Name, mat_type="预应力", standard=item.Standard, database=item.Database,
1630
1644
  data_info=[item.ElasticModulus, item.UnitWeight, item.PosiRatio, item.TemperatureCoefficient],
1631
1645
  modified=item.IsModifiedByUser, construct_factor=item.ConstructionCoefficient,
1632
- creep_id=-1, f_cuk=0)))
1646
+ creep_id=-1, f_cuk=0).__str__())
1633
1647
  return res_list
1634
1648
  except Exception as ex:
1635
1649
  raise Exception(ex)
@@ -1647,10 +1661,10 @@ class Odb:
1647
1661
  res_list = []
1648
1662
  item_list = qt_model.GetSteelBarMaterialData(ids)
1649
1663
  for item in item_list:
1650
- res_list.append(str(Material(mat_id=item.Id, name=item.Name, mat_type="钢筋", standard=item.Standard, database=item.Database,
1664
+ res_list.append(Material(mat_id=item.Id, name=item.Name, mat_type="钢筋", standard=item.Standard, database=item.Database,
1651
1665
  data_info=[item.ElasticModulus, item.UnitWeight, item.PosiRatio, item.TemperatureCoefficient],
1652
1666
  modified=item.IsModifiedByUser, construct_factor=item.ConstructionCoefficient,
1653
- creep_id=-1, f_cuk=0)))
1667
+ creep_id=-1, f_cuk=0).__str__())
1654
1668
  return res_list
1655
1669
 
1656
1670
  @staticmethod
@@ -1669,9 +1683,9 @@ class Odb:
1669
1683
  item_list = qt_model.GetUserDefinedMaterialData(ids)
1670
1684
  for item in item_list:
1671
1685
  creep_id = -1 if item.IsCalShrinkCreep is False else item.ConcreteTimeDependency.Id
1672
- res_list.append(str(Material(mat_id=item.Id, name=item.Name, mat_type="自定义", standard="null", database="null",
1686
+ res_list.append(Material(mat_id=item.Id, name=item.Name, mat_type="自定义", standard="null", database="null",
1673
1687
  data_info=[item.ElasticModulus, item.UnitWeight, item.PosiRatio, item.TemperatureCoefficient],
1674
- construct_factor=item.ConstructionCoefficient, creep_id=creep_id, f_cuk=item.Fcuk)))
1688
+ construct_factor=item.ConstructionCoefficient, creep_id=creep_id, f_cuk=item.Fcuk).__str__())
1675
1689
  return res_list
1676
1690
  except Exception as ex:
1677
1691
  raise Exception(ex)
@@ -1713,10 +1727,10 @@ class Odb:
1713
1727
  for group in group_names:
1714
1728
  item_list = qt_model.GetGeneralSupportData(group)
1715
1729
  for data in item_list:
1716
- res_list.append(str(GeneralSupport(data.Id, node_id=data.Node.Id,
1730
+ res_list.append(GeneralSupport(data.Id, node_id=data.Node.Id,
1717
1731
  boundary_info=(data.IsFixedX, data.IsFixedY, data.IsFixedZ,
1718
1732
  data.IsFixedRx, data.IsFixedRy, data.IsFixedRZ),
1719
- group_name=group, node_system=int(data.NodalCoordinateSystem))))
1733
+ group_name=group, node_system=int(data.NodalCoordinateSystem)).__str__())
1720
1734
  return res_list
1721
1735
  except Exception as ex:
1722
1736
  raise Exception(ex)
@@ -1740,10 +1754,10 @@ class Odb:
1740
1754
  for group in group_names:
1741
1755
  item_list = qt_model.GetElasticLinkData(group)
1742
1756
  for data in item_list:
1743
- res_list.append(str(ElasticLink(link_id=data.Id, link_type=int(data.Type) + 1,
1757
+ res_list.append(ElasticLink(link_id=data.Id, link_type=int(data.Type) + 1,
1744
1758
  start_id=data.StartNode.Id, end_id=data.EndNode.Id, beta_angle=data.Beta,
1745
1759
  boundary_info=(data.Kx, data.Ky, data.Kz, data.Krx, data.Kry, data.Krz),
1746
- group_name=group, dis_ratio=data.DistanceRatio, kx=data.Kx)))
1760
+ group_name=group, dis_ratio=data.DistanceRatio, kx=data.Kx).__str__())
1747
1761
  return res_list
1748
1762
  except Exception as ex:
1749
1763
  raise Exception(ex)
@@ -1767,9 +1781,9 @@ class Odb:
1767
1781
  for group in group_names:
1768
1782
  item_list = qt_model.GetElasticSupportData(group)
1769
1783
  for data in item_list:
1770
- res_list.append(str(ElasticSupport(support_id=data.Id, node_id=data.Node.Id, support_type=int(data.Type) + 1,
1784
+ res_list.append(ElasticSupport(support_id=data.Id, node_id=data.Node.Id, support_type=int(data.Type) + 1,
1771
1785
  boundary_info=(data.Kx, data.Ky, data.Kz, data.Krx, data.Kry, data.Krz),
1772
- group_name=group, node_system=int(data.NodalCoordinateSystem))))
1786
+ group_name=group, node_system=int(data.NodalCoordinateSystem)).__str__())
1773
1787
  return res_list
1774
1788
  except Exception as ex:
1775
1789
  raise Exception(ex)
@@ -1793,10 +1807,10 @@ class Odb:
1793
1807
  for group in group_names:
1794
1808
  item_list = qt_model.GetMasterSlaveLinkData(group)
1795
1809
  for data in item_list:
1796
- res_list.append(str(MasterSlaveLink(link_id=data.Id, master_id=data.MasterNode.Id, slave_id=data.SlaveNode.Id,
1810
+ res_list.append(MasterSlaveLink(link_id=data.Id, master_id=data.MasterNode.Id, slave_id=data.SlaveNode.Id,
1797
1811
  boundary_info=(data.IsFixedX, data.IsFixedY, data.IsFixedZ,
1798
1812
  data.IsFixedRx, data.IsFixedRy, data.IsFixedRZ),
1799
- group_name=group)))
1813
+ group_name=group).__str__())
1800
1814
  return res_list
1801
1815
  except Exception as ex:
1802
1816
  raise Exception(ex)
@@ -1815,8 +1829,8 @@ class Odb:
1815
1829
  for group in Odb.get_boundary_group_names():
1816
1830
  item_list = qt_model.GetNodalLocalAxisData(group)
1817
1831
  for data in item_list:
1818
- res_list.append(str(NodalLocalAxis(data.Node.Id, (data.VectorX.X, data.VectorX.Y, data.VectorX.Z),
1819
- (data.VectorY.X, data.VectorY.Y, data.VectorY.Z))))
1832
+ res_list.append(NodalLocalAxis(data.Node.Id, (data.VectorX.X, data.VectorX.Y, data.VectorX.Z),
1833
+ (data.VectorY.X, data.VectorY.Y, data.VectorY.Z)).__str__())
1820
1834
  return res_list
1821
1835
  except Exception as ex:
1822
1836
  raise Exception(ex)
@@ -1840,11 +1854,12 @@ class Odb:
1840
1854
  for group in group_names:
1841
1855
  item_list = qt_model.GetBeamConstraintData(group)
1842
1856
  for data in item_list:
1843
- info_i = (
1844
- not data.IsIFreedX, not data.IsIFreedY, not data.IsIFreedZ, not data.IsIFreedRx, not data.IsIFreedRy, not data.IsIFreedRZ)
1845
- info_j = (
1846
- not data.IsJFreedX, not data.IsJFreedY, not data.IsJFreedZ, not data.IsJFreedRx, not data.IsJFreedRy, not data.IsJFreedRZ)
1847
- res_list.append(str(BeamConstraint(constraint_id=data.Id, beam_id=data.Beam.Id, info_i=info_i, info_j=info_j, group_name=group)))
1857
+ info_i = ( not data.IsIFreedX, not data.IsIFreedY, not data.IsIFreedZ,
1858
+ not data.IsIFreedRx, not data.IsIFreedRy, not data.IsIFreedRZ)
1859
+ info_j = (not data.IsJFreedX, not data.IsJFreedY, not data.IsJFreedZ,
1860
+ not data.IsJFreedRx, not data.IsJFreedRy, not data.IsJFreedRZ)
1861
+ res_list.append(BeamConstraint(constraint_id=data.Id, beam_id=data.Beam.Id,
1862
+ info_i=info_i, info_j=info_j, group_name=group).__str__())
1848
1863
  return res_list
1849
1864
  except Exception as ex:
1850
1865
  raise Exception(ex)
@@ -1872,8 +1887,8 @@ class Odb:
1872
1887
  for info in data.ConstraintEquationMasterDofDatas:
1873
1888
  master_info.append((info.MasterNode.Id, int(info.MasterDof) + 1, info.Factor))
1874
1889
  res_list.append(
1875
- str(ConstraintEquation(data.Id, name=data.Name, sec_node=data.SecondaryNode.Id, sec_dof=int(data.SecondaryDof) + 1,
1876
- master_info=master_info, group_name=group)))
1890
+ ConstraintEquation(data.Id, name=data.Name, sec_node=data.SecondaryNode.Id, sec_dof=int(data.SecondaryDof) + 1,
1891
+ master_info=master_info, group_name=group).__str__())
1877
1892
  return res_list
1878
1893
  except Exception as ex:
1879
1894
  raise Exception(ex)
@@ -1897,9 +1912,9 @@ class Odb:
1897
1912
  for group in group_names:
1898
1913
  item_list = qt_model.GetEffectiveWidthFactorData(groupName=group_name)
1899
1914
  for item in item_list:
1900
- res_list.append(str(EffectiveWidth(index=item.Id, element_id=item.Element.Id, iy_i=item.Iy_I, iy_j=item.Iy_J,
1915
+ res_list.append(EffectiveWidth(index=item.Id, element_id=item.Element.Id, iy_i=item.Iy_I, iy_j=item.Iy_J,
1901
1916
  factor_i=item.IyFactor_I, factor_j=item.IyFactor_J,
1902
- dz_i=item.CentroidZ_I, dz_j=item.CentroidZ_J, group_name=group)))
1917
+ dz_i=item.CentroidZ_I, dz_j=item.CentroidZ_J, group_name=group).__str__())
1903
1918
  return res_list
1904
1919
  except Exception as ex:
1905
1920
  raise Exception(ex)
@@ -1998,8 +2013,9 @@ class Odb:
1998
2013
  res_list = []
1999
2014
  item_list = qt_model.GetPrestressLoadData(case_name)
2000
2015
  for data in item_list:
2001
- res_list.append(str(PreStressLoad(case_name=case_name, tendon_name=data.Tendon.Name,
2002
- tension_type=int(data.TendonTensionType), force=data.TensionForce, group_name=data.LoadGroup.Name)))
2016
+ res_list.append(PreStressLoad(case_name=case_name, tendon_name=data.Tendon.Name,
2017
+ tension_type=int(data.TendonTensionType), force=data.TensionForce,
2018
+ group_name=data.LoadGroup.Name).__str__())
2003
2019
  return res_list
2004
2020
  except Exception as ex:
2005
2021
  raise Exception(ex)
@@ -2017,10 +2033,10 @@ class Odb:
2017
2033
  res_list = []
2018
2034
  item_list = qt_model.GetNodalMassLoadData()
2019
2035
  for data in item_list:
2020
- res_list.append(str(NodalMass(data.Node.Id, mass_info=(data.MassAlongZ,
2036
+ res_list.append(NodalMass(data.Node.Id, mass_info=(data.MassAlongZ,
2021
2037
  data.InertialMassMomentAlongX,
2022
2038
  data.InertialMassMomentAlongY,
2023
- data.InertialMassMomentAlongZ))))
2039
+ data.InertialMassMomentAlongZ)).__str__())
2024
2040
  return res_list
2025
2041
  except Exception as ex:
2026
2042
  raise Exception(ex)
@@ -2039,9 +2055,9 @@ class Odb:
2039
2055
  item_list = qt_model.GetNodeForceLoadData(case_name)
2040
2056
  for data in item_list:
2041
2057
  load = data.Force
2042
- res_list.append(str(NodalForce(node_id=data.Node.Id, case_name=case_name,
2058
+ res_list.append(NodalForce(node_id=data.Node.Id, case_name=case_name,
2043
2059
  load_info=(load.ForceX, load.ForceY, load.ForceZ,
2044
- load.MomentX, load.MomentY, load.MomentZ), group_name=data.LoadGroup.Name)))
2060
+ load.MomentX, load.MomentY, load.MomentZ), group_name=data.LoadGroup.Name).__str__())
2045
2061
  return res_list
2046
2062
 
2047
2063
  @staticmethod
@@ -2059,9 +2075,10 @@ class Odb:
2059
2075
  item_list = qt_model.GetNodeForceLoadData(case_name)
2060
2076
  for data in item_list:
2061
2077
  load = data.NodalForceDisplacement
2062
- res_list.append(str(NodalForceDisplacement(node_id=data.Node.Id, case_name=case_name,
2063
- load_info=(load.DispX, load.DispY, load.DispZ,
2064
- load.DispRx, load.DispRy, load.DispRz), group_name=data.LoadGroup.Name)))
2078
+ res_list.append(NodalForceDisplacement(node_id=data.Node.Id, case_name=case_name,
2079
+ load_info=(load.DispX, load.DispY, load.DispZ,
2080
+ load.DispRx, load.DispRy, load.DispRz),
2081
+ group_name=data.LoadGroup.Name).__str__())
2065
2082
  return res_list
2066
2083
  except Exception as ex:
2067
2084
  raise Exception(ex)
@@ -2082,16 +2099,16 @@ class Odb:
2082
2099
  for item in item_list_concentrated_load:
2083
2100
  load_bias = (item.FrameLoadBias.IsBias, item.FrameLoadBias.LoadBiasPosition,
2084
2101
  int(item.FrameLoadBias.CoordinateSystem) + 1, item.FrameLoadBias.Distance)
2085
- res_list.append(str(BeamElementLoad(item.ElementId, case_name, int(item.ElementLoadType) + 1, int(item.LoadCoordinateSystem),
2102
+ res_list.append(BeamElementLoad(item.ElementId, case_name, int(item.ElementLoadType) + 1, int(item.LoadCoordinateSystem),
2086
2103
  list_x=[item.Distance], list_load=[item.Force], group_name=item.LoadGroup.Name,
2087
- load_bias=load_bias, projected=False)))
2104
+ load_bias=load_bias, projected=False).__str__())
2088
2105
  item_list_distribute_load = qt_model.GetBeamDistributeLoadData(case_name)
2089
2106
  for item in item_list_distribute_load:
2090
2107
  load_bias = (item.FrameLoadBias.IsBias, item.FrameLoadBias.LoadBiasPosition,
2091
2108
  int(item.FrameLoadBias.CoordinateSystem) + 1, item.FrameLoadBias.Distance)
2092
- res_list.append(str(BeamElementLoad(item.ElementId, case_name, int(item.ElementLoadType) + 1, int(item.LoadCoordinateSystem),
2109
+ res_list.append(BeamElementLoad(item.ElementId, case_name, int(item.ElementLoadType) + 1, int(item.LoadCoordinateSystem),
2093
2110
  list_x=[item.StartDistance, item.EndDistance], list_load=[item.StartForce, item.EndForce],
2094
- group_name=item.LoadGroup.Name, load_bias=load_bias, projected=item.IsProjection)))
2111
+ group_name=item.LoadGroup.Name, load_bias=load_bias, projected=item.IsProjection).__str__())
2095
2112
  return res_list
2096
2113
  except Exception as ex:
2097
2114
  raise Exception(ex)
@@ -2110,19 +2127,20 @@ class Odb:
2110
2127
  res_list = []
2111
2128
  item_list_concentrated_load = qt_model.GetPlateConcentratedLoadData(case_name)
2112
2129
  for item in item_list_concentrated_load:
2113
- res_list.append(str(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2130
+ res_list.append(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2114
2131
  load_place=0, coord_system=int(item.LoadCoordinateSystem) + 1,
2115
- group_name=item.LoadGroup.Name, load_list=[item.P], xy_list=(item.Dx, item.Dy))))
2132
+ group_name=item.LoadGroup.Name, load_list=[item.P], xy_list=(item.Dx, item.Dy)).__str__())
2116
2133
  line_load_list = qt_model.GetPlateDistributeLineLoadData(case_name)
2117
2134
  for item in line_load_list:
2118
- res_list.append(str(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2135
+ res_list.append(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2119
2136
  load_place=int(item.PlateLoadPosition) - 1, coord_system=int(item.LoadCoordinateSystem) + 1,
2120
- group_name=item.LoadGroup.Name, load_list=[item.P1, item.P2], xy_list=None)))
2137
+ group_name=item.LoadGroup.Name, load_list=[item.P1, item.P2], xy_list=None).__str__())
2121
2138
  line_load_list = qt_model.GetPlateDistributeAreaLoadData(case_name)
2122
2139
  for item in line_load_list:
2123
- res_list.append(str(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2140
+ res_list.append(PlateElementLoad(element_id=item.ElementId, case_name=case_name, load_type=int(item.ElementLoadType) + 1,
2124
2141
  load_place=0, coord_system=int(item.LoadCoordinateSystem) + 1,
2125
- group_name=item.LoadGroup.Name, load_list=[item.P1, item.P2, item.P3, item.P4], xy_list=None)))
2142
+ group_name=item.LoadGroup.Name, load_list=[item.P1, item.P2, item.P3, item.P4],
2143
+ xy_list=None).__str__())
2126
2144
  return res_list
2127
2145
  except Exception as ex:
2128
2146
  raise Exception(ex)
@@ -2141,8 +2159,8 @@ class Odb:
2141
2159
  res_list = []
2142
2160
  item_list_load = qt_model.GetInitialTensionLoadData(case_name)
2143
2161
  for item in item_list_load:
2144
- res_list.append(str(InitialTension(element_id=item.ElementId, case_name=case_name, group_name=item.LoadGroup.Name,
2145
- tension_type=int(item.CableTensionType), tension=item.Tension)))
2162
+ res_list.append(InitialTension(element_id=item.ElementId, case_name=case_name, group_name=item.LoadGroup.Name,
2163
+ tension_type=int(item.CableTensionType), tension=item.Tension).__str__())
2146
2164
  return res_list
2147
2165
  except Exception as ex:
2148
2166
  raise Exception(ex)
@@ -2161,8 +2179,8 @@ class Odb:
2161
2179
  res_list = []
2162
2180
  item_list_load = qt_model.GetCableLengthLoadData(case_name)
2163
2181
  for item in item_list_load:
2164
- res_list.append(str(CableLengthLoad(element_id=item.ElementId, case_name=case_name, group_name=item.LoadGroup.Name,
2165
- tension_type=int(item.CableTensionType), length=item.UnstressedLength)))
2182
+ res_list.append(CableLengthLoad(element_id=item.ElementId, case_name=case_name, group_name=item.LoadGroup.Name,
2183
+ tension_type=int(item.CableTensionType), length=item.UnstressedLength).__str__())
2166
2184
  return res_list
2167
2185
  except Exception as ex:
2168
2186
  raise Exception(ex)
@@ -2180,16 +2198,16 @@ class Odb:
2180
2198
  res_list = []
2181
2199
  beam_list_parameter = qt_model.GetBeamDeviationParameterData()
2182
2200
  for item in beam_list_parameter:
2183
- res_list.append(str(DeviationParameter(item.Name, element_type=1,
2201
+ res_list.append(DeviationParameter(item.Name, element_type=1,
2184
2202
  parameters=[item.AxialDeviation, item.StartAngleDeviationDirectX,
2185
2203
  item.StartAngleDeviationDirectY, item.StartAngleDeviationDirectZ,
2186
2204
  item.EndAngleDeviationDirectX, item.EndAngleDeviationDirectY,
2187
- item.EndAngleDeviationDirectZ])))
2205
+ item.EndAngleDeviationDirectZ]).__str__())
2188
2206
  plate_list_parameter = qt_model.GetPlateDeviationParameterData()
2189
2207
  for item in plate_list_parameter:
2190
- res_list.append(str(DeviationParameter(item.Name, element_type=2,
2208
+ res_list.append(DeviationParameter(item.Name, element_type=2,
2191
2209
  parameters=[item.DisplacementDirectX, item.DisplacementDirectY, item.DisplacementDirectZ,
2192
- item.RotationDirectX, item.RotationDirectY])))
2210
+ item.RotationDirectX, item.RotationDirectY]).__str__())
2193
2211
  return res_list
2194
2212
  except Exception as ex:
2195
2213
  raise Exception(ex)
@@ -2208,14 +2226,14 @@ class Odb:
2208
2226
  res_list = []
2209
2227
  beam_list_load = qt_model.GetBeamDeviationLoadData(case_name)
2210
2228
  for item in beam_list_load:
2211
- res_list.append(str(DeviationLoad(item.Element.Id, case_name=case_name,
2229
+ res_list.append(DeviationLoad(item.Element.Id, case_name=case_name,
2212
2230
  parameters=[item.BeamDeviationParameter.Name],
2213
- group_name=item.LoadGroup.Name)))
2231
+ group_name=item.LoadGroup.Name).__str__())
2214
2232
  plate_list_load = qt_model.GetPlateDeviationLoadData(case_name)
2215
2233
  for item in plate_list_load:
2216
- res_list.append(str(DeviationLoad(item.Element.Id, case_name=case_name,
2234
+ res_list.append(DeviationLoad(item.Element.Id, case_name=case_name,
2217
2235
  parameters=[item.PlateDeviation[0].Name, item.PlateDeviation[0].Name,
2218
- item.PlateDeviation[2].Name, item.PlateDeviation[3].Name])))
2236
+ item.PlateDeviation[2].Name, item.PlateDeviation[3].Name]).__str__())
2219
2237
  return res_list
2220
2238
  except Exception as ex:
2221
2239
  raise Exception(ex)
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qtmodel
3
- Version: 0.9.4
4
- Summary: python modeling for qt 2025-07-01
3
+ Version: 0.9.6
4
+ Summary: python modeling for qt 2025-07-11
5
5
  Home-page: https://github.com/Inface0443/pyqt
6
6
  Author: dqy-zhj
7
7
  Author-email: 1105417715@qq.com
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- > 最新版本 V0.9.4 - 2025-07-01
15
+ > 最新版本 V0.9.6 - 2025-07-11
16
16
  > pip install --upgrade qtmodel -i https://pypi.org/simple
17
17
  - 新增更新结构组接口
18
18
  # 建模操作
@@ -3229,6 +3229,16 @@ mdb.remove_load_combine(name="荷载组合1")
3229
3229
  ```
3230
3230
  Returns: 无
3231
3231
  # 视图与结果提取
3232
+ ### display_info
3233
+ 显示字典并打印
3234
+ > 参数:
3235
+ > dict_info:需要传输的数据
3236
+ ```Python
3237
+ # 示例代码
3238
+ from qtmodel import *
3239
+ odb.display_info(Node(1,1,2,3).__str__())
3240
+ ```
3241
+ Returns: 无
3232
3242
  ## 视图控制
3233
3243
  ### display_node_id
3234
3244
  设置节点号显示
@@ -3538,7 +3548,7 @@ Returns:list[dict]包含该模态下屈曲模态向量列表
3538
3548
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3539
3549
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3540
3550
  > show_increment: 是否显示增量结果
3541
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3551
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3542
3552
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Fxyz 5-Mx 6-My 7-Mz 8-Mxyz
3543
3553
  > show_number: 数值选项卡开启
3544
3554
  > show_legend: 图例选项卡开启
@@ -3563,7 +3573,7 @@ Returns: 无
3563
3573
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3564
3574
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3565
3575
  > show_increment: 是否显示增量结果
3566
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3576
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3567
3577
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3568
3578
  > show_deformed: 变形选项卡开启
3569
3579
  > deformed_scale:变形比例
@@ -3592,7 +3602,7 @@ Returns: 无
3592
3602
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3593
3603
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3594
3604
  > show_increment: 是否显示增量结果
3595
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3605
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3596
3606
  > component: 分量编号 1-Dx 2-Dy 3-Dz 4-Rx 5-Ry 6-Rz 7-Dxy 8-Dyz 9-Dxz 10-Dxyz
3597
3607
  > show_line_chart: 折线图选项卡开启
3598
3608
  > line_scale:折线图比例
@@ -3624,7 +3634,7 @@ Returns: 无
3624
3634
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3625
3635
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3626
3636
  > show_increment: 是否显示增量结果
3627
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3637
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3628
3638
  > component: 分量编号 0-N 1-Fx 2-Fy 3-Fz
3629
3639
  > show_line_chart: 折线图选项卡开启
3630
3640
  > line_scale:折线图比例
@@ -3657,7 +3667,7 @@ Returns: 无
3657
3667
  > force_kind: 内力选项 1-单元 2-节点平均
3658
3668
  > case_name: 详细荷载工况名
3659
3669
  > stage_id: 阶段编号
3660
- > envelope_type: 包络类型
3670
+ > envelop_type: 包络类型
3661
3671
  > show_number: 是否显示数值
3662
3672
  > show_deformed: 是否显示变形形状
3663
3673
  > show_undeformed: 是否显示未变形形状
@@ -3685,7 +3695,7 @@ Returns: 无
3685
3695
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3686
3696
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3687
3697
  > show_increment: 是否显示增量结果
3688
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3698
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3689
3699
  > mat_type: 材料类型 1-主材 2-辅材 3-主材+辅材
3690
3700
  > component: 分量编号 1-Fx 2-Fy 3-Fz 4-Mx 5-My 6-Mz
3691
3701
  > show_line_chart: 折线图选项卡开启
@@ -3715,7 +3725,7 @@ Returns: 无
3715
3725
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3716
3726
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3717
3727
  > show_increment: 是否显示增量结果
3718
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3728
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3719
3729
  > component: 分量编号 1-轴力 2-Mzx 3-My 4-组合包络 5-左上 6-右上 7-右下 8-左下
3720
3730
  > show_line_chart: 折线图选项卡开启
3721
3731
  > line_scale:折线图比例
@@ -3744,7 +3754,7 @@ Returns: 无
3744
3754
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3745
3755
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3746
3756
  > show_increment: 是否显示增量结果
3747
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3757
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3748
3758
  > show_line_chart: 折线图选项卡开启
3749
3759
  > line_scale:折线图比例
3750
3760
  > flip_plot:反向绘制
@@ -3772,7 +3782,7 @@ Returns: 无
3772
3782
  > stage_id: -1-运营阶段 0-施工阶段包络 n-施工阶段号
3773
3783
  > case_name: 详细荷载工况名,参考桥通结果输出,例如: CQ:成桥(合计)
3774
3784
  > show_increment: 是否显示增量结果
3775
- > envelope_type: 施工阶段包络类型 1-最大 2-最小
3785
+ > envelop_type: 施工阶段包络类型 1-最大 2-最小
3776
3786
  > mat_type: 材料类型 1-主材 2-辅材
3777
3787
  > component: 分量编号 1-轴力分量 2-Mz分量 3-My分量 4-包络 5-左上 6-右上 7-左下 8-右下
3778
3788
  > show_line_chart: 折线图选项卡开启
@@ -3803,7 +3813,7 @@ Returns: 无
3803
3813
  > stress_kind: 力类型 1-单元 2-节点平均
3804
3814
  > case_name: 详细荷载工况名
3805
3815
  > stage_id: 阶段编号
3806
- > envelope_type: 包络类型
3816
+ > envelop_type: 包络类型
3807
3817
  > show_number: 是否显示数值
3808
3818
  > show_deformed: 是否显示变形形状
3809
3819
  > show_undeformed: 是否显示未变形形状
@@ -11,7 +11,7 @@ with open("README.md", "r", encoding="utf-8") as fh:
11
11
 
12
12
  setup(
13
13
  name="qtmodel",
14
- version=f"V0.9.4",
14
+ version=f"V0.9.6",
15
15
  author="dqy-zhj",
16
16
  author_email="1105417715@qq.com",
17
17
  description=f"python modeling for qt {datetime.now().date()} ",
File without changes
File without changes
File without changes