EDA365电子论坛网

标题: skill语言什么函数可以获取板子里面的器件位号和坐标信息,请各位大神指导下 [打印本页]

作者: Nick740492    时间: 2019-8-27 09:53
标题: skill语言什么函数可以获取板子里面的器件位号和坐标信息,请各位大神指导下
请问各位大师们,用什么函数可以获取板子中器件的名字和坐标信息啊。然后是否可以调用excel输出呢。望各位大师指导下。非常感谢。

作者: yff014250    时间: 2019-8-27 10:09
看看
作者: leilei4908    时间: 2019-8-27 10:31
comps = axlDBGetDesign()->components   ;获取到所有的器件
foreach(comp comps
      compName = comp->name   ;获取器件位号
      compXY = axlDBAltOrigin('origin comp)   ;获取器件坐标,可选'origin   'center   'pin1
)

作者: Nick740492    时间: 2019-8-27 10:31
用skill怎么看component report表格里面的属性啊。
作者: Nick740492    时间: 2019-8-27 10:33
leilei4908 发表于 2019-8-27 10:31
comps = axlDBGetDesign()->components   ;获取到所有的器件
foreach(comp comps
      compName = comp- ...

多谢大神指导,非常感谢~~~

作者: leilei4908    时间: 2019-8-27 10:34
至于调用excel输出
我的建议是利用 fprintf 创建.vbs文件,然后 axlHttp 执行.vbs文件
具体的,搜索一下 vbs操作excel 吧

作者: Nick740492    时间: 2019-8-27 10:39
leilei4908 发表于 2019-8-27 10:34
至于调用excel输出
我的建议是利用 fprintf 创建.vbs文件,然后 axlHttp 执行.vbs文件
具体的,搜索一下  ...

好的,多谢大师指导
作者: leilei4908    时间: 2019-8-27 10:40
Nick740492 发表于 2019-8-27 10:31
用skill怎么看component report表格里面的属性啊。

component report其实就是用skill收集并整理过的数据
是已经处理完的结果,只能把结果另存为,不能再用skill去读取
而且也没必要去读取,因为还不如直接在图上获取更快
你可以利用 comp->?? 看到器件所有的参数
然后选择你需要的内容,筛选并导出

作者: Nick740492    时间: 2019-8-27 10:40
leilei4908 发表于 2019-8-27 10:31
comps = axlDBGetDesign()->components   ;获取到所有的器件
foreach(comp comps
      compName = comp- ...

请问大师,我们在出component report里面不是有很多列吗?那些列里面的信息是怎么提取的啊。都分别用什么命令去控制提取啊。

作者: Nick740492    时间: 2019-8-27 10:43
leilei4908 发表于 2019-8-27 10:40
component report其实就是用skill收集并整理过的数据
是已经处理完的结果,只能把结果另存为,不能再用s ...

其实我这边是希望能够自动通过skill后台出好component report后,然后保存到相应的文件夹。这边就是不知道component report这边需要用什么命令去控制后台自动输出。请大师指导下,非常感谢

作者: leilei4908    时间: 2019-8-27 11:15
本帖最后由 leilei4908 于 2019-8-27 11:20 编辑
Nick740492 发表于 2019-8-27 10:43
其实我这边是希望能够自动通过skill后台出好component report后,然后保存到相应的文件夹。这边就是不知 ...

菜单栏上面的操作,可以用File Script Record 记录操作的指令
比如出component report的指令就是
reports "Component Report"
可以调用axlShell去执行
也就是
axlShell("reports \"Component Report\"")   ;\"表示字符串中的引号
或者创建.scr文件,重播
scr = outfile("component_report.scr")
fprintf(scr "setwindow pcb\n")  ;
fprintf(scr "reports \"Component Report\"\n")  ;导出Component Report
fprintf(scr "setwindow text\n")   ;
fprintf(scr "save\n")   ;
fprintf(scr "fillin %s\n" fileName)   ;这里可以定义输出的文件名,可以包含路径;但是要注意,导出的内容型是xml网页格式的
fprintf(scr "setwindow text\n")  ;
fprintf(scr "close \n")   ;
fprintf(scr "setwindow pcb\n")  ;
close(scr)   ;
axlShell("replay component_report")   ;重播scr文件
errset(deleteFile("component_report.scr"))   ;卸磨杀驴





作者: Nick740492    时间: 2019-8-27 12:29
leilei4908 发表于 2019-8-27 11:15
菜单栏上面的操作,可以用File Script Record 记录操作的指令
比如出component report的指令就是
repor ...

多谢大师的指导,非常感谢~~~

作者: Nick740492    时间: 2019-8-27 14:11
leilei4908 发表于 2019-8-27 11:15
菜单栏上面的操作,可以用File Script Record 记录操作的指令
比如出component report的指令就是
repor ...

多谢大师的指点,还有一点请教下大师,我们这边出gerber文件也可以这样处理吗?非常感谢~~

作者: leilei4908    时间: 2019-8-27 17:25
Nick740492 发表于 2019-8-27 14:11
多谢大师的指点,还有一点请教下大师,我们这边出gerber文件也可以这样处理吗?非常感谢~~

可以用录制重播的方式
但是要注意一点

录制重播只能依次执行下去,如果中间出现错误,也会继续执行,不会中断,不会报错

作者: Nick740492    时间: 2019-8-28 08:24
leilei4908 发表于 2019-8-27 17:25
可以用录制重播的方式
但是要注意一点

好的,明白了,多谢大师指导~~~




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2