测试DASY5 SEMCADX Python的接口

发布时间:2026/7/22 21:25:22

测试DASY5 SEMCADX Python的接口 以下代码不报错# -*- coding: latin-1 -*- Load .da53 file in DASY NEO52 / SEMCAD X v14.6 No DASY module required. import Tool import PropertyWnd as pw import SEMCAD import PostPro file_prop pw.PropertyFileName( , .da53, DASY Files (*.da4 *.da5 *.da52 *.da53)|*.da4;*.da5;*.da52;*.da53||, DASY Measurement File ) class LoadDA53NeoTool(Tool.ExtensionTool): def __init__(self): Tool.ExtensionTool.__init__(self) self.results [] def GetName(self): return Load .da53 (NEO52) def GetCategory(self): return PostPro def GetCategoryMenu(self): return DASY| def Start(self): SEMCAD.SetViewerMode() self.CreateDialog() wnd self.GetPropertiesWnd() wnd.AddCategory(1, DASY File, -1) wnd.AddProperty(1, File, file_prop, ) wnd.Select(file_prop) self.Update() def Stop(self): self.Exit() def LoadFile(self, path): if not PostPro.Init(path, , ): SEMCAD.MessageBox( Cannot open DASY file:\n%s % path, SEMCAD.MsgType.Ok ) return configs PostPro.GetConfigurations() print * 60 print Loaded:, path print * 60 for ci, cfg in enumerate(configs): cfg_name cfg.Name.encode() print [Config %d] %s % (ci, cfg_name) for pi, proc in enumerate(cfg): proc_name proc.Name.encode() print [Proc %d] %s % (pi, proc_name) proc_path %s:%d % (path, ci) if not PostPro.Init(proc_path, proc_name, ): continue for ji, job in enumerate(proc): job_name job.Name.encode() print [Job %d] %s (TypeID%s) % ( ji, job_name, job.TypeID ) quants PostPro.GetQuantities(proc_name) for q in quants: qname q.encode() try: df PostPro.GetResult( job_name, qname, False ) if df: print ✔ Loaded:, qname PostPro.CreateViewer( DASY Viewer, df ) self.results.append(df) except Exception as e: print ✘ Failed:, qname, -, str(e) def OnEvent(self, event): if event.ID Tool.Done: path file_prop.GetValue() if path: self.LoadFile(path) self.Exit() elif event.ID Tool.Cancel: self.Exit() elif event.ID Tool.ValueChanged: self.Update() def CanDone(self): return file_prop.GetValue() ! def CanNext(self): return False def CanBack(self): return False def HasPickList(self): return False Tool.Register(LoadDA53NeoTool, LoadDA53NeoTool)打开SEMACADX的初始化控制台日志SEMCAD Initialized. Loaded 2D Viewers User Interfaces Loaded Averaging Field Evaluator Loaded Averaged SAR Evaluator Loaded Conform Field Viewer Loaded DASY5 PostPro Loaded Electromagnetic Field Evaluators Loaded Field Viewers User Interfaces Loaded HDF5 PostPro Data Extractors Loaded Opt Evaluators Loaded Thermo Evaluators Python 2.6.2 (r262:71600, Jun 15 2009, 11:52:40) [MSC v.1500 32 bit (Intel)] Version 14.6.14 (7501) (Deployment Build) Running startup.py Loading Tools from C:/Program Files (x86)/DASY NEO52 D10.4 S14.6.14/SEMCAD-X-PostPro/stdscriptsTraceback (most recent call last): File string, line 1, in module File C:/Program Files (x86)/DASY NEO52 D10.4 S14.6.14/SEMCAD-X-PostPro/stdscripts/Lib\RollbackImporter.py, line 31, in _import_hook result apply(self.realImport, (name, globals, locals, fromlist, level)) File C:/Program Files (x86)/DASY NEO52 D10.4 S14.6.14/SEMCAD-X-PostPro/stdscripts\PiXscan.py, line 12, in module from DASY import * File C:/Program Files (x86)/DASY NEO52 D10.4 S14.6.14/SEMCAD-X-PostPro/stdscripts/Lib\RollbackImporter.py, line 31, in _import_hook result apply(self.realImport, (name, globals, locals, fromlist, level)) ImportError: No module named DASY Error: Failed to load extension PiXscan.py ( 21 Tools loaded ) Loading Tools from C:/Users/sar1/Documents/SEMCAD/userscripts/( 0 Tools loaded ) Settings file not found.导入*.da53文件后的控制台日志Loading 3DS model Model Optimized: false Loading 3DS model Model Optimized: false Loading 3DS model Model Optimized: false Loading 3DS model Model Optimized: false Loading 3DS model Model Optimized: false Loading 3DS model Model Optimized: false整理思路1.初始化工具 2.从*.da53文件导入模型 3.Area Scan的SAR(x,y,z,f0)和Zoom Scan的1g/10g Averaged SAR到处数据生成Plot 4.导出html的SAR报告

相关新闻