利用Python在Workbench的DM中进行几何操作/运算【转发】

2017-07-03  by:CAE仿真在线  来源:互联网



编者按


文中所出现的代码来自于ANSYS帮助手册,需要深究的话可以多研究研究手册的内容。

Workbench几何部分除了建模还包括对几何模型的一些操作,这些也能够用Python和API函数完成。

正文


Workbench的几何建模程序DesignModeler(DM)虽不支持APDL参数化建模,但是却支持Python和C#,大量的API函数也是基于IronPython的。灵活运用Python和DM中的API函数接口,可实现模型的参数化以及模型的一些操作,比如拉伸、旋转、布尔运算等。

本次对这些几何模型的操作作简单阐述。

利用Python和API函数可进行的操作如下图所示,熟悉Workbench几何建模的应该对这些都不陌生。

利用Python在Workbench的DM中进行几何操作/运算【转发】ansys workbanch图片1

图1

这些API函数的入口为:ExtAPI.DataModel.GeometryBuilder.Operations。

(1)拉伸操作

利用Python和API函数进行拉伸操作的代码如下:

def Ongenerate(feature,function):

# 定义函数

length = 0.3

# 定义变量

bodies = []

# 定义空列表

builder = ExtAPI.DataModel.GeometryBuilder

# 获取入口,并赋值给变量builder

polygon=builder.Primitives.Sheet.CreatePolygon([0.,0.,3*length,0.,0.,2.*length,length,0.,2.*length])

# 通过CreatePolygon创建三角形的三条边

polygon_generated = polygon.Generate()

# 生成线体(对应workbenchgenerate操作)

extrude = builder.Operations.CreateExtrudeOperation([0.,1.,0.],length/2.)

# 利用CreateExtrudeOperation函数进行拉伸操作,定义方向向量和拉伸长度

bodies.Add(extrude.ApplyTo(polygon_generated)[0])

# 定义拉伸的对象为前面生成的线体

feature.Bodies = bodies

# 生成的拉伸模型赋值给变量

feature.MaterialType = MaterialTypeEnum.Add

# 类型为add

return True


上面代码注意一个: bodies.Add(extrude.ApplyTo(polygon_generated)[0]),其中有一个[0],这是因为ApplyTo()会返回一个体列表,[0]表示这个列表的第一个体。

生成的图形如下:

利用Python在Workbench的DM中进行几何操作/运算【转发】ansys workbanch图片2

图2

(2)转换

利用Python和API函数进行移动操作的代码如下:

def Ongenerate(feature,function):

# 定义函数

length = 0.3

# 定义变量

bodies = []

# 定义空列表

builder = ExtAPI.DataModel.GeometryBuilder

# 获取入口,并赋值

polygon = builder.Primitives.Sheet.CreatePolygon([0.,0.,2.*length,0.,0.,1.*length,length,0.,0.7])

# 通过CreatePolygon函数创建线体

polygon_generated = polygon.Generate()

# 生成片体

body = builder.Operations.Tools.EdgesToWireBody(polygon_generated.Edges);

# 利用函数EdgesToWireBody将片体的边转换为线体

bodies.Add(body)

# 添加到列表

feature.Bodies = bodies

# 赋值

feature.MaterialType = MaterialTypeEnum.Add

# 定义类型为Add

return True


最终如下所示,将一个三角形的面转换为三条边。

利用Python在Workbench的DM中进行几何操作/运算【转发】ansys workbanch图片3

图3


转自公众号:CAE技术分享

开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:利用Python在Workbench的DM中进行几何操作/运算【转发】 Ansys有限元培训 Ansys workbench培训 ansys视频教程 ansys workbench教程 ansys APDL经典教程 ansys资料下载 ansys技术咨询 ansys基础知识 ansys代做 Fluent、CFX流体分析 HFSS电磁分析 Abaqus培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com