Maxwell中使用python建立一个box

Maxwell中使用python建立一个box

在Maxwell中可以录制python的脚本,直接运行就可以了,但是目前想通过菜单模块化一个命令,那么就可以运行程序生成相应的方块了

效果如图所示,可以看到在tool的下方添加自己编辑的命令

Maxwell中使用python建立一个box的图1

点击build box01可以产生如下的窗口

Maxwell中使用python建立一个box的图2

点击创建就可以生成一个方块了

Maxwell中使用python建立一个box的图3

连续点击方块就可以连续创建,知道点击取消按钮

以此类推就可以创建其他的命令窗口了,关键的代码如下所示

# command中运行,
# 获取当前工作状态
# Email:fwz0703@163.com 
import ScriptEnv
ScriptEnv.Initialize("Ansoft.ElectronicsDesktop")
oDesktop.RestoreWindow()
oProject = oDesktop.GetActiveProject()
oDesign = oProject.GetActiveDesign()
oModule = oDesign.GetModule("BoundarySetup")
oEditor = oDesign.SetActiveEditor("3D Modeler")
# ------------------------------------------------------------------------
import os, sys, System, clr
from Microsoft.Win32 import Registry
clr.AddReference("System.Windows.Forms")
clr.AddReference("System.Drawing")
from System.Windows.Forms import *

# ===================头部  ====================
        # ========== 确定按钮 ==========
        btn_confirm = Button()
        btn_confirm.Text = "创建"  # 按钮文本
        btn_confirm.Location = Point(150, 250)  # 按钮位置(X,Y)
        btn_confirm.Size = Size(100, 35)  # 按钮尺寸(宽,高)
        btn_confirm.BackColor = Color.FromArgb(66, 139, 202)  # 蓝色背景
        btn_confirm.ForeColor = Color.White  # 白色文字
        btn_confirm.Click += self.OnConfirmClick  # 绑定点击事件
        self.Controls.Add(btn_confirm)


        # ==========取消按钮 ==========
        btn_cancel = Button()
        btn_cancel.Text = "取消"
        btn_cancel.Location = Point(270, 250)
        btn_cancel.Size = Size(100, 35)
        btn_cancel.BackColor = Color.FromArgb(217, 83, 79)  # 红色背景
        btn_cancel.ForeColor = Color.White
        btn_cancel.Click += self.OnCancelClick  # 绑定点击事件
        self.Controls.Add(btn_cancel)





class MaxwellWindow(Form):
    def __init__(self):
        # 窗口基础配置
        self.Text = "Maxwell 2024R2 - Box几何创建工具"
        self.Size = Size(480, 400)
        self.FormBorderStyle = FormBorderStyle.Sizable
        self.StartPosition = FormStartPosition.CenterScreen
        self.BackColor = Color.FromArgb(245, 245, 245)


        # 1. 分组框:Box基础参数
        grp_box_params = GroupBox()
        grp_box_params.Text = "Box几何参数(支持mm/cm/m单位)"
        grp_box_params.Location = Point(15, 15)
        grp_box_params.Size = Size(440, 200)
        self.Controls.Add(grp_box_params)


        # 位置参数 - X起始位置
        lbl_xpos = Label()
        lbl_xpos.Text = "X:"
        lbl_xpos.Location = Point(30, 40)
        lbl_xpos.Size = Size(80, 25)
        grp_box_params.Controls.Add(lbl_xpos)
        self.txt_xpos = TextBox()
        self.txt_xpos.Location = Point(110, 40)
        self.txt_xpos.Size = Size(100, 25)
        self.txt_xpos.Text = "0mm"
        grp_box_params.Controls.Add(self.txt_xpos)





# 程序入口(核心运行逻辑)
if __name__ == "__main__":
    # 创建窗口实例
    empty_form = MaxwellWindow()
    # 显示窗口(阻塞式,关闭窗口后才退出)
    empty_form.ShowDialog()
    # 释放窗口资源
    empty_form.Dispose()



登录后免费查看全文
立即登录
App下载
技术邻APP
工程师必备
  • 项目客服
  • 培训客服
  • 平台客服

TOP