许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  用abaqus画轴的Python代码,直接拿去改参数就能用

用abaqus画轴的Python代码,直接拿去改参数就能用

阅读数 2
点赞 0
article_banner


abaqus可以用Python脚本来参数化绘制部件,并且体验比SW的宏要好,SW的宏是VBA语言,定义变量很麻烦并且运行宏文件不稳定,常常只是闪一下,根本无法执行,另外,宏文件不能用VS code正常打开

abaqus导出的部件可以是sat格式,此格式可以用SW打开

用abaqus画轴的Python代码

from abaqus import * from abaqusConstants import * from caeModules import * # 轴一共有几段 num = 7 # 定义列表L和D,用于存储长度和直径数据 L = [0] * (num + 1) D = [0] * (num + 1) # 给每一段的长度赋值,0到1为第一段的长 L=[0,32,5,43,11,29,75,60] # 给列表D赋值,D[i]表示第i段的直径 D=[0,40,48,42,41,40,38,33] sum_L = L[0] #必须修改这个大致尺寸,才能容纳构造线

s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',      

sheetSize=2*sum(L)+1)

g, v, d, c = s.geometry,

s.vertices,

s.dimensions,

s.constraints

s.setPrimaryObject(option=STANDALONE)

s.ConstructionLine(point1=(0.0, 0.0),

point2=(0.0, sum(L)))

for i in range(0,num):    

s.Line(point1=(D[i]/2,sum_L),

point2=(D[i+1]/2,sum_L))    

s.Line(point1=(D[i+1]/2,sum_L),

point2=(D[i+1]/2,sum_L+L[i+1]))    

sum_L+=L[i+1] s.Line(point1=(D[num]/2,sum_L), point2=(0,sum_L))  

s.Line(point1=(0,sum_L), point2=(0,0))#要完全封闭截面

p = mdb.models['Model-1'].Part(name='Part-2', dimensionality=THREE_D,      

type=DEFORMABLE_BODY)

p = mdb.models['Model-1'].parts['Part-2']

p.BaseSolidRevolve(sketch=s, angle=360.0, flipRevolveDirection=OFF)

s.unsetPrimaryObject() del mdb.models['Model-1'].sketches['__profile__']

import part

mdb.models['Model-1'].parts['Part-2'].writeAcisFile(     "C:/Users/dell/Desktop/zhou.sat", 26) 这里注意替换为自己的路径


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空