qtmodel 2.3.0__tar.gz → 2.4.1__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.
Files changed (50) hide show
  1. {qtmodel-2.3.0 → qtmodel-2.4.1}/PKG-INFO +1433 -174
  2. {qtmodel-2.3.0 → qtmodel-2.4.1}/README.md +1432 -173
  3. {qtmodel-2.3.0 → qtmodel-2.4.1}/pyproject.toml +1 -1
  4. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/__init__.py +2 -1
  5. qtmodel-2.4.1/src/qtmodel/bridge.py +67 -0
  6. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/cdb/__init__.py +8 -3
  7. qtmodel-2.4.1/src/qtmodel/cdb/cdb_concrete_check.py +2126 -0
  8. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/cdb/cdb_steel_box_check.py +0 -19
  9. qtmodel-2.4.1/src/qtmodel/cdb/cdb_steel_truss_check.py +103 -0
  10. qtmodel-2.4.1/src/qtmodel/core/concrete_check_db.py +626 -0
  11. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/core/data_helper.py +66 -65
  12. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/core/model_db.py +235 -21
  13. qtmodel-2.4.1/src/qtmodel/core/parameter_section_dict.py +122 -0
  14. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/core/qt_server.py +44 -3
  15. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/core/result_db.py +1 -0
  16. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_analysis_setting.py +1 -1
  17. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_project.py +150 -30
  18. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_section.py +85 -11
  19. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_structure.py +146 -0
  20. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_tendon.py +95 -2
  21. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_boundary.py +9 -9
  22. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_load.py +24 -22
  23. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_material.py +3 -3
  24. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_section.py +5 -5
  25. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_stage.py +2 -2
  26. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_model_structure.py +83 -26
  27. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_result_data.py +36 -37
  28. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel.egg-info/PKG-INFO +1433 -174
  29. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel.egg-info/SOURCES.txt +3 -0
  30. qtmodel-2.3.0/src/qtmodel/cdb/cdb_concrete_check.py +0 -338
  31. qtmodel-2.3.0/src/qtmodel/cdb/cdb_steel_truss_check.py +0 -42
  32. {qtmodel-2.3.0 → qtmodel-2.4.1}/setup.cfg +0 -0
  33. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/cdb/cdb_anti_overturn_check.py +0 -0
  34. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/core/__init__.py +0 -0
  35. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/__init__.py +0 -0
  36. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_assistant.py +0 -0
  37. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_boundary.py +0 -0
  38. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_construction_stage.py +0 -0
  39. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_dynamic_load.py +0 -0
  40. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_live_load.py +0 -0
  41. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_load.py +0 -0
  42. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_property.py +0 -0
  43. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_sink_load.py +0 -0
  44. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_static_load.py +0 -0
  45. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/mdb/mdb_temperature_load.py +0 -0
  46. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/__init__.py +0 -0
  47. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_result_plot.py +0 -0
  48. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel/odb/odb_view.py +0 -0
  49. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel.egg-info/dependency_links.txt +0 -0
  50. {qtmodel-2.3.0 → qtmodel-2.4.1}/src/qtmodel.egg-info/top_level.txt +0 -0
@@ -1,14 +1,14 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qtmodel
3
- Version: 2.3.0
3
+ Version: 2.4.1
4
4
  Summary: qtmodel package
5
5
  Author: Your Name
6
6
  Requires-Python: >=3.9
7
7
  Description-Content-Type: text/markdown
8
8
 
9
- > 最新qtmodel版本 2.3.0 - 2026-05-19
9
+ > 最新qtmodel版本 2.4.1 - 2026-07-14
10
10
  > pip install --upgrade qtmodel -i https://pypi.org/simple
11
- - 增加运行分析等待时间参数
11
+ - 增加检算荷载API
12
12
  # 建模操作
13
13
  ## 节点操作
14
14
  ### generate_curve_node_data
@@ -37,6 +37,29 @@ from qtmodel import *
37
37
  mdb.generate_curve_node_data(fixed_y=4,curve_points=[(1,1),(2.5,3),(3.5,4)],count=4)
38
38
  #Returns:
39
39
  ```
40
+ ### add_node
41
+ 根据坐标信息添加单个节点,可指定节点编号,也可不指定节点编号。
42
+ > 参数:
43
+ > node_data:
44
+ > [id, x, y, z]:指定节点编号;
45
+ > [x, y, z]:不指定节点编号。
46
+ > 指定节点编号时,不进行交叉分割、合并、自动编号等操作。
47
+ > intersected: 是否交叉分割。
48
+ > is_merged: 是否忽略位置重复节点。
49
+ > merge_error: 合并容许误差。
50
+ > numbering_type:
51
+ > 节点编号方式:
52
+ > 0 - 未使用的最小号码;
53
+ > 1 - 最大号码加 1;
54
+ > 2 - 用户定义号码。
55
+ > start_id: 自定义节点起始编号,仅 numbering_type=2 时使用。
56
+ ```Python
57
+ # 示例代码
58
+ from qtmodel import *
59
+ mdb.add_node(node_data=[1, 1.0, 2.0, 3.0])
60
+ mdb.add_node(node_data=[1.0, 2.0, 3.0])
61
+ #Returns:
62
+ ```
40
63
  ### add_nodes
41
64
  根据坐标信息和节点编号添加一组节点,可指定节点号,或不指定节点号
42
65
  > 参数:
@@ -161,6 +184,26 @@ mdb.add_elements(ele_data=[
161
184
  [4,4,1,1,0,1,2,3,4,0]])
162
185
  #Returns: 无
163
186
  ```
187
+ ### add_beam_between
188
+ 根据起始节点和终止节点平均添加或按间距添加梁单元。
189
+ > 参数:
190
+ > start_id: 新建单元起始编号
191
+ > end_id: 新建单元终止编号
192
+ > node_start: 起始节点号
193
+ > node_end: 终止节点号
194
+ > beta_angle: beta角,默认0
195
+ > mat_id: 材料号,默认1
196
+ > sec_id: 截面号,默认1
197
+ > gap: 间距列表;数量等于 end_id - start_id + 1 时按间距创建,否则C#侧按等分创建
198
+ > using_exist_node: 是否优先使用已有重合节点,默认True
199
+ ```Python
200
+ # 示例代码
201
+ from qtmodel import *
202
+ mdb.add_beam_between(start_id=1001,end_id=1010,
203
+ node_start=1,node_end=20,beta_angle=0,mat_id=1,
204
+ sec_id=1,gap=[2.0] * 10,using_exist_node=True)
205
+ #Returns: 无
206
+ ```
164
207
  ### revert_local_orientation
165
208
  反转杆系单元局部方向
166
209
  > 参数:
@@ -201,6 +244,20 @@ from qtmodel import *
201
244
  mdb.update_element(old_id=1,ele_type=1,node_ids=[1,2],beta_angle=1,mat_id=1,sec_id=1)
202
245
  #Returns: 无
203
246
  ```
247
+ ### update_frame_type
248
+ 修改杆系单元类型
249
+ > 参数:
250
+ > element_ids: 需要修改的单元编号列表
251
+ > element_type: 单元类型 1-梁 2-杆 3-索
252
+ > initial_type: 索单元初始参数类型 1-初始拉力 2-初始水平力 3-无应力长度
253
+ > initial_value: 索单元初始参数值
254
+ ```Python
255
+ # 示例代码
256
+ from qtmodel import *
257
+ mdb.update_frame_type(element_ids=[1, 2, 3], element_type=1)
258
+ mdb.update_frame_type(element_ids=[101, 102], element_type=3, initial_type=1, initial_value=100)
259
+ #Returns:
260
+ ```
204
261
  ### update_element_material
205
262
  更新指定单元的材料号
206
263
  > 参数:
@@ -223,6 +280,17 @@ from qtmodel import *
223
280
  mdb.update_element_beta(ids=1,beta=90)
224
281
  #Returns: 无
225
282
  ```
283
+ ### update_element_section
284
+ 更新杆系单元截面或板单元板厚
285
+ > 参数:
286
+ > ids: 单元编号,支持整形、列表、XtoYbyZ形式字符串
287
+ > sec_id: 截面号或板厚号
288
+ ```Python
289
+ # 示例代码
290
+ from qtmodel import *
291
+ mdb.update_element_section(ids=1,sec_id=2)
292
+ #Returns: 无
293
+ ```
226
294
  ### update_frame_section
227
295
  更新杆系单元截面
228
296
  > 参数:
@@ -626,14 +694,29 @@ mdb.update_to_post()
626
694
  #Returns: 无
627
695
  ```
628
696
  ### do_solve
629
- 运行分析
697
+ Run project analysis.
630
698
  > 参数:
699
+ > show_view: Show the Qt analysis prompt window while solving.
700
+ > modal: Reserved for the Qt side when show_view=True.
701
+ > auto_close: Auto close the prompt window after solving.
702
+ > read_timeout: Timeout for the start request, in seconds.
703
+ > wait: Poll and wait for the background solve to finish.
704
+ > poll_interval: Poll interval when wait=True, in seconds.
705
+ > max_wait: Max wait time when wait=True, in seconds.
706
+ > status_read_timeout: Timeout for each status request, in seconds.
707
+ > sync: Ask backend to run synchronously. Not recommended for large models.
631
708
  ```Python
632
709
  # 示例代码
633
710
  from qtmodel import *
634
- mdb.do_solve(read_timeout=600)
635
- #Returns: 无
711
+ mdb.do_solve()
712
+ mdb.do_solve(show_view=True)
713
+ mdb.do_solve(wait=True, max_wait=1800)
714
+ #Returns:
636
715
  ```
716
+ ### get_solve_status
717
+ Get current project solve status.
718
+ ### wait_solve
719
+ Poll until project solve finishes.
637
720
  ### initial
638
721
  初始化模型,新建模型
639
722
  > 参数:
@@ -695,17 +778,31 @@ mdb.import_file(file_path="a.mct")
695
778
  #Returns: 无
696
779
  ```
697
780
  ### export_file
698
- 导出命令为导出到本机所在地址,默认输出截面特性和截面信息
781
+ 导出命令为导出到本机所在地址,默认输出截面特性和截面信息。
699
782
  > 参数:
700
- > file_path:导出文件全路径,支持格式(.mct/.qdat/.obj/.txt/.py)
701
- > convert_sec_group:是否将变截面组转换为变截面
702
- > type_kind:输出文件类型 0-仅输出截面特性和材料特性(仅供qdat输出) 1-仅输出模型文件 2-输出截面特性和截面信息
703
- > group_name:obj与 APDL导出时指定结构组导出
783
+ > file_path: 导出文件全路径,支持格式(.mct/.qdat/.obj/.txt/.py)
784
+ > convert_sec_group: 是否将变截面组转换为变截面
785
+ > type_kind:
786
+ > 输出文件类型:
787
+ > 0 - 仅输出截面特性和材料特性(仅供 qdat 输出)
788
+ > 1 - 仅输出模型文件
789
+ > 2 - 输出截面特性和截面信息
790
+ > group_name:
791
+ > 导出时指定结构组数据。
792
+ > 仅供 obj、apdl、混凝土检算文件导出。
793
+ > 当 export_concrete_check=True 时,必须传入非空字符串。
794
+ > export_steel_box_check: 是否导出钢箱梁检算数据
795
+ > export_concrete_check: 是否导出混凝土检算数据
704
796
  ```Python
705
797
  # 示例代码
706
798
  from qtmodel import *
707
799
  mdb.export_file(file_path="a.mct")
708
- #Returns: 无
800
+ mdb.export_file(
801
+ file_path="concrete_check.txt",
802
+ group_name="默认结构组",
803
+ export_concrete_check=True
804
+ )
805
+ #Returns:
709
806
  ```
710
807
  ### export_qt_helper
711
808
  输出桥通qdat命令帮助文档,仅支持最新帮助文档,保存路径为调用主机下
@@ -728,6 +825,48 @@ mdb.update_view_stage(stage_name="一次成桥")
728
825
  #Returns: 无
729
826
  ```
730
827
  ## 截面
828
+ ### add_parameter_section
829
+ 添加参数化截面
830
+ > 参数:
831
+ > index: 截面编号,默认自动识别
832
+ > name:截面名称
833
+ > sec_type:参数截面类型名称
834
+ > sec_info:只填写截面参数
835
+ > sec_property:截面特性(参考UI界面共计29个参数),可选参数,指定截面特性时不进行截面计算
836
+ > bias_type:偏心类型 默认中心
837
+ > center_type:中心类型 默认质心
838
+ > shear_consider:考虑剪切 bool 默认考虑剪切变形
839
+ > bias_x:自定义偏心点x坐标 (仅自定义类型偏心需要,相对于center_type偏移)
840
+ > bias_y:自定义偏心点y坐标 (仅自定义类型偏心需要,相对于center_type偏移)
841
+ ```Python
842
+ # 示例代码
843
+ from qtmodel import *
844
+ mdb.add_parameter_section(
845
+ index=271,
846
+ name="新建矩形截面271",
847
+ sec_type="矩形",
848
+ sec_info={"W": 2, "H": 2}
849
+ )
850
+ mdb.add_parameter_section(
851
+ index=271, name="新建混凝土箱梁271", sec_type="混凝土箱梁",
852
+ sec_info=dict(B=24, N=3, H=2, symmetry=True, H1=0.2, H2=0.4,
853
+ H2a=0.1, H2b=0.13, B1=3, B1a=1, B1b=2, B2=1, i1=0.02,
854
+ i2=0, B0=12, B3=5, B4=6, T1=0.28, T2=0.3, T3=0.5, T4=0.5,
855
+ R1=0.5, R2=0.2, C1="1*0.2,0.1*0.2", C2="0.5*0.15,0.3*0.2",
856
+ C3="0.4*0.2", C4="0.5*0.2")
857
+ )
858
+ mdb.add_parameter_section(
859
+ index=271,
860
+ name="新建带肋钢梁271",
861
+ sec_type="带肋钢梁",
862
+ sec_info={
863
+ "tb": 0.016,"H": 2.5,"Nh": 4,"Nv": 4,"hrt": 0.25,
864
+ "hrw": 0.2,"trt": 0.016,"trw": 0.016,"dh": 0.3,
865
+ "dv": 0.5,"tt": 0.016,"tw": 0.02,"W": 2
866
+ }
867
+ )
868
+ #Returns: 无
869
+ ```
731
870
  ### add_section
732
871
  添加单一截面信息,如果截面号存在则自动覆盖添加
733
872
  > 参数:
@@ -1413,6 +1552,54 @@ from qtmodel import *
1413
1552
  mdb.update_element_component_type(ids=[1,2,3,4],component_type=2)
1414
1553
  #Returns: 无
1415
1554
  ```
