DASY NEO52 D10.4 S14.6.14的接口不是API Browser给的那样

发布时间:2026/7/21 17:12:34
DASY NEO52 D10.4 S14.6.14的接口不是API Browser给的那样 不报错的测试# -*- coding: latin-1 -*- import Tool import PropertyWnd as pw import SEMCAD import PostPro # 想要读取*.da53 原始数据文件 file_prop pw.PropertyFileName( , .da53, DASY Files (*.da4 *.da5 *.da52 *.da53)|*.da4;*.da5;*.da52;*.da53||, DASY Measurement File ) class LoadDA53Tool(Tool.ExtensionTool): def __init__(self): Tool.ExtensionTool.__init__(self) self.results [] def GetName(self): return Load .da53 File (NEO) 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, , ): print ERROR: Cannot open DASY file:, path return configs PostPro.GetConfigurations() print * 60 print Loaded:, path print * 60 for ci, cfg in enumerate(configs): print [Config %d] %s % (ci, cfg.Name.encode()) for pi, proc in enumerate(cfg): print [Proc %d] %s % (pi, proc.Name.encode()) # Init this procedure proc_path %s:%d % (path, ci) if not PostPro.Init(proc_path, proc.Name.encode(), ): continue for ji, job in enumerate(proc): print [Job %d] %s (Type%s) % ( ji, job.Name.encode(), str(job.TypeID) ) # Try to load all quantities quants PostPro.GetQuantities(proc.Name.encode()) for q in quants: try: df PostPro.GetResult( job.Name.encode(), q.encode(), False ) if df: print ? Loaded:, q.encode() PostPro.CreateViewer( DASY Viewer, df ) self.results.append(df) except Exception as e: print ? Failed:, q.encode(), -, 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(LoadDA53Tool, LoadDA53Tool)