abaqus旋转实例问题

各位大佬,我的代码想实现通过两点确定一个圆柱体实例,但是问题可能是出在abaqus的旋转语句上,希望各位大佬给出修改意见。

point1 = (1,1,2)
point2 = (2,2,3)
x = point1[0]
y = point1[1]
z = point1[2]
fibre_radius = 0.1
part_name = 'matrix'
length = sqrt((point2[0] - point1[0]) ** 2 + (point2[1] - point1[1]) ** 2 + (point2[2] - point1[2]) ** 2)
# create in Abaqus
myAssembly = myModel.rootAssembly
# create solid fibre
myPart3 = myModel.Part(name=part_name, dimensionality=THREE_D, type=DEFORMABLE_BODY)
mySketch3 = myModel.ConstrainedSketch(name="sketch-3", sheetSize=200)
mySketch3.CircleByCenterPerimeter(center=(0, 0), point1=(fibre_radius, 0))
myPart3.BaseSolidExtrude(sketch=mySketch3, depth=length)
instance_name='glue'
angle_y =atan2((point2[1]-point1[1]),(point2[0]-point1[0]))
angle_z =acos((point2[2]-point1[2])/length)


myAssembly.Instance(name=instance_name, part=myPart3, dependent=ON)
myAssembly.rotate(instanceList=(instance_name,), axisPoint=(0,0,0), axisDirection=(0, 0, 1),angle = angle_z)
myAssembly.rotate(instanceList=(instance_name,), axisPoint=(0,0,0), axisDirection=(1, 0, 0),angle = angle_y)

myAssembly.translate(instanceList=(instance_name, ), vector=(x,y,z))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值