西莫电机圈

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 710|回复: 6

[分享] Scripting in Maxwell的一个例子,仅供参考

[复制链接]

该用户从未签到

发表于 2019-4-23 17:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
例子是copy自Scripting in Maxwell,仅供初学者参考,大牛们请绕道而行

直接复制代码到.vbs文件类型中,双击运行效果如图所示:

直接复制代码到.vbs文件类型中,双击运行效果如图所示:
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过

该用户从未签到

 楼主| 发表于 2019-4-23 17:25 | 显示全部楼层
Dim oAnsoftApp
Dim oDesktop
Dim oProject
Dim oDesign
Dim oEditor
Dim oModule
Set oAnsoftApp = CreateObject("AnsoftMaxwell.MaxwellScriptInterface")
Set oDesktop = oAnsoftApp.GetAppDesktop()
Set oProject = oDesktop.GetActiveProject()
Set oDesign = oProject.GetActiveDesign()
Set oEditor = oDesign.SetActiveEditor("3D Modeler")

Dim points(), segments()
Dim NumPoints, R(2), P(2), PointsPerTurn, Turns, Units

Pi = 4*Atn(1)

Units = InputBox("Select the units:"&Chr(13)& "(cm,mm,um,in,mil)", "Variable Helix","mil",50,50)

Select Case Units
Case "m"
Units = ""
Case "cm"
Case "mm"
Case "um"
Case "in"
Case "mil"
Case Else
MsgBox("Invalid Units - defaults to m")
Units = ""
End Select

Turns = InputBox("Select the number of turns (must be integer):","Variable Helix", 2,50,50)
PointsPerTurn = InputBox("Select the points per turn:", "Variable Helix",16,50,50)
R(0) = InputBox("Select the initial Radius: ", "Variable Helix",10,50,50)
R(1) = InputBox("Select the final Radius: ", "Variable Helix",10,50,50)
P(0) = InputBox("Select the initial Pitch: ", "Variable Helix", 4,50,50)
P(1) = InputBox("Select the final Pitch: ", "Variable Helix", 4,50,50)
NumPoints = Turns*PointsPerTurn

Redim points(NumPoints+1)
Redim segments(NumPoints)
points(0) = "NAME:PolylinePoints"
segments(0) = "NAME:PolylineSegments"

For n = 1 To (NumPoints+1)
Angle = (n-1)*2*Pi/PointsPerTurn
Radius = R(0) + ((n-1)/NumPoints)*(R(1)-R(0))
Pitch = P(0) + ((n-1)/NumPoints)*(P(1)-P(0))
Rise = (n-1)*Pitch/PointsPerTurn
XValue = cstr(Radius*cos(Angle)) & Units
YValue = cstr(Radius*sin(Angle)) & Units
ZValue = cstr(Rise) & Units
points(n) = Array("NAME:PLPoint", "X:=", XValue, "Y:=", YValue, "Z:=", ZValue)

If n<=NumPoints Then
segments(n) = Array("NAME:PLSegment", "SegmentType:=", "Line", "StartIndex:=", (n-1), "NoOfPoints:=", 2)
End If
Next

oEditor.CreatePolyline Array("NAME:PolylineParameters", "IsPolylineCovered:=", true, "IsPolylineClosed:=", false, points, segments), Array("NAME:Attributes", "Name:=", "Line_Helix","Flags:=", "", "Color:=", "(132 132 193)", "Transparency:=",0.4, "PartCoordinateSystem:=", "Global", "MaterialName:=", "vacuum", "SolveInside:=", true)

oEditor.CreateCircle Array("NAME:CircleParameters", "IsCovered:=", true, "XCenter:=",cstr(R(0))&Units, "YCenter:=", 0, "ZCenter:=", 0, "Radius:=", "1"&Units, "WhichAxis:=", "Y"), Array("NAME:Attributes", "Name:=", "Circle_Helix", "Flags:=", "", "Color:=", "(132 132 193)", "Transparency:=", 0.4, "PartCoordinateSystem:=", "Global", "MaterialName:=", "vacuum", "SolveInside:=", true)

oEditor.SweepAlongPath Array("NAME:Selections", "Selections:=", "Circle_Helix,Line_Helix"), Array("NAME:PathSweepParameters", "DraftAngle:=", "0deg", "DraftType:=", "Round", "TwistAngle:=", "0deg")
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

该用户从未签到

发表于 2019-4-23 18:58 | 显示全部楼层
能不能介绍一下模型的用途、代码的用途、以及如何运行,谢谢
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

该用户从未签到

 楼主| 发表于 2019-4-24 09:52 | 显示全部楼层
ayu 发表于 2019-4-23 18:58
能不能介绍一下模型的用途、代码的用途、以及如何运行,谢谢

直接复制代码到.vbs中,打开Maxwell软件,insert Maxwell 2D design,然后双击.vbs文件即可。
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

该用户从未签到

发表于 2019-4-24 14:43 | 显示全部楼层
小白一枚,麻烦再解答:.vbs保存在哪个文件夹?还是Ansys的某位置?谢谢
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

该用户从未签到

 楼主| 发表于 2019-4-25 09:49 | 显示全部楼层
ayu 发表于 2019-4-24 14:43
小白一枚,麻烦再解答:.vbs保存在哪个文件夹?还是Ansys的某位置?谢谢

我的是在桌面双击运行的,应该不必特定位置。双击运行之前要先打开Maxwell软件,并insert maxwell 2D模块,之后双击.vbs文件即可
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

该用户从未签到

发表于 2019-4-25 10:28 | 显示全部楼层
感谢指点
西莫电机论坛微信公众平台正式上线!★详情请点击★ 西莫电机论坛会员交流专用群欢迎您西莫电机论坛加群请注明论坛用户名及所从事专业,否则不予通过
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|西莫电机圈 ( 浙ICP备10025899号-3 浙公网安备:33028202000436号

GMT+8, 2024-11-23 19:28 , Processed in 0.091510 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表