1555
+ ### update_tendon
1556
+ 更新钢束信息,支持二维钢束和三维钢束
1557
+ > 参数:
1558
+ > name: 原钢束名称
1559
+ > new_name: 新钢束名称,为空时不修改名称
1560
+ > tendon_2d: 是否为二维钢束,True-二维钢束,False-三维钢束
1561
+ > property_name: 钢束特性名称
1562
+ > group_name: 钢束组名称
1563
+ > num: 根数
1564
+ > line_type: 线型,1-导线点,2-折线点
1565
+ > symmetry: 二维钢束对称点,0-左端点,1-右端点,2-不对称
1566
+ > control_points:
1567
+ > 二维钢束控制点: [(x1,z1,r1),(x2,z2,r2),...]
1568
+ > 三维钢束控制点: [(x1,y1,z1,r1),(x2,y2,z2,r2),...]
1569
+ > control_points_lateral: 二维钢束横弯控制点 [(x1,y1,r1),(x2,y2,r2),...],无横弯时不必输入
1570
+ > position_type: 定位方式,1-直线,2-轨迹线
1571
+ > point_insert:
1572
+ > 直线时为插入点坐标 [x,y,z]
1573
+ > 轨迹线时为 [插入端(1-I 2-J), 插入方向(1-ij 2-ji), 插入单元id]
1574
+ > tendon_direction: 直线钢束X方向向量,默认为x轴即 [1,0,0],轨迹线不用赋值
1575
+ > rotation_angle: 绕钢束旋转角度
1576
+ > rotate_bias: 绕钢束旋转偏心 X、Y
1577
+ > track_group: 轨迹线结构组名,直线时不用赋值
1578
+ > projection: 直线钢束是否投影
1579
+ ```Python
1580
+ # 示例代码
1581
+ from qtmodel import *
1582
+ mdb.update_tendon(
1583
+ name="BB1",
1584
+ new_name="BB2",
1585
+ tendon_2d=True,
1586
+ property_name="22-15",
1587
+ num=2,
1588
+ position_type=1,
1589
+ control_points=[(0, -1, 0), (10, -1, 0)],
1590
+ point_insert=(0, 0, 0)
1591
+ )
1592
+ mdb.update_tendon(
1593
+ name="BB1",
1594
+ tendon_2d=False,
1595
+ property_name="22-15",
1596
+ num=2,
1597
+ position_type=1,
1598
+ control_points=[(0, 0, -1, 0), (10, 0, -1, 0)],
1599
+ point_insert=(0, 0, 0)
1600
+ )
1601
+ #Returns:
1602
+ ```
1416
1603
  ### update_tendon_group
1417
1604
  更新钢束组名
1418
1605
  > 参数:
@@ -2965,7 +3152,7 @@ mdb.update_bulking_setting(do_analysis=True,mode_count=3,variable_cases=["工况
2965
3152
  # 示例代码
2966
3153
  from qtmodel import *
2967
3154
  odb.get_material_data() # 获取所有材料信息
2968
- #Returns: 包含信息为list[dict]
3155
+ #Returns: list[dict]
2969
3156
  ```
2970
3157
  ### get_thickness_data
2971
3158
  获取所有板厚信息
@@ -3020,7 +3207,7 @@ from qtmodel import *
3020
3207
  odb.get_node_data() # 获取所有节点信息
3021
3208
  odb.get_node_data(ids=1) # 获取单个节点信息
3022
3209
  odb.get_node_data(ids=[1,2]) # 获取多个节点信息
3023
- #Returns: 包含信息为list[dict] or dict
3210
+ #Returns: list[Node]
3024
3211
  ```
3025
3212
  ## 获取单元信息
3026
3213
  ### get_elements_by_point
@@ -3067,12 +3254,41 @@ odb.get_overlap_elements()
3067
3254
  ```
3068
3255
  ### get_structure_group_names
3069
3256
  获取结构组名称
3257
+ ```Python
3258
+ # 示例代码
3259
+ from qtmodel import *
3260
+ names = odb.get_structure_group_names()
3261
+ #Returns:
3262
+ ```
3263
+ ### get_structure_group
3264
+ 获取结构组具体信息
3070
3265
  > 参数:
3266
+ > group_name:结构组名称
3071
3267
  ```Python
3072
3268
  # 示例代码
3073
3269
  from qtmodel import *
3074
- odb.get_structure_group_names()
3075
- #Returns: 包含信息为list[str]
3270
+ names = odb.get_structure_group()
3271
+ #Returns:
3272
+ ```
3273
+ ### get_structure_group_element_ids
3274
+ 获取结构组单元号
3275
+ > 参数:
3276
+ > group_name:结构组名称
3277
+ ```Python
3278
+ # 示例代码
3279
+ from qtmodel import *
3280
+ names = odb.get_structure_group_element_ids("结构组1")
3281
+ #Returns:
3282
+ ```
3283
+ ### get_structure_group_node_ids
3284
+ 获取结构组节点号
3285
+ > 参数:
3286
+ > group_name:结构组名称
3287
+ ```Python
3288
+ # 示例代码
3289
+ from qtmodel import *
3290
+ names = odb.get_structure_group_node_ids("结构组1")
3291
+ #Returns:
3076
3292
  ```
3077
3293
  ### get_element_data
3078
3294
  获取单元信息
@@ -3081,8 +3297,17 @@ odb.get_structure_group_names()
3081
3297
  ```Python
3082
3298
  # 示例代码
3083
3299
  from qtmodel import *
3084
- odb.get_element_data() # 获取所有单元结果
3085
- odb.get_element_data(ids=1) # 获取指定编号单元信息
3300
+ odb.get_element_data() # 获取所有单元信息
3301
+ odb.get_element_data(ids=[1,2,3,4]) # 获取指定编号单元信息
3302
+ #Returns: 包含信息为list[Element]
3303
+ ```
3304
+ ### get_all_element_ids
3305
+ 获取所有单元节点号
3306
+ > 参数:
3307
+ ```Python
3308
+ # 示例代码
3309
+ from qtmodel import *
3310
+ odb.get_all_element_ids() # 获取所有单元信息
3086
3311
  #Returns: 包含信息为list[dict] or dict
3087
3312
  ```
3088
3313
  ### get_element_type
@@ -3113,7 +3338,7 @@ odb.get_group_elements(group_name="默认结构组")
3113
3338
  # 示例代码
3114
3339
  from qtmodel import *
3115
3340
  odb.get_element_weight(ids=1)
3116
- #Returns: dict<int,double>类型的json格式字符串
3341
+ #Returns: dict<int,float>
3117
3342
  ```
3118
3343
  ## 跨度信息
3119
3344
  ### get_span_data
@@ -3165,7 +3390,7 @@ odb.get_section_shape(1)
3165
3390
  # 示例代码
3166
3391
  from qtmodel import *
3167
3392
  odb.get_section_data(1)
3168
- #Returns: 包含信息为dict
3393
+ #Returns: dict
3169
3394
  ```
3170
3395
  ### get_section_property
3171
3396
  获取指定截面特性
@@ -3304,13 +3529,13 @@ odb.get_tendon_property_data()
3304
3529
  #Returns: 包含信息为list[dict]
3305
3530
  ```
3306
3531
  ### get_tendon_data
3307
- 获取所有钢塑和信息
3532
+ 获取所有钢束信息
3308
3533
  > 参数:
3309
3534
  ```Python
3310
3535
  # 示例代码
3311
3536
  from qtmodel import *
3312
3537
  odb.get_tendon_data()
3313
- #Returns: 包含信息为list[dict]
3538
+ #Returns: 包含信息为list[Tendon]
3314
3539
  ```
3315
3540
  ## 荷载信息
3316
3541
  ### get_load_case_names
@@ -3470,7 +3695,7 @@ odb.get_reaction(ids=1,stage_id=1)
3470
3695
  odb.get_reaction(ids=[1,2,3],stage_id=1)
3471
3696
  odb.get_reaction(ids="1to3",stage_id=1)
3472
3697
  odb.get_reaction(ids=1,stage_id=-1,case_name="工况名")
3473
- #Returns: 返回json字符串, 内部为list[dict]
3698
+ #Returns: 内部为list[dict]
3474
3699
  ```
3475
3700
  ### get_deformation
3476
3701
  获取节点变形结果,支持单个节点和节点列表
@@ -3490,7 +3715,7 @@ odb.get_deformation(ids=1,stage_id=1)
3490
3715
  odb.get_deformation(ids=[1,2,3],stage_id=1)
3491
3716
  odb.get_deformation(ids="1to3",stage_id=1)
3492
3717
  odb.get_deformation(ids=1,stage_id=-1,case_name="工况名")
3493
- #Returns: 返回json字符串, 内部为list[dict]
3718
+ #Returns: list[dict]
3494
3719
  ```
3495
3720
  ### get_element_stress
3496
3721
  获取单元应力,支持单个单元和单元列表
@@ -3507,7 +3732,7 @@ from qtmodel import *
3507
3732
  odb.get_element_stress(ids=1,stage_id=1)
3508
3733
  odb.get_element_stress(ids=[1,2,3],stage_id=1)
3509
3734
  odb.get_element_stress(ids=1,stage_id=-1,case_name="工况名")
3510
- #Returns: 返回json字符串, 内部为list[dict]
3735
+ #Returns: 内部为list[dict]
3511
3736
  ```
3512
3737
  ### get_element_force
3513
3738
  获取单元内力,支持单个单元和单元列表
@@ -3526,7 +3751,7 @@ from qtmodel import *
3526
3751
  odb.get_element_force(ids=1,stage_id=1)
3527
3752
  odb.get_element_force(ids=[1,2,3],stage_id=1)
3528
3753
  odb.get_element_force(ids=1,stage_id=-1,case_name="工况名")
3529
- #Returns: 返回json字符串, 内部为list[dict]
3754
+ #Returns: list[dict]
3530
3755
  ```
3531
3756
  ### get_self_concurrent_reaction
3532
3757
  获取自并发反力
@@ -3537,7 +3762,7 @@ odb.get_element_force(ids=1,stage_id=-1,case_name="工况名")
3537
3762
  # 示例代码
3538
3763
  from qtmodel import *
3539
3764
  odb.get_self_concurrent_reaction(node_id=1,case_name="工况1_Fx最大")
3540
- #Returns: 返回json字符串, 内部为list[dict]
3765
+ #Returns: list[dict]
3541
3766
  ```
3542
3767
  ### get_all_concurrent_reaction
3543
3768
  获取完全并发反力
@@ -3548,7 +3773,7 @@ odb.get_self_concurrent_reaction(node_id=1,case_name="工况1_Fx最大")
3548
3773
  # 示例代码
3549
3774
  from qtmodel import *
3550
3775
  odb.get_all_concurrent_reaction(node_id=1,case_name="工况1_Fx最大")
3551
- #Returns: 返回json字符串, 包含信息为list[dict]
3776
+ #Returns: list[dict]
3552
3777
  ```
3553
3778
  ### get_concurrent_force
3554
3779
  获取单元并发内力
@@ -3560,7 +3785,7 @@ odb.get_all_concurrent_reaction(node_id=1,case_name="工况1_Fx最大")
3560
3785
  from qtmodel import *
3561
3786
  odb.get_concurrent_force(ids=1,case_name="工况1_Fx最大")
3562
3787
  odb.get_concurrent_force(ids="1to19",case_name="工况1_Fx最大")
3563
- #Returns: 返回json字符串, 包含信息为list[dict]
3788
+ #Returns: list[dict]
3564
3789
  ```
3565
3790
  ### get_elastic_link_force
3566
3791
  获取弹性连接内力
@@ -3575,7 +3800,7 @@ odb.get_concurrent_force(ids="1to19",case_name="工况1_Fx最大")
3575
3800
  # 示例代码
3576
3801
  from qtmodel import *
3577
3802
  odb.get_elastic_link_force(ids=[1,2,3], result_kind=1, stage_id=1)
3578
- #Returns: 返回json字符串, 内部为list[dict]
3803
+ #Returns: list[dict]
3579
3804
  ```
3580
3805
  ### get_constrain_equation_force
3581
3806
  查询约束方程内力
@@ -3590,7 +3815,7 @@ odb.get_elastic_link_force(ids=[1,2,3], result_kind=1, stage_id=1)
3590
3815
  # 示例代码
3591
3816
  from qtmodel import *
3592
3817
  odb.get_constrain_equation_force(ids=[1,2,3], result_kind=1, stage_id=1)
3593
- #Returns: 返回json字符串, 内部为list[dict]
3818
+ #Returns: list[dict]
3594
3819
  ```
3595
3820
  ### get_cable_element_length
3596
3821
  查询无应力索长
@@ -3602,7 +3827,7 @@ odb.get_constrain_equation_force(ids=[1,2,3], result_kind=1, stage_id=1)
3602
3827
  # 示例代码
3603
3828
  from qtmodel import *
3604
3829
  odb.get_cable_element_length(ids=[1,2,3], stage_id=1)
3605
- #Returns: 返回json字符串, 内部为list[dict]
3830
+ #Returns: list[dict]
3606
3831
  ```
3607
3832
  ### get_period_and_vibration_results
3608
3833
  获取自振分析角频率和振型参与质量等结果
@@ -3611,7 +3836,7 @@ odb.get_cable_element_length(ids=[1,2,3], stage_id=1)
3611
3836
  # 示例代码
3612
3837
  from qtmodel import *
3613
3838
  odb.get_period_and_vibration_results()
3614
- #Returns: 返回json字符串,list[dict]包含各模态周期和频率的列表
3839
+ #Returns: list[dict]
3615
3840
  ```
3616
3841
  ### get_vibration_modal_results
3617
3842
  获取自振分析振型向量
@@ -3621,7 +3846,7 @@ odb.get_period_and_vibration_results()
3621
3846
  # 示例代码
3622
3847
  from qtmodel import *
3623
3848
  odb.get_vibration_modal_results(mode=1)
3624
- #Returns: 返回json字符串,list[dict]包含该模态下节点位移向量列表
3849
+ #Returns: list[dict]
3625
3850
  ```
3626
3851
  ### get_buckling_eigenvalue
3627
3852
  获取屈曲分析特征值结果
@@ -3630,7 +3855,7 @@ odb.get_vibration_modal_results(mode=1)
3630
3855
  # 示例代码
3631
3856
  from qtmodel import *
3632
3857
  odb.get_buckling_eigenvalue()
3633
- #Returns: 返回json字符串, list[dict]包含各模态下特征值
3858
+ #Returns: list[dict]
3634
3859
  ```
3635
3860
  ### get_buckling_modal_results
3636
3861
  获取屈曲模态向量
@@ -3640,7 +3865,7 @@ odb.get_buckling_eigenvalue()
3640
3865
  # 示例代码
3641
3866
  from qtmodel import *
3642
3867
  odb.get_buckling_modal_results(mode=1)
3643
- #Returns: 返回json字符串,list[dict]包含该模态下屈曲模态向量列表
3868
+ #Returns: list[dict]
3644
3869
  ```
3645
3870
  ### get_tendon_loss_results
3646
3871
  获取预应力钢束损失
@@ -3651,7 +3876,7 @@ odb.get_buckling_modal_results(mode=1)
3651
3876
  # 示例代码
3652
3877
  from qtmodel import *
3653
3878
  odb.get_tendon_loss_results(name="T1", stage_id=2)
3654
- #Returns:
3879
+ #Returns: list[dict]
3655
3880
  ```
3656
3881
  ### get_tendon_position_result
3657
3882
  获取预应力钢束坐标
@@ -3661,7 +3886,7 @@ odb.get_tendon_loss_results(name="T1", stage_id=2)
3661
3886
  # 示例代码
3662
3887
  from qtmodel import *
3663
3888
  odb.get_tendon_position_result(name="T1")
3664
- #Returns:
3889
+ #Returns: list[dict]
3665
3890
  ```
3666
3891
  ### get_tendon_length_result
3667
3892
  获取预应力伸长量
@@ -3670,7 +3895,7 @@ odb.get_tendon_position_result(name="T1")
3670
3895
  # 示例代码
3671
3896
  from qtmodel import *
3672
3897
  odb.get_tendon_length_result()
3673
- #Returns:
3898
+ #Returns: list[dict]
3674
3899
  ```
3675
3900
  ## 绘制模型结果
3676
3901
  ### plot_reaction_result
@@ -4108,144 +4333,485 @@ odb.get_current_png()
4108
4333
  ### add_check_load_combine
4109
4334
  添加混凝土检算荷载组合
4110
4335
  > 参数:
4111
- > index: 荷载组合索引,-1表示在最后添加
4112
- > name: 荷载组合名称
4113
- > combine_type: 0-相加并判别,1-包络
4114
- > standard: 1-公规2015 2-铁规2017 3-铁路极限状态 4-英规BS5400 5-美规
4115
- > kind: 类型参考界面
4116
- > 公规2015|1-基本 2-偶然 3-标准 4-频遇 5-准永久 6-疲劳组合
4117
- > 铁路TB1002| 1-主力组合 2-主加附组合 3-主加特殊组合
4118
- > 铁路极限状态法| 1~11-组合I~XI 12-标准值组合 13-主力组合 14-主加附组合
4119
- > 英规| 1-承载能力极限状态 2-正常使用极限状态
4120
- > 美规| 1-强度组合 2-极端事件 3-使用组合I 4-使用组合II 5-使用组合III 6-使用组合IV 7-疲劳组合 8-永久作用组合
4121
- > combine_info: 荷载组合信息,格式为[(荷载工况,不利系数,有利系数)]
4336
+ > name: 名称
4337
+ > combine_type: 组合类型
4338
+ > -JTG-D60: 1-基本 2-偶然 3-标准 4-频遇 5-准永久 6-疲劳 7-临时
4339
+ > -TB-2017: 1-主力 2-主加附 3-主加特殊 4-临时
4340
+ > standard: 规范类型,1-JTG D60-2015,2-TB 2017
4341
+ > combine_method: 组合方式 1-相加并判别 2-包络
4342
+ > combine_info: 荷载组合明细,格式为 [(荷载工况, 不利系数, 有利系数)]
4122
4343
  ```Python
4123
4344
  # 示例代码
4124
4345
  from qtmodel import *
4125
- cdb.add_check_load_combine(name="P1+P2",standard=1,kind=1,combine_info=[("P1 (ST)",1,1),("P2 (ST)",1,1)])
4126
- #Returns: 无
4346
+ cdb.add_check_load_combine(name="P1+P2", combine_info=[("P1 (ST)", 1, 1)])
4347
+ #Returns: QtServer.send_dict 的返回值
4127
4348
  ```
4128
4349
  ### remove_check_load_combine
4129
4350
  删除混凝土检算荷载组合
4130
4351
  > 参数:
4131
- > index: 荷载组合索引,-1表示删除所有
4132
- > name: 荷载组合名称
4352
+ > name: 名称
4133
4353
  ```Python
4134
4354
  # 示例代码
4135
4355
  from qtmodel import *
4136
- cdb.remove_check_load_combine(index=1)
4137
4356
  cdb.remove_check_load_combine(name="P1+P2")
4138
- #Returns: 无
4357
+ #Returns: QtServer.send_dict 的返回值
4139
4358
  ```
4140
4359
  ### add_concrete_check_case
4141
4360
  添加混凝土检算工况
4142
4361
  > 参数:
4143
- > name: 检算名称
4144
- > standard: 混凝土标准,1为JTG3362-2018,2为TB10092-2017
4145
- > structure_type: 结构类型,1为钢筋混凝土,2为B构件,3为A类构件,4为全预应力构件
4146
- > group_name: 结构组名称
4362
+ > name: 名称。
4363
+ > standard: 规范类型。
4364
+ > 1 - JTG 3362-2018
4365
+ > 2 - TB 10092-2017
4366
+ > structure_type: 结构类型,按后端结构类型枚举取值。
4367
+ > group_name: 结构组名称或结构组名称列表。
4368
+ > 支持:
4369
+ > "默认结构组"
4370
+ > ["默认结构组", "结构组1"]
4371
+ > component_force_type: 构件受力类型。
4372
+ > 0 - 自动判别受力构件
4373
+ > 1 - 轴向受压(拉)构件,主要考虑 Fx
4374
+ > 2 - 竖向平面受弯构件,主要考虑 Fz、My
4375
+ > 3 - 横向平面受弯构件,主要考虑 Fy、Mz
4376
+ > 4 - 双向空间受弯构件,主要考虑 Fy、Fz、My、Mz
4377
+ > 5 - 竖向平面压(拉)弯构件,主要考虑 Fx、Fz、My
4378
+ > 6 - 横向平面压(拉)弯构件,主要考虑 Fx、Fy、Mz
4379
+ > 7 - 双向空间压(拉)弯构件,主要考虑 Fx、Fy、Fz、My、Mz
4380
+ > 8 - 自定义,使用 user_force_type 指定参与检算的受力分量
4381
+ > user_force_type: 自定义受力分量列表,仅当 component_force_type=8 时使用。
4382
+ > 格式为 [Fx, Fy, Fz, Mx, My, Mz]。
4383
+ > 例如:
4384
+ > [True, False, True, False, True, False]
4385
+ > 表示参与 Fx、Fz、My。
4386
+ > cal_setting_type: 计算设置类型,按后端计算设置枚举取值。
4387
+ > 0 - 默认计算设置
4388
+ ```Python
4389
+ # 示例代码
4390
+ from qtmodel import *
4391
+ cdb.add_concrete_check_case(
4392
+ name="混凝土检算",
4393
+ standard=1,
4394
+ structure_type=1,
4395
+ group_name="默认结构组",
4396
+ component_force_type=0
4397
+ )
4398
+ cdb.add_concrete_check_case(
4399
+ name="自定义受力检算",
4400
+ standard=1,
4401
+ structure_type=1,
4402
+ group_name=["默认结构组"],
4403
+ component_force_type=8,
4404
+ user_force_type=[True, False, True, False, True, False]
4405
+ )
4406
+ #Returns:
4407
+ ```
4408
+ ### get_concrete_check_case
4409
+ 获取当前混凝土检算工况信息。
4410
+ > 参数:
4411
+ > name: 工况名称。为空时返回当前模型中编号最大的混凝土检算工况。
4147
4412
  ```Python
4148
4413
  # 示例代码
4149
4414
  from qtmodel import *
4150
- cdb.add_concrete_check_case(name="混凝土检算",standard=1,structure_type=1,group_name="默认结构组")
4151
- #Returns: 无
4415
+ cdb.get_concrete_check_case()
4416
+ cdb.get_concrete_check_case(name="混凝土检算")
4417
+ #Returns:
4152
4418
  ```
4153
4419
  ### remove_concrete_check_case
4154
4420
  删除混凝土检算工况
4155
4421
  > 参数:
4156
- > name: 检算名称
4422
+ > name: 名称
4157
4423
  ```Python
4158
4424
  # 示例代码
4159
4425
  from qtmodel import *
4160
4426
  cdb.remove_concrete_check_case(name="混凝土检算")
4161
- #Returns: 无
4427
+ #Returns: QtServer.send_dict 的返回值
4428
+ ```
4429
+ ### import_concrete_check_case
4430
+ 导入并同步混凝土检算工况数据。
4431
+ > 参数:
4432
+ > case_name: 工况名,必须已存在于 ProjectManager 的混凝土检算工况列表中。
4433
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4434
+ ```Python
4435
+ # 示例代码
4436
+ from qtmodel import *
4437
+ cdb.import_concrete_check_case(case_name="混凝土检算")
4438
+ #Returns:
4162
4439
  ```
4163
4440
  ### solve_concrete_check
4164
- 混凝土检算分析
4441
+ 执行混凝土检算分析。
4442
+ > 参数:
4443
+ > show_view: 是否显示混凝土检算分析进度窗口。
4444
+ > True - 显示分析进度窗口,并通过窗口执行/展示检算过程。
4445
+ > False - 不显示分析进度窗口,直接执行混凝土检算分析。
4446
+ > modal: 是否以模态窗口方式显示,仅当 show_view=True 时有效。
4447
+ > True - 使用 ShowDialog 显示窗口,窗口关闭后才返回。
4448
+ > False - 使用 Show 显示窗口,窗口显示后立即返回。
4449
+ > auto_close: 计算完成后是否自动关闭分析窗口,仅当 show_view=True 时有效(默认自动关闭,手动关闭不及时可能影响程序运行)
4450
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4451
+ > wait: 是否在 Python 侧轮询等待后台检算完成。False 时只启动任务并立即返回启动状态。
4452
+ > poll_interval: wait=True 时的轮询间隔,单位为秒。
4453
+ > max_wait: wait=True 时的最大等待时间,单位为秒;None 表示不限制。
4454
+ > status_read_timeout: 查询检算状态接口的超时时间,单位为秒。
4455
+ > sync: 是否要求后端同步执行旧逻辑。长模型不推荐使用,可能再次触发 HTTP 502/超时。
4456
+ ```Python
4457
+ # 示例代码
4458
+ from qtmodel import *
4459
+ # 启动后台混凝土检算,不显示分析窗口
4460
+ cdb.solve_concrete_check()
4461
+ # 启动后轮询等待完成
4462
+ cdb.solve_concrete_check(wait=True, max_wait=1800)
4463
+ # 显示分析窗口并执行混凝土检算
4464
+ cdb.solve_concrete_check(show_view=True)
4465
+ # 显示模态分析窗口,计算完成自动关闭,等待 1800 秒
4466
+ cdb.solve_concrete_check(
4467
+ show_view=True,
4468
+ modal=True,
4469
+ auto_close=True,
4470
+ read_timeout=1800
4471
+ )
4472
+ # 启动后台混凝土检算,不显示分析窗口
4473
+ cdb.solve_concrete_check()
4474
+ # 启动后轮询等待完成
4475
+ cdb.solve_concrete_check(wait=True, max_wait=1800)
4476
+ # 显示分析窗口并执行混凝土检算
4477
+ cdb.solve_concrete_check(show_view=True)
4478
+ # 显示模态分析窗口,计算完成自动关闭,等待 1800 秒
4479
+ cdb.solve_concrete_check(
4480
+ #Returns:
4481
+ ```
4482
+ ### get_concrete_check_solve_status
4483
+ 查询混凝土检算后台任务状态。
4165
4484
  > 参数:
4166
- > name: 检算名称
4485
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4167
4486
  ```Python
4168
4487
  # 示例代码
4169
4488
  from qtmodel import *
4170
- cdb.solve_concrete_check(name="混凝土检算")
4171
- #Returns: 无
4489
+ cdb.get_concrete_check_solve_status()
4490
+ #Returns:
4172
4491
  ```
4173
- ### add_check_material
4174
- 添加混凝土检算材料,需要修改检算材料信息才添加检算材料
4492
+ ### get_solve_concrete_check_status
4493
+ 查询混凝土检算后台任务状态,保留与后端命令名一致的别名。
4175
4494
  > 参数:
4176
- > name: 材料名称
4177
- > properties: 属性值列表,依据材料规范填写
4178
- > JTG 3362-2018 公路规范-[弹性模量,fcuk,fck,ftk,ftd]
4179
- > JTG D62-2004 公路规范-[弹性模量,fcuk,fck,ftk,ftd]
4180
- > JTJ 024-1985 公路规范-[弹性模量,fcuk,fck,ftk,ftd]
4181
- > TB 1002-2017 铁路规范-[弹性模量,fcuk,fc,ftc]
4182
- > ASTM 美国材料试验协会-[弹性模量,fc',fr]
4183
- > AASHTO-[弹性模量,fc',fr]
4184
- > BS 5400-1990-[弹性模量,fcu]
4185
- > 铁路极限状态法-[弹性模量,fcuk,fck,fctk]
4186
- > model: 应力应变曲线类型,1-损伤演化模型 2-修正Kent-Park模型 3-约束混凝土 4-无约束混凝土 5-钢管混凝土
4187
- > parameter_data: 检算材料应力应变特性参数
4188
- > curve_data: 用户自定义模型数据,格式为[(应变,应力)]
4189
- > user_material: 用户自定义材料类型 1-混凝土 2-钢材 3-预应力 4-钢筋
4190
- > user_standard: 参考Ui对应规范
4495
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4191
4496
  ```Python
4192
4497
  # 示例代码
4193
4498
  from qtmodel import *
4194
- cdb.add_check_material(name="混凝土",properties=[3.45e10,5e7,3.24e7,2.65e6,1.83e6],model=1)
4195
- #Returns: 无
4499
+ cdb.get_solve_concrete_check_status()
4500
+ #Returns:
4196
4501
  ```
4197
- ### add_parameter_reinforcement
4198
- 添加参数化配筋
4502
+ ### wait_concrete_check_solve
4503
+ 轮询等待混凝土检算后台任务完成。
4199
4504
  > 参数:
4200
- > sec_id: 截面ID
4201
- > position: 变截面位置,0为截面I端,1为截面J端
4202
- > has_outer: 是否有外部钢筋
4203
- > has_inner: 是否有内部钢筋
4204
- > outer_type: 0-按间距分布 1-按数量分布
4205
- > inner_type: 0-按间距分布 1-按数量分布
4206
- > outer_info: 外部钢筋信息,格式为[[直径,材料号,层边距,钢筋间距/数量,每束根数],...]
4207
- > inner_info: 内部钢筋信息,格式为[[直径,材料号,层边距,钢筋间距/数量,每束根数],...]
4505
+ > poll_interval: 状态查询间隔,单位为秒。
4506
+ > max_wait: 最大等待时间,单位为秒;None 表示不限制。
4507
+ > read_timeout: 单次状态查询的超时时间,单位为秒。
4208
4508
  ```Python
4209
4509
  # 示例代码
4210
4510
  from qtmodel import *
4211
- cdb.add_parameter_reinforcement(sec_id=1,has_outer=True,has_inner=True,outer_type=0,inner_type=0,
4212
- outer_info=[[20,1,50,150,1]],inner_info=[[20,1,50,150,1]])
4213
- #Returns: 无
4511
+ cdb.wait_concrete_check_solve(poll_interval=5, max_wait=1800)
4512
+ #Returns:
4214
4513
  ```
4215
- ### add_part_parameter_reinforcement
4216
- 添加局部参数化配筋
4514
+ ### update_check_material
4515
+ 根据材料详情更新混凝土检算材料。只有需要修改的材料才入CheckMaterialData,否则直接引用桥通前处理数据
4516
+ > 参数:
4517
+ > name: 材料名称。
4518
+ > properties: 一般材料特性,依据材料规范填写,不可为空。
4519
+ > JTG 3362-2018 公路规范: [弹性模量, fcuk, fck, ftk, ftd]
4520
+ > JTG D62-2004 公路规范: [弹性模量, fcuk, fck, ftk, ftd]
4521
+ > TB 1002-2017 铁路规范: [弹性模量, fcuk, fc, ftc]
4522
+ > ASTM 美国材料试验协会: [弹性模量, fc', fr]
4523
+ > AASHTO: [弹性模量, fc', fr]
4524
+ > BS 5400-1990: [弹性模量, fcu]
4525
+ > 铁路极限状态法: [弹性模量, fcuk, fck, fctk]
4526
+ > model: 应力应变曲线模型类型,详细参考parameter_data注释,混凝土材料中1-损伤演化模型...
4527
+ > parameter_data: 自定义模式参数。
4528
+ > 混凝土材料:
4529
+ > 1-损伤演化模型:
4530
+ > [fcr, εcr, εcu, αc, 承载力计算极限强度, 极限应变]
4531
+ > 2-修正 KentPark 模型:
4532
+ > [fcr, ε0, ε1, εcu, ρv, σyh, 承载力计算极限强度]
4533
+ > 3-有约束混凝土:
4534
+ > [fc, fcc, ρs, fkh, 承载力计算极限强度, 极限应变]
4535
+ > 4-无约束混凝土:
4536
+ > [fc, εcc, εuu, 承载力计算极限强度, 极限应变]
4537
+ > 5-钢管混凝土:
4538
+ > [fc, ε0, εcu, 承载力计算极限强度, 极限应变]
4539
+ > 6-美规:
4540
+ > [fc, ε0, εcu, 承载力计算极限强度, 极限应变]
4541
+ > 7-英规:
4542
+ > [fc, ε0, εcu, 承载力计算极限强度, 极限应变]
4543
+ > 8-自定义:
4544
+ > [抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4545
+ > 钢材:
4546
+ > 1-中规:
4547
+ > [fs, fsu, ε1, εsu, 抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4548
+ > 预应力:
4549
+ > 1-中规:
4550
+ > [fp, fpu, ε1, εpu, 抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4551
+ > 2-英规:
4552
+ > [fp, fpu, εpu, 抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4553
+ > 3-美规:
4554
+ > [fpu, εpu, 正常使用极限状态分项系数, 承载能力极限状态分项系数]
4555
+ > 钢筋:
4556
+ > 1-中规:
4557
+ > [fs, fsu, ε1, εsu, 抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4558
+ > 2-英规:
4559
+ > [fs, fsu, εsu, 抗拉强度与抗压强度比, 承载力计算极限强度, 极限应变]
4560
+ > 3-美规:
4561
+ > [fy, fsu, 正常使用极限状态分项系数, 承载能力极限状态分项系数]
4562
+ > curve_data: 自定义模式数据应力应变曲线,格式为 [(应变, 应力)]。
4563
+ > user_material: 自定义材料时的材料类型,1-混凝土,2-钢材,3-预应力,4-钢筋。
4564
+ > user_standard: 自定义材料时的规范类型,取值按对应材料类型的下拉顺序填写。
4565
+ > 当 user_material=1(混凝土):
4566
+ > 1-JTG 3362-2018(公路)
4567
+ > 2-JTG D62-2004(公路)
4568
+ > 3-JTJ 024-1985(公路)
4569
+ > 4-TB 10002-2017(铁路)
4570
+ > 5-ASTM 美国材料试验协会
4571
+ > 6-AASHTO 17/20/24
4572
+ > 7-BS 5400-1990
4573
+ > 8-铁路极限状态法25规范
4574
+ > 当 user_material=2(钢材):
4575
+ > 1-JTG D64-2015(公路)
4576
+ > 2-TB 10091-2017(铁路)
4577
+ > 3-ASTM 美国材料试验协会
4578
+ > 4-GB 50017-2017(钢构)
4579
+ > 5-铁路极限状态法25规范
4580
+ > 当 user_material=3(预应力):
4581
+ > 1-JTG 3362-2018(公路)
4582
+ > 2-JTG D62-2004(公路)
4583
+ > 3-JTJ 024-1985(公路)
4584
+ > 4-TB 10002-2017(铁路)
4585
+ > 5-国铁集团企业标准2022
4586
+ > 6-ASTM 美国材料试验协会
4587
+ > 7-铁路极限状态法25规范
4588
+ > 8-BS5896-2012
4589
+ > 当 user_material=4(钢筋):
4590
+ > 1-JTG 3362-2018(公路)
4591
+ > 2-JTG D62-2004(公路)
4592
+ > 3-JTJ 024-1985(公路)
4593
+ > 4-TB 10002-2017(铁路)
4594
+ > 5-铁路极限状态法25规范
4595
+ > 6-ASTM 美国材料试验协会
4596
+ > 7-BS 5400-1990
4597
+ ```Python
4598
+ # 示例代码
4599
+ from qtmodel import *
4600
+ cdb.update_check_material(name="混凝土", properties=[3.45e10, 5e7, 3.24e7, 2.65e6, 1.83e6], model=1)
4601
+ #Returns:
4602
+ ```
4603
+ ### open_concrete_check_case
4604
+ 打开已有的混凝土检算工况。
4217
4605
  > 参数:
4218
- > sec_id: 截面ID
4219
- > position: 截面位置,0为截面I端,1为截面J端
4220
- > data_info: 钢筋数据,列表中每项参数为10个,格式为[[基准线号,分布方式,布置方向,直径,钢筋材料号,层边距,间距/数量,每束根数,首点偏移,尾点偏移],...]
4221
- > 分布方式| 0-按间距分布 1-按数量分布
4222
- > 布置方向| 0-向内布置 1-向外布置
4606
+ > name: 工况名称。当 file_path 为空时,后端会按 <默认检算数据目录_name.csa> 的方式解析文件路径。
4607
+ > file_path: 工况文件的完整路径。当提供 file_path 时,优先使用该路径,
4608
+ > 不再通过 name 自动拼接默认路径。
4609
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4223
4610
  ```Python
4224
4611
  # 示例代码
4225
4612
  from qtmodel import *
4226
- cdb.add_part_parameter_reinforcement(sec_id=1,position=0,data_info=[[11,0,0,20,4,50,150,1,0,0]])
4227
- #Returns: 无
4613
+ cdb.open_concrete_check_case(name="ConcreteCaseUnit")
4614
+ cdb.open_concrete_check_case(file_path="D:/Temp/ConcreteCaseUnit.csa")
4615
+ #Returns:
4228
4616
  ```
4229
- ### add_reinforcement_by_point
4230
- 添加自定义截面纵向钢筋数据
4617
+ ### open_concrete_check_case_by_path
4618
+ 打开指定路径的CSAN检算工况,注意打开混凝土检算工况可能不在当前桥通工况列表
4231
4619
  > 参数:
4232
- > sec_id: 截面ID
4233
- > position: 变截面位置,0为截面I端,1为截面J端
4234
- > bar_data: 钢筋数据列表,格式为[(x,y,直径,钢筋材料号)]
4620
+ > file_path: 工况文件的完整路径。当提供 file_path 时,优先使用该路径,
4621
+ > 不再通过 name 自动拼接默认路径。
4622
+ > read_timeout: 等待 Qt 后端响应的超时时间,单位为秒。
4235
4623
  ```Python
4236
4624
  # 示例代码
4237
4625
  from qtmodel import *
4238
- cdb.add_reinforcement_by_point(sec_id=1,position=0,bar_data=[(0.1,0.5,20,1),(0.3,0.6,22,1)])
4239
- #Returns: 无
4626
+ cdb.open_concrete_check_case(file_path="D:/Temp/ConcreteCaseUnit.csa")
4627
+ #Returns:
4240
4628
  ```
4241
- ### get_reinforcement_data
4242
- 获取全部纵向钢筋坐标信息
4629
+ ### save_check_case
4630
+ 保存当前检算工况
4631
+ > 参数:
4632
+ ```Python
4633
+ # 示例代码
4634
+ from qtmodel import *
4635
+ cdb.save_check_case()
4636
+ #Returns: QtServer.send_dict 的返回值
4637
+ ```
4638
+ ### save_as_check_case
4639
+ 另存当前检算工况
4640
+ > 参数:
4641
+ > file_path: 检算工况文件路径
4642
+ ```Python
4643
+ # 示例代码
4644
+ from qtmodel import *
4645
+ cdb.save_as_check_case(file_path="D:/Temp/case.cck")
4646
+ #Returns: QtServer.send_dict 的返回值
4647
+ ```
4648
+ ### update_check_case_basic_info
4649
+ 根据检算工况基础信息更新当前 CSAN2 BasicInfo。
4650
+ > 参数:
4651
+ > specification_type: 检算规范类型。
4652
+ > 1-《公路钢筋混凝土及预应力混凝土桥涵设计规范》(JTG 3362-2018)
4653
+ > 2-《铁路桥涵混凝土结构设计规范》(TB 10092-2017 J 462-2017)
4654
+ > 3-《公路钢混组合桥梁设计与施工规范》(JTG/T D64-01-2015)
4655
+ > 4-BS 5400-4:1990
4656
+ > 5-《铁路桥涵设计规范(极限状态法)》
4657
+ > 6-AASHTO LRFD Bridge Design Specifications, 9th Edition, 2020
4658
+ > 7-《公路桥梁抗震设计规范》(JTG/T 2231-01-2020)
4659
+ > 8-《公路桥梁加固设计规范》(JTG/T 5431-2025)
4660
+ > design_safety_level: 设计安全等级。非美规且 is_user_defined_gama0=False 时,
4661
+ > 计算转换按等级取结构重要性系数。
4662
+ > 1-一级,gama0=1.1
4663
+ > 2-二级,gama0=1.0
4664
+ > 3-三级,gama0=0.9
4665
+ > is_user_defined_gama0: 是否自定义结构重要性系数。
4666
+ > True-使用 gama0;False-非美规按 design_safety_level 自动取值。
4667
+ > AASHTO_2020 不使用该字段,改用 load_modifier_factor_type。
4668
+ > gama0: 自定义结构重要性系数,必须大于 0。
4669
+ > production_process: 制作工艺类型。
4670
+ > 1-预制构件
4671
+ > 2-现场浇筑
4672
+ > component_type: 构件类型。
4673
+ > 1-钢筋混凝土
4674
+ > 2-B类构件
4675
+ > 3-A类构件
4676
+ > 4-全预应力构件
4677
+ > strengthening_design_method_type: 加固设计方法类型,主要用于 specification_type=8。
4678
+ > 1-增大截面加固
4679
+ > 2-粘贴钢板加固
4680
+ > 3-粘贴纤维复合材料加固
4681
+ > 4-增设体外预应力加固,C# 枚举存在但当前基础信息界面未启用,
4682
+ > 在 JTG/T 5431-2025 校验中会报错。
4683
+ > shell_or_beam_type: 板或梁结构类型。
4684
+ > 1-板式结构
4685
+ > 2-梁式结构
4686
+ > structure_type: 结构类型。
4687
+ > 1-桥跨结构及顶帽
4688
+ > 2-其他结构
4689
+ > steel_type: 钢材牌号,按名称匹配,支持 Q235、Q345、Q370、Q390、Q420、Q460、Q500。
4690
+ > steel_plate_thickness: 钢材板厚,单位 mm。C# 接口按 int 接收,且必须大于 0;
4691
+ > 主要用于 JTG/T D64-01-2015 钢混组合桥梁规范。
4692
+ > load_modifier_factor_type: 荷载调整系数 η,仅 AASHTO_2020 时参与前处理。
4693
+ > 1-0.95
4694
+ > 2-1.00
4695
+ > 3-1.05
4696
+ > 4-1.10
4697
+ > is_normal_section_bearing: 是否计算正截面承载力。
4698
+ > is_oblique_section_shear_bearing: 是否计算斜截面抗剪承载力。
4699
+ > is_normal_section_stress: 是否计算正截面应力。
4700
+ > is_shear_and_principal_stress: 是否计算剪应力与主应力。
4701
+ > is_crack_width: 是否计算裂缝宽度。
4702
+ > is_normal_section_anti_crack: 是否计算正截面抗裂。
4703
+ > is_oblique_section_anti_crack: 是否计算斜截面抗裂。
4704
+ > is_prestress_radio: 是否计算预应力度。字段名沿用后端 radio 拼写。
4705
+ > is_moment_curvature_curve: 是否计算弯矩曲率曲线分析。
4706
+ > is_pm_bearing_curve: 是否计算 PM 承载力曲线分析。
4707
+ > is_my_mz_bearing_curve: 是否计算 MyMz 承载力曲线分析。
4708
+ > is_cal_fatigue: 是否计算应力幅。当前 C# API 校验未将该项加入任何规范允许列表,
4709
+ > 传 True 会触发“规范计算项目选择错误”。
4710
+ > is_bending_capacity: 是否计算弯曲能力。
4711
+ > is_plastic_hinge_shear_capacity: 是否计算塑性铰斜截面抗剪承载力。
4712
+ > is_interface_shear_bearing: 是否计算结合面抗剪承载力。
4713
+ > 公共规则: 至少一个计算项目为 True,且所有 True 项必须在当前组合允许范围内。
4714
+ > JTG 3362-2018:
4715
+ > 通用: 正截面承载力、斜截面抗剪承载力、正截面应力、剪应力与主应力、
4716
+ > 弯矩曲率曲线、PM 承载力曲线、MyMz 承载力曲线。
4717
+ > 钢筋混凝土可额外选裂缝宽度;B类构件可额外选正截面抗裂、斜截面抗裂、
4718
+ > 裂缝宽度;A类构件和全预应力构件可额外选正截面抗裂、斜截面抗裂。
4719
+ > TB 10092-2017:
4720
+ > 通用同 JTG 3362-2018。
4721
+ > 钢筋混凝土可额外选裂缝宽度;B类构件可额外选裂缝宽度、预应力度;
4722
+ > A类构件可额外选预应力度;全预应力构件可额外选正截面抗裂、预应力度。
4723
+ > JTG/T D64-01-2015:
4724
+ > 通用: 正截面承载力、正截面应力、弯矩曲率曲线、PM 承载力曲线、
4725
+ > MyMz 承载力曲线。
4726
+ > 钢筋混凝土和 B类构件可额外选裂缝宽度。
4727
+ > BS 5400-4:1990:
4728
+ > 通用: 正截面承载力、斜截面抗剪承载力、正截面应力。
4729
+ > 钢筋混凝土和 B类构件可额外选裂缝宽度。
4730
+ > 铁路极限状态法:
4731
+ > 通用: 正截面承载力、斜截面抗剪承载力、正截面应力、剪应力与主应力。
4732
+ > 钢筋混凝土和 B类构件可额外选裂缝宽度;A类构件可额外选预应力度;
4733
+ > 全预应力构件可额外选正截面抗裂、预应力度。
4734
+ > AASHTO_2020:
4735
+ > 通用: 正截面承载力、斜截面抗剪承载力、正截面应力。
4736
+ > 钢筋混凝土可额外选裂缝宽度;B类构件可额外选裂缝宽度、剪应力与主应力;
4737
+ > A类构件和全预应力构件可额外选剪应力与主应力。
4738
+ > JTG/T 2231-01-2020:
4739
+ > 可选正截面承载力、斜截面抗剪承载力、弯曲能力、塑性铰斜截面抗剪承载力、
4740
+ > 弯矩曲率曲线、PM 承载力曲线、MyMz 承载力曲线。
4741
+ > JTG/T 5431-2025:
4742
+ > 通用: 正截面承载力、斜截面抗剪承载力。
4743
+ > 增大截面加固时可额外选结合面抗剪承载力;其中钢筋混凝土可选裂缝宽度,
4744
+ > B类构件可选正截面抗裂、斜截面抗裂、裂缝宽度,A类构件和全预应力构件
4745
+ > 可选正截面抗裂、斜截面抗裂。
4746
+ > 粘贴钢板加固或粘贴纤维复合材料加固时,钢筋混凝土和 B类构件可额外选裂缝宽度。
4747
+ ```Python
4748
+ # 示例代码
4749
+ from qtmodel import *
4750
+ cdb.update_check_case_basic_info(specification_type=1, design_safety_level=1)
4751
+ cdb.update_check_case_basic_info(
4752
+ specification_type=8,
4753
+ component_type=2,
4754
+ strengthening_design_method_type=1,
4755
+ is_normal_section_bearing=True,
4756
+ is_crack_width=True,
4757
+ is_interface_shear_bearing=True
4758
+ )
4759
+ #Returns: QtServer.send_dict 的返回值
4760
+ ```
4761
+ ### get_check_case_basic_info
4762
+ 获取检算工况基本信息
4763
+ > 参数:
4764
+ ```Python
4765
+ # 示例代码
4766
+ from qtmodel import *
4767
+ cdb.get_check_case_basic_info()
4768
+ #Returns: QtServer.send_dict 的返回值
4769
+ ```
4770
+ ### get_check_case_material_info
4771
+ 获取指定检算材料信息
4772
+ > 参数:
4773
+ > material_id: 材料编号
4774
+ ```Python
4775
+ # 示例代码
4776
+ from qtmodel import *
4777
+ cdb.get_check_case_material_info(material_id=1)
4778
+ #Returns: QtServer.send_dict 的返回值
4779
+ ```
4780
+ ### get_check_case_material_infos
4781
+ 获取全部检算材料信息
4243
4782
  > 参数:
4244
4783
  ```Python
4245
4784
  # 示例代码
4246
4785
  from qtmodel import *
4247
- cdb.get_reinforcement_data()
4248
- #Returns: list[dict]类型字符串
4786
+ cdb.get_check_case_material_infos()
4787
+ #Returns: QtServer.send_dict 的返回值
4788
+ ```
4789
+ ### get_check_material_data
4790
+ 获取全部检算材料信息
4791
+ > 参数:
4792
+ ```Python
4793
+ # 示例代码
4794
+ from qtmodel import *
4795
+ cdb.get_check_material_data()
4796
+ #Returns: QtServer.send_dict 的返回值
4797
+ ```
4798
+ ### get_check_case_vertical_prestress_info
4799
+ 获取检算工况竖向预应力信息
4800
+ > 参数:
4801
+ ```Python
4802
+ # 示例代码
4803
+ from qtmodel import *
4804
+ cdb.get_check_case_vertical_prestress_info()
4805
+ #Returns: QtServer.send_dict 的返回值
4806
+ ```
4807
+ ### get_check_case_stirrup_infos
4808
+ 获取检算工况箍筋信息
4809
+ > 参数:
4810
+ ```Python
4811
+ # 示例代码
4812
+ from qtmodel import *
4813
+ cdb.get_check_case_stirrup_infos()
4814
+ #Returns: QtServer.send_dict 的返回值
4249
4815
  ```
4250
4816
  ### get_stirrup_data
4251
4817
  获取全部箍筋信息
@@ -4254,74 +4820,716 @@ cdb.get_reinforcement_data()
4254
4820
  # 示例代码
4255
4821
  from qtmodel import *
4256
4822
  cdb.get_stirrup_data()
4257
- #Returns: list[dict]类型字符串
4823
+ #Returns: QtServer.send_dict 的返回值
4258
4824
  ```
4259
- ### get_check_material_data
4260
- 获取全部检算材料信息
4825
+ ### get_check_case_section_loop
4826
+ 获取检算工况截面线圈数据
4261
4827
  > 参数:
4262
4828
  ```Python
4263
4829
  # 示例代码
4264
4830
  from qtmodel import *
4265
- cdb.get_check_material_data()
4266
- #Returns: list[dict]类型字符串
4831
+ cdb.get_check_case_section_loop()
4832
+ #Returns: QtServer.send_dict 的返回值
4267
4833
  ```
4268
- ### add_steel_hoop
4269
- 添加箍筋数据
4834
+ ### get_check_case_reinforcement_data
4835
+ 获取检算工况普通钢筋数据
4270
4836
  > 参数:
4271
- > index: 箍筋编号
4272
- > name: 箍筋名称
4273
- > hoop_type: 箍筋类型 0-普通箍筋 1-螺旋箍筋
4274
- > material_id: 箍筋材料号
4275
- > nums: 箍筋肢数或环数
4276
- > diameter: 箍筋直径
4277
- > gap: 箍筋间距
4278
- > core_diameter: 箍筋核心直径
4279
4837
  ```Python
4280
4838
  # 示例代码
4281
4839
  from qtmodel import *
4282
- cdb.add_steel_hoop(index=1,name="箍筋1",hoop_type=1,material_id=10,nums=2,diameter=20,gap=0.5,core_diameter=15)
4283
- #Returns: 无
4840
+ cdb.get_check_case_reinforcement_data()
4841
+ #Returns: QtServer.send_dict 的返回值
4284
4842
  ```
4285
- ### update_element_steel_hoop
4286
- 更新单元箍筋数据
4843
+ ### get_check_case_section_reinforcement_situation_table_info
4844
+ 获取当前检算工况截面配筋信息表。
4287
4845
  > 参数:
4288
- > sec_id: 单元ID
4289
- > bar_data: 箍筋数据列表,格式为[(x,y,直径,箍筋材料号)]
4290
4846
  ```Python
4291
4847
  # 示例代码
4292
4848
  from qtmodel import *
4293
- cdb.update_element_steel_hoop(sec_id=1,bar_data=[(0.1,0.5,20,10),(0.3,0.6,22,10)])
4294
- #Returns: 无
4849
+ infos = cdb.get_check_case_section_reinforcement_situation_table_info()
4850
+ first_info = infos[0]
4851
+ print(first_info.section_id, first_info.reinforcement_ratio)
4852
+ #Returns:
4295
4853
  ```
4296
- ### update_vertical_steel_hoop
4297
- 更新竖向箍筋数据
4854
+ ### get_check_case_prestress_tendon_sec_info
4855
+ 获取当前检算工况截面预应力钢束信息。
4298
4856
  > 参数:
4299
- > nums: 箍筋肢数或环数
4300
- > area: 箍筋面积,单位:m²
4301
- > gap: 箍筋间距,单位:m
4302
- > effective_prestress: 有效预应力,单位:Pa (8e8 Pa = 800 MPa)
4303
- > fpd: 强度设计值,单位:Pa (9e8 Pa = 900 MPa)
4304
4857
  ```Python
4305
4858
  # 示例代码
4306
4859
  from qtmodel import *
4307
- cdb.update_vertical_steel_hoop(nums=4,area=0.000314,gap=0.15)
4308
- #Returns: 无
4860
+ infos = cdb.get_check_case_prestress_tendon_sec_info()
4861
+ first_info = infos[0]
4862
+ print(first_info.stage_id, first_info.unit_id)
4863
+ #Returns:
4309
4864
  ```
4310
- ### add_concrete_load_combination
4311
- 添加混凝土构件荷载组合
4865
+ ### get_reinforcement_data
4866
+ 获取全部纵向钢筋坐标信息
4312
4867
  > 参数:
4313
- > name: 荷载组合名称
4314
- > standard: 荷载组合标准 1-公路规范JTG D60-2015 2-铁路规范TB 10002-2017
4315
- > kind:荷载组合类型,根据规范不同类型不同
4316
- > 公路规范JTG D60-2015|1-基本组合 2-偶然组合 3-标准值组合 4-频遇组合 5-准永久组合
4317
- > 铁路规范TB 10002-2017|1-主力组合 2-主加附组合 3-主加特殊组合
4318
- > combine_type: 组合方式 1-相加并判别 2-包络
4319
- > load_case_factors: 荷载工况列表,格式为[(荷载工况名称,不利系数,有利系数)]
4320
4868
  ```Python
4321
4869
  # 示例代码
4322
4870
  from qtmodel import *
4323
- cdb.add_concrete_load_combination(name="LC1",standard=1,kind=1,combine_type=1,load_case_factors=[("LC1-1",1.0,1.2)])
4324
- #Returns: 无
4871
+ cdb.get_reinforcement_data()
4872
+ #Returns: QtServer.send_dict 的返回值
4873
+ ```
4874
+ ### get_check_case_section_property
4875
+ 获取检算工况截面特性
4876
+ > 参数:
4877
+ ```Python
4878
+ # 示例代码
4879
+ from qtmodel import *
4880
+ cdb.get_check_case_section_property()
4881
+ #Returns: QtServer.send_dict 的返回值
4882
+ ```
4883
+ ### update_element_table_info
4884
+ 更新指定单元基本信息
4885
+ > 参数:
4886
+ > element_info: 单个单元基本信息行
4887
+ ```Python
4888
+ # 示例代码
4889
+ from qtmodel import *
4890
+ cdb.update_element_table_info(element_info=[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0])
4891
+ #Returns: QtServer.send_dict 的返回值
4892
+ ```
4893
+ ### update_combined_beam_element_table_info
4894
+ 更新单行组合梁单元信息。
4895
+ > 参数:
4896
+ > combined_beam_element_table_info: 单行组合梁单元信息,格式为:
4897
+ > [单元号, 辅材材料号, I端Pz, I端Myz, I端Mzz, J端Pz, J端Myz, J端Mzz, 结合施工阶段号, 结构类型]
4898
+ > 后端会校验单元号、辅材钢材材料号、结合施工阶段号、结构类型是否有效。
4899
+ > 结合施工阶段号必须存在于荷载表格“施工组合”中对应单元的 stage_id。
4900
+ > 结构类型从 1 开始取值:
4901
+ > 1-钢筋混凝土构件
4902
+ > 2-预应力钢筋混凝土构件
4903
+ > 3-钢结构构件
4904
+ > 4-钢-钢筋混凝土组合结构(主材为钢)
4905
+ > 5-钢-预应力混凝土组合结构(主材为钢)
4906
+ > 6-钢筋混凝土-钢组合结构(主材为钢筋混凝土,用于加固设计)
4907
+ > 7-预应力混凝土-钢组合结构(主材为预应力混凝土,用于加固设计)
4908
+ ```Python
4909
+ # 示例代码
4910
+ from qtmodel import *
4911
+ cdb.update_combined_beam_element_table_info(combined_beam_element_table_info=[1, 6, 0, 0, 0, 0, 0, 0, 35, 5])
4912
+ #Returns: QtServer.send_dict 的返回值
4913
+ ```
4914
+ ### get_element_table_info
4915
+ 获取单元基本信息表
4916
+ > 参数:
4917
+ ```Python
4918
+ # 示例代码
4919
+ from qtmodel import *
4920
+ cdb.get_element_table_info()
4921
+ #Returns: QtServer.send_dict 的返回值
4922
+ ```
4923
+ ### get_combined_beam_element_table_info
4924
+ 获取组合梁单元信息表
4925
+ > 参数:
4926
+ ```Python
4927
+ # 示例代码
4928
+ from qtmodel import *
4929
+ cdb.get_combined_beam_element_table_info()
4930
+ #Returns: QtServer.send_dict 的返回值
4931
+ ```
4932
+ ### add_element_torsion_stirrup
4933
+ 添加或覆盖单个单元抗扭箍筋设置。
4934
+ > 参数:
4935
+ > ele_id: 当前 ProjectManager StructureData 中的单元号。
4936
+ > stirrup_i: I 端抗扭箍筋号,来自 ReinforcementData.StirrupItems。
4937
+ > stirrup_j: J 端抗扭箍筋号,来自 ReinforcementData.StirrupItems。
4938
+ ```Python
4939
+ # 示例代码
4940
+ from qtmodel import *
4941
+ cdb.add_element_torsion_stirrup(ele_id=1, stirrup_i=1, stirrup_j=1)
4942
+ #Returns: QtServer.send_dict 的返回值
4943
+ ```
4944
+ ### add_element_torsion_stirrups
4945
+ 批量添加或覆盖单元抗扭箍筋设置。
4946
+ > 参数:
4947
+ > element_stirrups: 单元抗扭箍筋数据列表,格式为
4948
+ > [(ele_id, stirrup_i, stirrup_j)]。
4949
+ ```Python
4950
+ # 示例代码
4951
+ from qtmodel import *
4952
+ cdb.add_element_torsion_stirrups(
4953
+ element_stirrups=[
4954
+ (1, 1, 1),
4955
+ (2, 1, 1)
4956
+ ]
4957
+ )
4958
+ #Returns: QtServer.send_dict 的返回值
4959
+ ```
4960
+ ### update_element_torsion_stirrup
4961
+ 修改一个已有的单元抗扭箍筋设置。
4962
+ > 参数:
4963
+ > ele_id: 单元号,该单元必须已经存在单元抗扭箍筋数据。
4964
+ > stirrup_i: I 端抗扭箍筋号,来自 ReinforcementData.StirrupItems。
4965
+ > stirrup_j: J 端抗扭箍筋号,来自 ReinforcementData.StirrupItems。
4966
+ ```Python
4967
+ # 示例代码
4968
+ from qtmodel import *
4969
+ cdb.update_element_torsion_stirrup(ele_id=1, stirrup_i=1, stirrup_j=1)
4970
+ #Returns: QtServer.send_dict 的返回值
4971
+ ```
4972
+ ### get_element_torsion_stirrup_data
4973
+ 获取单元抗扭箍筋数据。
4974
+ > 参数:
4975
+ > ele_id: 单元号。大于 0 时只返回该单元数据。
4976
+ > ele_ids: 单元号列表。非空时只返回列表中单元的数据。
4977
+ ```Python
4978
+ # 示例代码
4979
+ from qtmodel import *
4980
+ infos = cdb.get_element_torsion_stirrup_data()
4981
+ infos = cdb.get_element_torsion_stirrup_data(ele_id=1)
4982
+ infos = cdb.get_element_torsion_stirrup_data(ele_ids=[1, 2])
4983
+ #Returns:
4984
+ ```
4985
+ ### add_element_shear_stirrup
4986
+ 添加或覆盖单个单元抗剪箍筋设置。
4987
+ > 参数:
4988
+ > ele_id: 当前 ProjectManager StructureData 中的单元号。
4989
+ > stirrup_i_y: I 端竖向箍筋号,来自 ReinforcementData.StirrupItems。
4990
+ > stirrup_i_x: I 端横向箍筋号,来自 ReinforcementData.StirrupItems。
4991
+ > stirrup_j_y: J 端竖向箍筋号,来自 ReinforcementData.StirrupItems。
4992
+ > stirrup_j_x: J 端横向箍筋号,来自 ReinforcementData.StirrupItems。
4993
+ ```Python
4994
+ # 示例代码
4995
+ from qtmodel import *
4996
+ cdb.add_element_shear_stirrup(ele_id=1, stirrup_i_y=1, stirrup_i_x=1, stirrup_j_y=1, stirrup_j_x=1)
4997
+ #Returns: QtServer.send_dict 的返回值
4998
+ ```
4999
+ ### add_element_shear_stirrups
5000
+ 批量添加或覆盖单元抗剪箍筋设置。
5001
+ > 参数:
5002
+ > element_stirrups: 单元箍筋数据列表,格式为
5003
+ > [(ele_id, stirrup_i_y, stirrup_i_x, stirrup_j_y, stirrup_j_x)].
5004
+ ```Python
5005
+ # 示例代码
5006
+ from qtmodel import *
5007
+ cdb.add_element_shear_stirrups(element_stirrups=[(1, 1, 1, 1, 1), (2, 1, 1, 1, 1)])
5008
+ #Returns: QtServer.send_dict 的返回值
5009
+ ```
5010
+ ### update_element_shear_stirrup
5011
+ 修改一个已有的单元抗剪箍筋设置。
5012
+ > 参数:
5013
+ > ele_id: 单元号,该单元必须已经存在单元箍筋数据。
5014
+ > stirrup_i_y: I 端竖向箍筋号,来自 ReinforcementData.StirrupItems。
5015
+ > stirrup_i_x: I 端横向箍筋号,来自 ReinforcementData.StirrupItems。
5016
+ > stirrup_j_y: J 端竖向箍筋号,来自 ReinforcementData.StirrupItems。
5017
+ > stirrup_j_x: J 端横向箍筋号,来自 ReinforcementData.StirrupItems。
5018
+ ```Python
5019
+ # 示例代码
5020
+ from qtmodel import *
5021
+ cdb.update_element_shear_stirrup(ele_id=1, stirrup_i_y=1, stirrup_i_x=1, stirrup_j_y=1, stirrup_j_x=1)
5022
+ #Returns: QtServer.send_dict 的返回值
5023
+ ```
5024
+ ### get_element_shear_stirrup_data
5025
+ 获取单元抗剪箍筋数据。
5026
+ > 参数:
5027
+ > ele_id: 单元号。大于 0 时只返回该单元数据。
5028
+ > ele_ids: 单元号列表。非空时只返回列表中单元的数据。
5029
+ ```Python
5030
+ # 示例代码
5031
+ from qtmodel import *
5032
+ infos = cdb.get_element_shear_stirrup_data()
5033
+ infos = cdb.get_element_shear_stirrup_data(ele_id=1)
5034
+ infos = cdb.get_element_shear_stirrup_data(ele_ids=[1, 2])
5035
+ #Returns:
5036
+ ```
5037
+ ### remove_element_stirrup
5038
+ 删除单元箍筋设置。
5039
+ > 参数:
5040
+ > ele_id: 单元号。小于等于 0 时删除全部单元箍筋设置。
5041
+ > remove_shear: 是否删除抗剪箍筋
5042
+ > remove_torsion: 是否删除抗扭箍筋
5043
+ ```Python
5044
+ # 示例代码
5045
+ from qtmodel import *
5046
+ cdb.remove_element_stirrup(ele_id=1)
5047
+ #Returns: QtServer.send_dict 的返回值
5048
+ ```
5049
+ ### add_check_case_load_table_info
5050
+ 添加一行检算荷载表数据
5051
+ > 参数:
5052
+ > combine_type: 荷载表组合类型
5053
+ > element_id: 单元编号
5054
+ > force_i: I 端内力 [Fx, Fy, Fz, Mx, My, Mz]
5055
+ > force_j: J 端内力 [Fx, Fy, Fz, Mx, My, Mz]
5056
+ > combine_name: 组合名称
5057
+ > load_type: 荷载类型字段
5058
+ ```Python
5059
+ # 示例代码
5060
+ from qtmodel import *
5061
+ cdb.add_check_case_load_table_info(combine_type=1, element_id=1, force_i=[0, 0, 0, 0, 0, 0], force_j=[0, 0, 0, 0, 0, 0])
5062
+ #Returns: QtServer.send_dict 的返回值
5063
+ ```
5064
+ ### add_check_case_load_table_infos
5065
+ 批量添加检算荷载表数据
5066
+ > 参数:
5067
+ > combine_type: 荷载组合类型
5068
+ > load_table: 荷载表数据列表
5069
+ ```Python
5070
+ # 示例代码
5071
+ from qtmodel import *
5072
+ cdb.add_check_case_load_table_infos(load_type=1, load_table=[{"element_id": 1, "force_i": [0, 0, 0, 0, 0, 0], "force_j": [0, 0, 0, 0, 0, 0]}])
5073
+ #Returns: QtServer.send_dict 的返回值
5074
+ ```
5075
+ ### update_check_case_load_table_infos
5076
+ 更新检算荷载表数据
5077
+ > 参数:
5078
+ > load_type: 荷载表类型
5079
+ > load_table: 荷载表数据列表,其中单位为kN、m
5080
+ ```Python
5081
+ # 示例代码
5082
+ from qtmodel import *
5083
+ cdb.update_check_case_load_table_infos(load_type=1, load_table=[])
5084
+ #Returns: QtServer.send_dict 的返回值
5085
+ ```
5086
+ ### get_check_case_load_table_info
5087
+ 获取检算荷载表信息
5088
+ > 参数:
5089
+ > combine_type: 荷载表类型
5090
+ > specific_load_type_name: 指定荷载类型显示名称,为空时按 load_type 获取
5091
+ ```Python
5092
+ # 示例代码
5093
+ from qtmodel import *
5094
+ cdb.get_check_case_load_table_info(load_type=1)
5095
+ #Returns: QtServer.send_dict 的返回值
5096
+ ```
5097
+ ### get_concrete_check_stress_info
5098
+ 获取混凝土检算应力信息。
5099
+ > 参数:
5100
+ > stress_type: 应力组合类型,从 1 开始取值,顺序同 C# 应力界面组合选项。
5101
+ > 详细表可查看 CdbConcreteCheck.STRESS_TYPE_OPTIONS。
5102
+ > 非 AASHTO 2020:1-标准值组合,2-频遇组合,3-准永久值组合,4-主力组合,
5103
+ > 5-主加附组合,6-施工组合,7-主加特殊组合,8-恒载作用,9-预应力作用,
5104
+ > 10-使用组合Ⅰ,11-使用组合Ⅱ,12-使用组合Ⅲ,13-使用组合Ⅳ,14-永久作用组合。
5105
+ > AASHTO 2020:1-使用组合Ⅰ,2-使用组合Ⅱ,3-使用组合Ⅲ,4-使用组合Ⅳ,
5106
+ > 5-永久作用组合,6-施工组合。
5107
+ > specific_load_type_name: 指定应力组合类型显示名称,为空时按 stress_type 获取。
5108
+ ```Python
5109
+ # 示例代码
5110
+ from qtmodel import *
5111
+ items = cdb.get_concrete_check_stress_info(stress_type=1)
5112
+ print(items[0].element_id, items[0].stress_i)
5113
+ #Returns: list[CheckStressItem]
5114
+ ```
5115
+ ### update_concrete_check_stress_item
5116
+ 更新单条混凝土检算应力信息。
5117
+ > 参数:
5118
+ > stress_type: 应力组合类型,从 1 开始取值,顺序同 C# 应力界面组合选项。
5119
+ > 详细表可查看 CdbConcreteCheck.STRESS_TYPE_OPTIONS。
5120
+ > 非 AASHTO 2020:1-标准值组合,2-频遇组合,3-准永久值组合,4-主力组合,
5121
+ > 5-主加附组合,6-施工组合,7-主加特殊组合,8-恒载作用,9-预应力作用,
5122
+ > 10-使用组合Ⅰ,11-使用组合Ⅱ,12-使用组合Ⅲ,13-使用组合Ⅳ,14-永久作用组合。
5123
+ > AASHTO 2020:1-使用组合Ⅰ,2-使用组合Ⅱ,3-使用组合Ⅲ,4-使用组合Ⅳ,
5124
+ > 5-永久作用组合,6-施工组合。
5125
+ > stress_item: 应力信息,支持 CheckStressItem 或 dict。
5126
+ > specific_load_type_name: 指定应力组合类型显示名称,为空时按 stress_type 获取。
5127
+ ```Python
5128
+ # 示例代码
5129
+ from qtmodel import *
5130
+ item = CheckStressItem(element_id=1, condition_name="LC1", stress_i=[1, 2, 3, 4], stress_j=[5, 6, 7, 8])
5131
+ cdb.update_concrete_check_stress_item(stress_type=1, stress_item=item)
5132
+ #Returns: QtServer.send_dict 的返回值
5133
+ ```
5134
+ ### update_concrete_check_stress_info
5135
+ 批量更新混凝土检算应力信息。
5136
+ > 参数:
5137
+ > stress_type: 应力组合类型,从 1 开始取值,顺序同 C# 应力界面组合选项。
5138
+ > 详细表可查看 CdbConcreteCheck.STRESS_TYPE_OPTIONS。
5139
+ > 非 AASHTO 2020:1-标准值组合,2-频遇组合,3-准永久值组合,4-主力组合,
5140
+ > 5-主加附组合,6-施工组合,7-主加特殊组合,8-恒载作用,9-预应力作用,
5141
+ > 10-使用组合Ⅰ,11-使用组合Ⅱ,12-使用组合Ⅲ,13-使用组合Ⅳ,14-永久作用组合。
5142
+ > AASHTO 2020:1-使用组合Ⅰ,2-使用组合Ⅱ,3-使用组合Ⅲ,4-使用组合Ⅳ,
5143
+ > 5-永久作用组合,6-施工组合。
5144
+ > stress_table: 应力信息列表,支持 CheckStressItem 或 dict。
5145
+ > specific_load_type_name: 指定应力组合类型显示名称,为空时按 stress_type 获取。
5146
+ ```Python
5147
+ # 示例代码
5148
+ from qtmodel import *
5149
+ item = CheckStressItem(element_id=1, condition_name="LC1", stress_i=[1, 2, 3, 4], stress_j=[5, 6, 7, 8])
5150
+ cdb.update_concrete_check_stress_info(stress_type=1, stress_table=[item])
5151
+ #Returns: QtServer.send_dict 的返回值
5152
+ ```
5153
+ ### get_check_case_result_info
5154
+ 获取检算结果信息。
5155
+ > 参数:
5156
+ > result_type: 结果类型中文名称。可选值包括:
5157
+ > "正截面承载力"、"斜截面抗剪承载力"、"正截面应力"、"剪应力与主应力"、
5158
+ > "裂缝宽度"、"正截面抗裂"、"斜截面抗裂"、"预应力度"、"弯曲能力"、
5159
+ > "塑性铰斜截面抗剪承载力"、"弯矩曲率曲线分析"、"pm承载力曲线分析"、
5160
+ > "mymz承载力曲线分析"、"应力幅"。
5161
+ > table_type: 结果表类型,0 为默认表,1 为总表,2 为详表。
5162
+ > load_combination_type: 荷载组合类型名称,可选参数,仅详表需要
5163
+ > element_id: 单元编号,可选参数,仅详表需要
5164
+ > beam_end_mark: 梁端标记,0 为 I 端,1 为 J 端,2 为 IJ 端,可选参数,仅详表需要
5165
+ > shear_direction_type: 剪切方向类型,可选参数,仅斜截面抗剪总表需要 0-Vertical 1-Lateral 2-Bidirectional
5166
+ ```Python
5167
+ # 示例代码
5168
+ from qtmodel import *
5169
+ cdb.get_check_case_result_info(result_type="正截面承载力", table_type=1)
5170
+ #Returns:
5171
+ ```
5172
+ ### update_normal_section_bearing_analysis_setting
5173
+ 更新正截面承载力分析设置
5174
+ > 参数:
5175
+ > normal_section_bearing_calculation_type: 正截面承载力计算类型(从 1 开始的枚举序号):
5176
+ > 1 - 同比例变化
5177
+ > 2 - 轴力不变
5178
+ > 3 - My 不变
5179
+ > 4 - Mz 不变
5180
+ > 5 - 轴力与 My 不变
5181
+ > 6 - 轴力与 Mz 不变
5182
+ > 7 - My 与 Mz 不变
5183
+ ```Python
5184
+ # 示例代码
5185
+ from qtmodel import *
5186
+ cdb.update_normal_section_bearing_analysis_setting(normal_section_bearing_calculation_type=1)
5187
+ #Returns: QtServer.send_dict 的返回值
5188
+ ```
5189
+ ### get_normal_section_bearing_analysis_setting
5190
+ 获取正截面承载力分析设置。
5191
+ > 参数:
5192
+ ```Python
5193
+ # 示例代码
5194
+ from qtmodel import *
5195
+ setting = cdb.get_normal_section_bearing_analysis_setting()
5196
+ #Returns:
5197
+ ```
5198
+ ### update_oblique_section_shear_bearing_analysis_setting
5199
+ 更新斜截面抗剪承载力分析设置
5200
+ > 参数:
5201
+ > reinforcement_height_multiple: 配筋高度倍数
5202
+ > is_consider_as_simple_support: 是否按简支构件考虑
5203
+ > shear_strength_material_factor: 抗剪强度材料系数
5204
+ > oblique_section_shear_direction_type: 斜截面抗剪方向类型(从 1 开始的枚举序号):
5205
+ > 1 - 竖向(截面 z 向)
5206
+ > 2 - 横向(截面 y 向)
5207
+ > 3 - 双向
5208
+ ```Python
5209
+ # 示例代码
5210
+ from qtmodel import *
5211
+ cdb.update_oblique_section_shear_bearing_analysis_setting(reinforcement_height_multiple=1.0)
5212
+ #Returns: QtServer.send_dict 的返回值
5213
+ ```
5214
+ ### get_oblique_section_shear_bearing_analysis_setting
5215
+ 获取斜截面抗剪承载力分析设置。
5216
+ > 参数:
5217
+ ```Python
5218
+ # 示例代码
5219
+ from qtmodel import *
5220
+ setting = cdb.get_oblique_section_shear_bearing_analysis_setting()
5221
+ #Returns:
5222
+ ```
5223
+ ### update_limit_state_method_analysis_setting
5224
+ 更新极限状态法分析设置
5225
+ > 参数:
5226
+ > cal_fatigue: 是否计算疲劳
5227
+ > fatigue_limit_steel_bar: 普通钢筋疲劳限值
5228
+ > fatigue_limit_prestress: 预应力筋疲劳限值
5229
+ > is_consider_as_simple_support: 是否按简支构件考虑
5230
+ > is_consider_construction_load: 是否考虑施工荷载
5231
+ ```Python
5232
+ # 示例代码
5233
+ from qtmodel import *
5234
+ cdb.update_limit_state_method_analysis_setting(cal_fatigue=True)
5235
+ #Returns: QtServer.send_dict 的返回值
5236
+ ```
5237
+ ### get_limit_state_method_analysis_setting
5238
+ 获取极限状态法分析设置。
5239
+ > 参数:
5240
+ ```Python
5241
+ # 示例代码
5242
+ from qtmodel import *
5243
+ setting = cdb.get_limit_state_method_analysis_setting()
5244
+ #Returns:
5245
+ ```
5246
+ ### update_normal_stress_analysis_setting
5247
+ 更新正应力分析设置
5248
+ > 参数:
5249
+ > aashto2020_normal_stress_rebar_type: AASHTO 2020 正应力钢筋类型(从 1 开始的枚举序号):
5250
+ > 1 - 直钢筋以及在高应力区域无交叉焊缝的焊接钢丝网
5251
+ > 2 - 在高应力区域带有交叉焊缝的直焊接钢丝网
5252
+ > tendon_allowable_stress_amplitude: 钢束容许应力幅
5253
+ > flange_web_slenderness_ratio: 翼缘腹板宽厚比限值
5254
+ > construction_stage_concrete_tensile_limit: 施工阶段混凝土拉应力限值
5255
+ > service_combination3_concrete_tension_limit: 服务组合 3 混凝土拉应力限值
5256
+ ```Python
5257
+ # 示例代码
5258
+ from qtmodel import *
5259
+ cdb.update_normal_stress_analysis_setting(aashto2020_normal_stress_rebar_type=1)
5260
+ #Returns: QtServer.send_dict 的返回值
5261
+ ```
5262
+ ### get_normal_stress_analysis_setting
5263
+ 获取正应力分析设置。
5264
+ > 参数:
5265
+ ```Python
5266
+ # 示例代码
5267
+ from qtmodel import *
5268
+ setting = cdb.get_normal_stress_analysis_setting()
5269
+ #Returns:
5270
+ ```
5271
+ ### update_crack_width_analysis_setting
5272
+ 更新裂缝宽度分析设置
5273
+ > 参数:
5274
+ > highway_environment_category_type: 公路环境类别(从 1 开始的枚举序号):
5275
+ > 1 - Ⅰ类:一般环境
5276
+ > 2 - Ⅱ类:冻融环境
5277
+ > 3 - Ⅲ类:近海或海洋氯化物环境
5278
+ > 4 - Ⅳ类:除冰盐等其他氯化物环境
5279
+ > 5 - Ⅴ类:盐结晶环境
5280
+ > 6 - Ⅵ类:化学腐蚀环境
5281
+ > 7 - Ⅶ类:磨蚀环境
5282
+ > railway_environment_category_type: 铁路环境类别(从 1 开始的枚举序号):
5283
+ > 1 - 碳化环境
5284
+ > 2 - 氯盐环境
5285
+ > 3 - 化学腐蚀环境
5286
+ > 4 - 盐类结晶破坏环境
5287
+ > 5 - 冻融破坏环境
5288
+ > 6 - 磨蚀环境
5289
+ > railway_limit_environment_category_type: 铁路限值环境类别(从 1 开始的枚举序号):
5290
+ > 1 - 碳化环境
5291
+ > 2 - 氯盐环境Ⅰ
5292
+ > 3 - 氯盐环境Ⅱ
5293
+ > 4 - 化学腐蚀环境Ⅰ
5294
+ > 5 - 化学腐蚀环境Ⅱ
5295
+ > 6 - 盐类结晶破坏环境Ⅰ
5296
+ > 7 - 盐类结晶破坏环境Ⅱ
5297
+ > 8 - 冻融破坏环境Ⅰ
5298
+ > 9 - 冻融破坏环境Ⅱ
5299
+ > 10 - 磨蚀环境Ⅰ
5300
+ > 11 - 磨蚀环境Ⅱ
5301
+ > crack_setting_type: 裂缝限值类型(从 1 开始的枚举序号):
5302
+ > 1 - 0
5303
+ > 2 - 0.10
5304
+ > 3 - 0.15
5305
+ > 4 - 0.20
5306
+ > 5 - 0.25
5307
+ > 6 - 禁止使用
5308
+ > clear_protective_thickness: 净保护层厚度
5309
+ > steel_bar_type: 钢筋类型(从 1 开始的枚举序号):
5310
+ > 1 - 带肋钢筋
5311
+ > 2 - 光圆钢筋
5312
+ > effect_coefficient_type: 作用影响系数类型(从 1 开始的枚举序号):
5313
+ > 1 - 根据输入荷载由软件自动计算
5314
+ > 2 - 用户指定(使用 user_specified_effect_coefficient)
5315
+ > user_specified_effect_coefficient: 用户指定效应系数
5316
+ > is_epoxy_resin_rebar: 是否为环氧树脂涂层钢筋
5317
+ > is_welded_rebar_skeleton: 是否为焊接钢筋骨架
5318
+ > mq_mg: 活载弯矩与恒载弯矩比值
5319
+ > protective_thickness: 保护层厚度
5320
+ > exposure_coefficient: 暴露系数
5321
+ ```Python
5322
+ # 示例代码
5323
+ from qtmodel import *
5324
+ cdb.update_crack_width_analysis_setting(crack_setting_type=1, protective_thickness=30.0)
5325
+ #Returns: QtServer.send_dict 的返回值
5326
+ ```
5327
+ ### get_crack_width_analysis_setting
5328
+ 获取裂缝宽度分析设置。
5329
+ > 参数:
5330
+ ```Python
5331
+ # 示例代码
5332
+ from qtmodel import *
5333
+ setting = cdb.get_crack_width_analysis_setting()
5334
+ #Returns:
5335
+ ```
5336
+ ### update_moment_curvature_curve_analysis_setting
5337
+ 更新弯矩曲率曲线分析设置
5338
+ > 参数:
5339
+ > moment_curvature_type: 弯矩曲率类型(从 1 开始的枚举序号):
5340
+ > 1 - 轴力 P 变化
5341
+ > 2 - 弯矩 M 变化
5342
+ > moment_curvature_model_type: 弯矩曲率模型类型(从 1 开始的枚举序号):
5343
+ > 1 - 双线性模型
5344
+ > 2 - 理想弹塑性模型
5345
+ ```Python
5346
+ # 示例代码
5347
+ from qtmodel import *
5348
+ cdb.update_moment_curvature_curve_analysis_setting(moment_curvature_type=1)
5349
+ #Returns: QtServer.send_dict 的返回值
5350
+ ```
5351
+ ### get_moment_curvature_curve_analysis_setting
5352
+ 获取弯矩曲率曲线分析设置。
5353
+ > 参数:
5354
+ ```Python
5355
+ # 示例代码
5356
+ from qtmodel import *
5357
+ setting = cdb.get_moment_curvature_curve_analysis_setting()
5358
+ #Returns:
5359
+ ```
5360
+ ### update_bearing_curve_analysis_setting
5361
+ 更新承载力曲线分析设置
5362
+ > 参数:
5363
+ > bearing_curve_count: 承载力曲线计算点数
5364
+ > angle_between_m_and_y_axis: 弯矩方向与 y 轴夹角
5365
+ > force_p: 轴力 P
5366
+ ```Python
5367
+ # 示例代码
5368
+ from qtmodel import *
5369
+ cdb.update_bearing_curve_analysis_setting(bearing_curve_count=20, force_p=0.0)
5370
+ #Returns: QtServer.send_dict 的返回值
5371
+ ```
5372
+ ### get_bearing_curve_analysis_setting
5373
+ 获取承载力曲线分析设置。
5374
+ > 参数:
5375
+ ```Python
5376
+ # 示例代码
5377
+ from qtmodel import *
5378
+ setting = cdb.get_bearing_curve_analysis_setting()
5379
+ #Returns:
5380
+ ```
5381
+ ### add_parameter_reinforcement
5382
+ 添加参数化配筋,单位默认为国际单位制m,当存在数据时默认覆盖数据
5383
+ > 参数:
5384
+ > sec_id: 截面编号
5385
+ > position: 变截面专用参数 0-I端 1-J端
5386
+ > has_outer: 是否包含外侧配筋
5387
+ > has_inner: 是否包含内侧配筋
5388
+ > outer_type: 外侧配筋类型 0-按照间距 1-按照数量
5389
+ > inner_type: 内侧配筋类型 0-按照间距 1-按照数量
5390
+ > outer_info: 外侧配筋参数列表 [直径,钢筋材料号,层边距,钢筋间距/数量,每束根数]
5391
+ > inner_info: 内侧配筋参数列表 [直径,钢筋材料号,层边距,钢筋间距/数量,每束根数]
5392
+ > tapper_sec_group: 是否操作变截面组中的插值截面;为 True 时 sec_id 表示变截面组编号
5393
+ > tapper_interpolation_id: 变截面组中的插值截面编号,从 1 开始;tapper_sec_group=True 时必填
5394
+ > tapper_group_name: 变截面组名称;tapper_sec_group=True 时必填
5395
+ ```Python
5396
+ # 示例代码
5397
+ from qtmodel import *
5398
+ cdb.add_parameter_reinforcement(sec_id=1, outer_info=[[0.016, 4, 0.05, 0.15, 1]])
5399
+ #Returns: QtServer.send_dict 的返回值
5400
+ ```
5401
+ ### add_part_parameter_reinforcement
5402
+ 添加局部参数化配筋,默认单位是m
5403
+ > 参数:
5404
+ > sec_id: 截面编号
5405
+ > position: 布置位置类型
5406
+ > base_line_id: 由截面分段生成的基准线号,从 1 开始。
5407
+ > distribution_type: 分布方式,0-按间距分布,1-按数量分布。
5408
+ > direction_type: 布置方向,0-向内布置,1-向外布置。
5409
+ > diameter: 钢筋直径。
5410
+ > material_id: 钢筋材料号。
5411
+ > layer_margin: 层边距。
5412
+ > spacing_or_number: distribution_type=0 时表示间距,distribution_type=1 时表示数量。
5413
+ > number_of_pieces_per_bundle: 每束钢筋根数。
5414
+ > start_offset: 起点偏移值。
5415
+ > end_offset: 终点偏移值。
5416
+ > tapper_sec_group: 是否操作变截面组中的插值截面;为 True 时 sec_id 表示变截面组编号。
5417
+ > tapper_interpolation_id: 变截面组中的插值截面编号,从 1 开始;tapper_sec_group=True 时必填。
5418
+ > tapper_group_name: 变截面组名称;tapper_sec_group=True 时必填。
5419
+ ```Python
5420
+ # 示例代码
5421
+ from qtmodel import *
5422
+ cdb.add_part_parameter_reinforcement(sec_id=1, base_line_id=11, distribution_type=0, direction_type=0)
5423
+ #Returns: QtServer.send_dict 的返回值
5424
+ ```
5425
+ ### remove_part_parameter_reinforcement
5426
+ 删除指定截面的局部参数化钢筋。
5427
+ > 参数:
5428
+ > sec_id: 截面号。
5429
+ > position: 截面位置,变截面时 0-I 端,1-J 端。
5430
+ > base_line_id: 基准线号。小于 0 时删除该截面全部局部参数化钢筋。
5431
+ ```Python
5432
+ # 示例代码
5433
+ from qtmodel import *
5434
+ cdb.remove_part_parameter_reinforcement(sec_id=1, position=0, base_line_id=11)
5435
+ #Returns: QtServer.send_dict 鐨勮繑鍥炲€?
5436
+ ```
5437
+ ### add_reinforcement_by_point
5438
+ 按坐标点添加纵向钢筋
5439
+ > 参数:
5440
+ > sec_id: 截面编号
5441
+ > position: 布置位置类型
5442
+ > bar_data: 钢筋数据列表,格式为 [(x, y, 直径, 材料号)]
5443
+ > tapper_sec_group: 是否操作变截面组中的插值截面;为 True 时 sec_id 表示变截面组编号。
5444
+ > tapper_interpolation_id: 变截面组中的插值截面编号,从 1 开始;tapper_sec_group=True 时必填。
5445
+ > tapper_group_name: 变截面组名称;tapper_sec_group=True 时必填。
5446
+ ```Python
5447
+ # 示例代码
5448
+ from qtmodel import *
5449
+ cdb.add_reinforcement_by_point(sec_id=1, bar_data=[(0, 0, 20, 1)])
5450
+ #Returns: QtServer.send_dict 的返回值
5451
+ ```
5452
+ ### update_reinforcement_by_point
5453
+ 更新所有自定义钢筋.
5454
+ > 参数:
5455
+ > sec_id: 截面号。
5456
+ > position: 截面位置,变截面时 0-I 端,1-J 端。
5457
+ > bar_data: 钢筋点列表,格式为 [(x, y, 直径, 材料号)]。
5458
+ ```Python
5459
+ # 示例代码
5460
+ from qtmodel import *
5461
+ cdb.update_reinforcement_by_point(sec_id=1, bar_data=[(0, 0, 20, 1)])
5462
+ #Returns: QtServer.send_dict 的返回值
5463
+ ```
5464
+ ### add_check_stirrup
5465
+ 添加一个混凝土检算箍筋定义。
5466
+ > 参数:
5467
+ > stirrup_id: 箍筋定义编号。
5468
+ > name: 箍筋定义名称。
5469
+ > stirrup_type: 箍筋类型,1-普通箍筋,2-螺旋式箍筋。
5470
+ > rebar_material_id: 钢筋材料号。
5471
+ > limbs_number: 普通箍筋的肢数。
5472
+ > loops_number: 螺旋式箍筋的环数。
5473
+ > stirrup_diameter: 箍筋直径,单位 mm。
5474
+ > stirrup_spacing: 箍筋间距,单位 m。
5475
+ > core_diameter: 螺旋式箍筋核心直径,单位 m。
5476
+ ```Python
5477
+ # 示例代码
5478
+ from qtmodel import *
5479
+ cdb.add_check_stirrup(stirrup_id=1, name="default", stirrup_type=1, rebar_material_id=1, limbs_number=2, stirrup_diameter=20, stirrup_spacing=0.2)
5480
+ #Returns: QtServer.send_dict 的返回值
5481
+ ```
5482
+ ### update_check_stirrup
5483
+ 修改一个混凝土检算箍筋定义。
5484
+ > 参数:
5485
+ > stirrup_id: 箍筋定义编号。C# 端优先按编号查找,编号未找到时再按名称查找。
5486
+ > name: 箍筋定义名称。
5487
+ > stirrup_type: 箍筋类型,1-普通箍筋,2-螺旋式箍筋。
5488
+ > rebar_material_id: 钢筋材料号。
5489
+ > limbs_number: 普通箍筋的肢数。
5490
+ > loops_number: 螺旋式箍筋的环数。
5491
+ > stirrup_diameter: 箍筋直径,单位 mm。
5492
+ > stirrup_spacing: 箍筋间距,单位 m。
5493
+ > core_diameter: 螺旋式箍筋核心直径,单位 m。
5494
+ ```Python
5495
+ # 示例代码
5496
+ from qtmodel import *
5497
+ cdb.update_check_stirrup(stirrup_id=1, name="default", stirrup_type=2, rebar_material_id=1, loops_number=2, stirrup_diameter=20, stirrup_spacing=0.2, core_diameter=2)
5498
+ #Returns: QtServer.send_dict 的返回值
5499
+ ```
5500
+ ### remove_check_stirrup
5501
+ 删除一个混凝土检算箍筋定义。
5502
+ > 参数:
5503
+ > stirrup_id: 箍筋定义编号。C# 端优先按编号删除。
5504
+ > name: 箍筋定义名称。stirrup_id 小于等于 0 或编号未找到时按名称删除。
5505
+ ```Python
5506
+ # 示例代码
5507
+ from qtmodel import *
5508
+ cdb.remove_check_stirrup(stirrup_id=1)
5509
+ #Returns: QtServer.send_dict 的返回值
5510
+ ```
5511
+ ### update_vertical_steel_tendon
5512
+ 修改竖向钢束设置。
5513
+ > 参数:
5514
+ > limbs_number: 肢数。
5515
+ > single_limb_area: 单肢面积,单位 mm^2。
5516
+ > spacing: 钢束间距,单位 m。
5517
+ > effective_prestress: 有效预应力,单位 MPa。
5518
+ > strength_design_value: 强度设计值 fpd,单位 MPa。
5519
+ ```Python
5520
+ # 示例代码
5521
+ from qtmodel import *
5522
+ cdb.update_vertical_steel_tendon(limbs_number=0, single_limb_area=804, spacing=0.2, effective_prestress=800, strength_design_value=900)
5523
+ #Returns: QtServer.send_dict 的返回值
5524
+ ```
5525
+ ### remove_vertical_steel_tendon
5526
+ 通过重置为界面默认值来删除竖向钢束设置。
5527
+ > 参数:
5528
+ ```Python
5529
+ # 示例代码
5530
+ from qtmodel import *
5531
+ cdb.remove_vertical_steel_tendon()
5532
+ #Returns: QtServer.send_dict 的返回值
4325
5533
  ```
4326
5534
  ## 钢箱梁检算
4327
5535
  ### add_steel_box_construct_check
@@ -4688,17 +5896,6 @@ from qtmodel import *
4688
5896
  cdb.update_steel_box_stress_support_info(name="应力验算1", support_data=[[...]])
4689
5897
  #Returns:
4690
5898
  ```
4691
- ### calculate_steel_box_stress_support_infos
4692
- 计算局部支承承压验算结果。
4693
- > 参数:
4694
- > name: 应力验算工况名称。
4695
- > user_define: 是否使用用户自定义输入;0 使用程序默认或模型数据,1 使用用户输入。
4696
- ```Python
4697
- # 示例代码
4698
- from qtmodel import *
4699
- cdb.calculate_steel_box_stress_support_infos(name="应力验算1")
4700
- #Returns:
4701
- ```
4702
5899
  ### calc_steel_box_stress_support_infos
4703
5900
  计算局部支承承压验算结果。
4704
5901
  > 参数:
@@ -4866,3 +6063,65 @@ from qtmodel import *
4866
6063
  cdb.get_steel_box_stress_fatigue_result(name="应力验算1")
4867
6064
  #Returns:
4868
6065
  ```
6066
+ ## 钢桁架检查
6067
+ ### check_steel_truss_member
6068
+ 检查钢桁架杆件
6069
+ > 参数:
6070
+ ```Python
6071
+ # 示例代码
6072
+ from qtmodel import *
6073
+ cdb.check_steel_truss_member()
6074
+ #Returns: 无
6075
+ ```
6076
+ ### check_steel_truss_joint
6077
+ 检查钢桁架节点
6078
+ > 参数:
6079
+ ```Python
6080
+ # 示例代码
6081
+ from qtmodel import *
6082
+ cdb.check_steel_truss_joint()
6083
+ #Returns: 无
6084
+ ```
6085
+ ### check_steel_truss_stability
6086
+ 检查钢桁架稳定性
6087
+ > 参数:
6088
+ ```Python
6089
+ # 示例代码
6090
+ from qtmodel import *
6091
+ cdb.check_steel_truss_stability()
6092
+ #Returns: 无
6093
+ ```
6094
+ ### extract_member_design_data
6095
+ Extract steel truss member design data.
6096
+ > 参数:
6097
+ > member_ids: Member id list.
6098
+ > load_cases: Check load case / load combination name list.
6099
+ ```Python
6100
+ # 示例代码
6101
+ from qtmodel import *
6102
+ cdb.extract_member_design_data(
6103
+ member_ids=[101, 102, 103],
6104
+ load_cases=["CB主力", "CB主加附"],
6105
+ )
6106
+ #Returns:
6107
+ ```
6108
+ ### check_member_tables
6109
+ Check steel truss members from extracted design tables.
6110
+ > 参数:
6111
+ > material_table: Material table.
6112
+ > member_table: Member table.
6113
+ > section_table: Section table.
6114
+ > load_table: Load table.
6115
+ > load_cases: Check load case / load combination name list.
6116
+ ```Python
6117
+ # 示例代码
6118
+ from qtmodel import *
6119
+ cdb.check_member_tables(
6120
+ material_table=material_table,
6121
+ member_table=member_table,
6122
+ section_table=section_table,
6123
+ load_table=load_table,
6124
+ load_cases=["CB主力", "CB主加附"],
6125
+ )
6126
+ #Returns:
6127
+ ```