qtmodel 0.5.23__tar.gz → 0.5.25__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.5.23
4
- Summary: python modeling for qt 24/10/15
3
+ Version: 0.5.25
4
+ Summary: python modeling for qt 24/10/22
5
5
  Home-page: https://github.com/Inface0443/pyqt
6
6
  Author: dqy-zhj
7
7
  Author-email: 1105417715@qq.com
@@ -12,9 +12,9 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- # 最新版本 V0.5.23 - 2024.10.15
15
+ # 最新版本 V0.5.25 - 2024.10.22
16
16
  > pip install --upgrade qtmodel -i https://pypi.org/simple
17
- - 规范帮助文档
17
+ - 扩展荷载参数
18
18
  ## 项目管理
19
19
  ### update_bim
20
20
  刷新Bim模型信息
@@ -748,11 +748,23 @@ mdb.add_elastic_link(link_type=2,start_id=1,end_id=2)
748
748
  mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
749
749
  ```
750
750
  Returns: 无
751
+ ### add_master_slave_links
752
+ 添加主从约束
753
+ > 参数:
754
+ > node_ids:主节点号和从节点号,主节点号位于首位
755
+ > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
756
+ > group_name:边界组名
757
+ ```Python
758
+ # 示例代码
759
+ from qtmodel import *
760
+ mdb.add_master_slave_links(node_ids=[(1,2),(1,3),(4,5),(4,6)],boundary_info=[True,True,True,False,False,False])
761
+ ```
762
+ Returns: 无
751
763
  ### add_master_slave_link
752
764
  添加主从约束
753
765
  > 参数:
754
766
  > master_id:主节点号
755
- > slave_id:从节点号列表
767
+ > slave_id:从节点号,支持整数或整数型列表
756
768
  > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
757
769
  > group_name:边界组名
758
770
  ```Python
@@ -1258,7 +1270,7 @@ Returns: 无
1258
1270
  ### add_node_displacement
1259
1271
  添加节点位移
1260
1272
  > 参数:
1261
- > node_id:节点编号
1273
+ > node_id:节点编号,支持整型或整数型列表
1262
1274
  > case_name:荷载工况名
1263
1275
  > load_info:节点位移列表 [Dx,Dy,Dz,Rx,Ry,Rz]
1264
1276
  > group_name:荷载组名
@@ -1266,6 +1278,7 @@ Returns: 无
1266
1278
  # 示例代码
1267
1279
  from qtmodel import *
1268
1280
  mdb.add_node_displacement(case_name="荷载工况1",node_id=1,load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1281
+ mdb.add_node_displacement(case_name="荷载工况1",node_id=[1,2,3],load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1269
1282
  ```
1270
1283
  Returns: 无
1271
1284
  ### remove_nodal_displacement
@@ -1376,12 +1389,12 @@ Returns: 无
1376
1389
  > coord_system:坐标系 (默认3)
1377
1390
  > _1-整体坐标X 2-整体坐标Y 3-整体坐标Z 4-局部坐标X 5-局部坐标Y 6-局部坐标Z_
1378
1391
  > group_name:荷载组名
1379
- > load_list:荷载列表
1380
- > xy_list:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1392
+ > list_load:荷载列表
1393
+ > list_xy:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1381
1394
  ```Python
1382
1395
  # 示例代码
1383
1396
  from qtmodel import *
1384
- mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",load_list=[1000],xy_list=(0.2,0.5))
1397
+ mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",list_load=[1000],list_xy=(0.2,0.5))
1385
1398
  ```
1386
1399
  Returns: 无
1387
1400
  ### remove_plate_element_load
@@ -1,6 +1,6 @@
1
- # 最新版本 V0.5.23 - 2024.10.15
1
+ # 最新版本 V0.5.25 - 2024.10.22
2
2
  > pip install --upgrade qtmodel -i https://pypi.org/simple
3
- - 规范帮助文档
3
+ - 扩展荷载参数
4
4
  ## 项目管理
5
5
  ### update_bim
6
6
  刷新Bim模型信息
@@ -734,11 +734,23 @@ mdb.add_elastic_link(link_type=2,start_id=1,end_id=2)
734
734
  mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
735
735
  ```
736
736
  Returns: 无
737
+ ### add_master_slave_links
738
+ 添加主从约束
739
+ > 参数:
740
+ > node_ids:主节点号和从节点号,主节点号位于首位
741
+ > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
742
+ > group_name:边界组名
743
+ ```Python
744
+ # 示例代码
745
+ from qtmodel import *
746
+ mdb.add_master_slave_links(node_ids=[(1,2),(1,3),(4,5),(4,6)],boundary_info=[True,True,True,False,False,False])
747
+ ```
748
+ Returns: 无
737
749
  ### add_master_slave_link
738
750
  添加主从约束
739
751
  > 参数:
740
752
  > master_id:主节点号
741
- > slave_id:从节点号列表
753
+ > slave_id:从节点号,支持整数或整数型列表
742
754
  > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
743
755
  > group_name:边界组名
744
756
  ```Python
@@ -1244,7 +1256,7 @@ Returns: 无
1244
1256
  ### add_node_displacement
1245
1257
  添加节点位移
1246
1258
  > 参数:
1247
- > node_id:节点编号
1259
+ > node_id:节点编号,支持整型或整数型列表
1248
1260
  > case_name:荷载工况名
1249
1261
  > load_info:节点位移列表 [Dx,Dy,Dz,Rx,Ry,Rz]
1250
1262
  > group_name:荷载组名
@@ -1252,6 +1264,7 @@ Returns: 无
1252
1264
  # 示例代码
1253
1265
  from qtmodel import *
1254
1266
  mdb.add_node_displacement(case_name="荷载工况1",node_id=1,load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1267
+ mdb.add_node_displacement(case_name="荷载工况1",node_id=[1,2,3],load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1255
1268
  ```
1256
1269
  Returns: 无
1257
1270
  ### remove_nodal_displacement
@@ -1362,12 +1375,12 @@ Returns: 无
1362
1375
  > coord_system:坐标系 (默认3)
1363
1376
  > _1-整体坐标X 2-整体坐标Y 3-整体坐标Z 4-局部坐标X 5-局部坐标Y 6-局部坐标Z_
1364
1377
  > group_name:荷载组名
1365
- > load_list:荷载列表
1366
- > xy_list:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1378
+ > list_load:荷载列表
1379
+ > list_xy:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1367
1380
  ```Python
1368
1381
  # 示例代码
1369
1382
  from qtmodel import *
1370
- mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",load_list=[1000],xy_list=(0.2,0.5))
1383
+ mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",list_load=[1000],list_xy=(0.2,0.5))
1371
1384
  ```
1372
1385
  Returns: 无
1373
1386
  ### remove_plate_element_load
@@ -1,3 +1,40 @@
1
+ class DataHelper:
2
+ @staticmethod
3
+ def parse_to_num(str_list: list[str]) -> list[int]:
4
+ """
5
+ 将字符串转为列表
6
+ Args:
7
+ str_list:字符串列表,1to10by2形式
8
+ Return:
9
+ list[int]
10
+ """
11
+ res_list = []
12
+ for s in str_list:
13
+ if 'by' in s:
14
+ # 确保有 'to'
15
+ if 'to' not in s:
16
+ raise ValueError("If 'by' is present, 'to' must also be present.")
17
+ # 解析 'to' 和 'by'
18
+ to_index = s.index('to')
19
+ by_index = s.index('by')
20
+
21
+ start = int(s[:to_index])
22
+ end = int(s[to_index + 2:by_index])
23
+ step = int(s[by_index + 2:])
24
+ res_list.extend(list(range(start, end + 1, step)))
25
+ # 检查是否有 'to'
26
+ elif 'to' in s:
27
+ to_index = s.index('to')
28
+ start = int(s[:to_index])
29
+ end = int(s[to_index + 2:])
30
+
31
+ res_list.extend(list(range(start, end + 1)))
32
+ # 如果只有数字
33
+ else:
34
+ res_list.extend([int(s)])
35
+ return res_list
36
+
37
+
1
38
  class Node:
2
39
  def __init__(self, node_id: int, x: float, y: float, z: float):
3
40
  """
@@ -1232,12 +1232,30 @@ class Mdb:
1232
1232
  raise Exception(ex)
1233
1233
 
1234
1234
  @staticmethod
1235
- def add_master_slave_link(master_id: int = 1, slave_id: list[int] = None, boundary_info: list[bool] = None, group_name: str = "默认边界组"):
1235
+ def add_master_slave_links(node_ids: list[tuple[int, int]] = None, boundary_info: list[bool] = None, group_name: str = "默认边界组"):
1236
+ """
1237
+ 添加主从约束
1238
+ Args:
1239
+ node_ids:主节点号和从节点号,主节点号位于首位
1240
+ boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
1241
+ group_name:边界组名
1242
+ Example:
1243
+ mdb.add_master_slave_links(node_ids=[(1,2),(1,3),(4,5),(4,6)],boundary_info=[True,True,True,False,False,False])
1244
+ Returns: 无
1245
+ """
1246
+ try:
1247
+ qt_model.AddMasterSlaveLinks(nodeIds=node_ids, boundaryInfo=boundary_info, groupName=group_name)
1248
+ except Exception as ex:
1249
+ raise Exception(ex)
1250
+
1251
+ @staticmethod
1252
+ def add_master_slave_link(master_id: int = 1, slave_id: (Union[int, List[int]]) = None,
1253
+ boundary_info: list[bool] = None, group_name: str = "默认边界组"):
1236
1254
  """
1237
1255
  添加主从约束
1238
1256
  Args:
1239
1257
  master_id:主节点号
1240
- slave_id:从节点号列表
1258
+ slave_id:从节点号,支持整数或整数型列表
1241
1259
  boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
1242
1260
  group_name:边界组名
1243
1261
  Example:
@@ -1985,7 +2003,8 @@ class Mdb:
1985
2003
  raise Exception(ex)
1986
2004
 
1987
2005
  @staticmethod
1988
- def add_pre_stress(case_name: str = "", tendon_name: (Union[str, List[str]])= "", tension_type: int = 2, force: float = 1395000, group_name: str = "默认荷载组"):
2006
+ def add_pre_stress(case_name: str = "", tendon_name: (Union[str, List[str]]) = "", tension_type: int = 2,
2007
+ force: float = 1395000, group_name: str = "默认荷载组"):
1989
2008
  """
1990
2009
  添加预应力
1991
2010
  Args:
@@ -2058,17 +2077,18 @@ class Mdb:
2058
2077
  raise Exception(ex)
2059
2078
 
2060
2079
  @staticmethod
2061
- def add_node_displacement(node_id: int = 1, case_name: str = "", load_info: tuple[float, float, float, float, float, float] = None,
2080
+ def add_node_displacement(node_id: (Union[int, List[int]]) = None, case_name: str = "", load_info: tuple[float, float, float, float, float, float] = None,
2062
2081
  group_name: str = "默认荷载组"):
2063
2082
  """
2064
2083
  添加节点位移
2065
2084
  Args:
2066
- node_id:节点编号
2085
+ node_id:节点编号,支持整型或整数型列表
2067
2086
  case_name:荷载工况名
2068
2087
  load_info:节点位移列表 [Dx,Dy,Dz,Rx,Ry,Rz]
2069
2088
  group_name:荷载组名
2070
2089
  Example:
2071
2090
  mdb.add_node_displacement(case_name="荷载工况1",node_id=1,load_info=(1,0,0,0,0,0),group_name="默认荷载组")
2091
+ mdb.add_node_displacement(case_name="荷载工况1",node_id=[1,2,3],load_info=(1,0,0,0,0,0),group_name="默认荷载组")
2072
2092
  Returns: 无
2073
2093
  """
2074
2094
  try:
@@ -2219,8 +2239,8 @@ class Mdb:
2219
2239
  @staticmethod
2220
2240
  def add_plate_element_load(element_id: (Union[int, List[int]]) = 1, case_name: str = "",
2221
2241
  load_type: int = 1, load_place: int = 1, coord_system: int = 3,
2222
- group_name: str = "默认荷载组", load_list: (Union[float, List[float]]) = None,
2223
- xy_list: tuple[float, float] = None):
2242
+ group_name: str = "默认荷载组", list_load: (Union[float, List[float]]) = None,
2243
+ list_xy: tuple[float, float] = None):
2224
2244
  """
2225
2245
  添加版单元荷载
2226
2246
  Args:
@@ -2233,10 +2253,10 @@ class Mdb:
2233
2253
  coord_system:坐标系 (默认3)
2234
2254
  _1-整体坐标X 2-整体坐标Y 3-整体坐标Z 4-局部坐标X 5-局部坐标Y 6-局部坐标Z_
2235
2255
  group_name:荷载组名
2236
- load_list:荷载列表
2237
- xy_list:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
2256
+ list_load:荷载列表
2257
+ list_xy:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
2238
2258
  Example:
2239
- mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",load_list=[1000],xy_list=(0.2,0.5))
2259
+ mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",list_load=[1000],list_xy=(0.2,0.5))
2240
2260
  Returns: 无
2241
2261
  """
2242
2262
  try:
@@ -2244,12 +2264,12 @@ class Mdb:
2244
2264
  raise Exception("操作错误,板单元暂不支持弯矩荷载")
2245
2265
  if load_type == 1:
2246
2266
  qt_model.AddPlateElementLoad(elementId=element_id, caseName=case_name, loadType=load_type,
2247
- coordSystem=coord_system, groupName=group_name, loads=load_list)
2267
+ coordSystem=coord_system, groupName=group_name, loads=list_load)
2248
2268
  elif load_type == 3:
2249
2269
  if load_place == 0:
2250
2270
  load_type = load_type + 2
2251
2271
  qt_model.AddPlateElementLoad(elementId=element_id, caseName=case_name, loadType=load_type, loadPosition=load_place,
2252
- distanceList=xy_list, coordSystem=coord_system, groupName=group_name, loads=load_list)
2272
+ distanceList=list_xy, coordSystem=coord_system, groupName=group_name, loads=list_load)
2253
2273
  except Exception as ex:
2254
2274
  raise Exception(ex)
2255
2275
 
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: qtmodel
3
- Version: 0.5.23
4
- Summary: python modeling for qt 24/10/15
3
+ Version: 0.5.25
4
+ Summary: python modeling for qt 24/10/22
5
5
  Home-page: https://github.com/Inface0443/pyqt
6
6
  Author: dqy-zhj
7
7
  Author-email: 1105417715@qq.com
@@ -12,9 +12,9 @@ Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- # 最新版本 V0.5.23 - 2024.10.15
15
+ # 最新版本 V0.5.25 - 2024.10.22
16
16
  > pip install --upgrade qtmodel -i https://pypi.org/simple
17
- - 规范帮助文档
17
+ - 扩展荷载参数
18
18
  ## 项目管理
19
19
  ### update_bim
20
20
  刷新Bim模型信息
@@ -748,11 +748,23 @@ mdb.add_elastic_link(link_type=2,start_id=1,end_id=2)
748
748
  mdb.add_elastic_link(link_type=3,start_id=1,end_id=2,kx=1e6)
749
749
  ```
750
750
  Returns: 无
751
+ ### add_master_slave_links
752
+ 添加主从约束
753
+ > 参数:
754
+ > node_ids:主节点号和从节点号,主节点号位于首位
755
+ > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
756
+ > group_name:边界组名
757
+ ```Python
758
+ # 示例代码
759
+ from qtmodel import *
760
+ mdb.add_master_slave_links(node_ids=[(1,2),(1,3),(4,5),(4,6)],boundary_info=[True,True,True,False,False,False])
761
+ ```
762
+ Returns: 无
751
763
  ### add_master_slave_link
752
764
  添加主从约束
753
765
  > 参数:
754
766
  > master_id:主节点号
755
- > slave_id:从节点号列表
767
+ > slave_id:从节点号,支持整数或整数型列表
756
768
  > boundary_info:边界信息 [X,Y,Z,Rx,Ry,Rz] ture-固定 false-自由
757
769
  > group_name:边界组名
758
770
  ```Python
@@ -1258,7 +1270,7 @@ Returns: 无
1258
1270
  ### add_node_displacement
1259
1271
  添加节点位移
1260
1272
  > 参数:
1261
- > node_id:节点编号
1273
+ > node_id:节点编号,支持整型或整数型列表
1262
1274
  > case_name:荷载工况名
1263
1275
  > load_info:节点位移列表 [Dx,Dy,Dz,Rx,Ry,Rz]
1264
1276
  > group_name:荷载组名
@@ -1266,6 +1278,7 @@ Returns: 无
1266
1278
  # 示例代码
1267
1279
  from qtmodel import *
1268
1280
  mdb.add_node_displacement(case_name="荷载工况1",node_id=1,load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1281
+ mdb.add_node_displacement(case_name="荷载工况1",node_id=[1,2,3],load_info=(1,0,0,0,0,0),group_name="默认荷载组")
1269
1282
  ```
1270
1283
  Returns: 无
1271
1284
  ### remove_nodal_displacement
@@ -1376,12 +1389,12 @@ Returns: 无
1376
1389
  > coord_system:坐标系 (默认3)
1377
1390
  > _1-整体坐标X 2-整体坐标Y 3-整体坐标Z 4-局部坐标X 5-局部坐标Y 6-局部坐标Z_
1378
1391
  > group_name:荷载组名
1379
- > load_list:荷载列表
1380
- > xy_list:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1392
+ > list_load:荷载列表
1393
+ > list_xy:荷载位置信息 [IJ方向绝对距离x,IL方向绝对距离y] (仅集中荷载需要)
1381
1394
  ```Python
1382
1395
  # 示例代码
1383
1396
  from qtmodel import *
1384
- mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",load_list=[1000],xy_list=(0.2,0.5))
1397
+ mdb.add_plate_element_load(element_id=1,case_name="工况1",load_type=1,group_name="默认荷载组",list_load=[1000],list_xy=(0.2,0.5))
1385
1398
  ```
1386
1399
  Returns: 无
1387
1400
  ### remove_plate_element_load
@@ -7,10 +7,10 @@ with open("README.md", "r", encoding="utf-8") as fh:
7
7
  # twine upload dist/*
8
8
  setup(
9
9
  name="qtmodel",
10
- version="0.5.23",
10
+ version="0.5.25",
11
11
  author="dqy-zhj",
12
12
  author_email="1105417715@qq.com",
13
- description="python modeling for qt 24/10/15 ",
13
+ description="python modeling for qt 24/10/22 ",
14
14
  long_description=long_description, # 使用读取的 README.md 文件内容
15
15
  long_description_content_type="text/markdown", # 指明内容格式为markdown
16
16
  url="https://github.com/Inface0443/pyqt",
File without changes
File without changes
File without changes