EDA365电子论坛网

标题: skill问题请教 [打印本页]

作者: Liu9611    时间: 2024-1-19 16:38
标题: skill问题请教
如题,想写一个检查通孔焊盘超过3层连接的skill。目前遇到几个问题
1、由dbid->layer获取的的参数是什么形式的?类似方式获取的参数形式怎样查找,翻了一下help文件没找到,还请各位大佬指点!

2、如何将string转换成list 例如 “aaa”转换成list(aaa)。
还望各位大佬指点,谢谢!

作者: Sleep_xz    时间: 2024-1-19 17:56
这个太难了,找找看有没有现成的,用他们的例子改一改
作者: aarom    时间: 2024-1-19 19:39
提示: 作者被禁止或删除 内容自动屏蔽
作者: w_w    时间: 2024-1-20 15:05
本帖最后由 w_w 于 2024-1-20 15:07 编辑

用axlDBGetConnect函数,获取焊盘的连接list,然后对list进行循环确认,objType是否为shape,是就n=n+1,然后对n进行判断是否大于3.此方法也有缺陷,会把泪滴也当作shape连接。会有误报,确认下就行了。

作者: aarom    时间: 2024-1-21 01:02
提示: 作者被禁止或删除 内容自动屏蔽
作者: Liu9611    时间: 2024-1-22 08:43
aarom 发表于 2024-1-19 19:39
1.首先請問大佬您用什麼判斷是否連接呢?? (這是基本條件, 負片是更好判斷,想好再說吧)

2.dbid->layer 的 ...

目前的想法是使用axlDBGetConnect获取DBID,然后通过循环将每个PIN的连接参数放到一个LIST中,最后通过unique去除LIST中的重复项。
作者: Liu9611    时间: 2024-1-22 08:45
Liu9611 发表于 2024-1-22 08:43
目前的想法是使用axlDBGetConnect获取DBID,然后通过循环将每个PIN的连接参数放到一个LIST中,最后通过un ...

最后通过length去判断是否大于三层
作者: Liu9611    时间: 2024-1-22 09:56
Liu9611 发表于 2024-1-22 08:45
最后通过length去判断是否大于三层


我目前是通过选取PIN的方式去获取连接方式,获取出来的DBID是不一样的。

作者: Liu9611    时间: 2024-1-22 09:58
Liu9611 发表于 2024-1-22 09:56
我目前是通过选取PIN的方式去获取连接方式,获取出来的DBID是不一样的。

Skill > axlSetFindFilter(?enabled (list "LINESEGS" "PINS") ?onButtons (list "PINS"))
t
Skill > axlSelect(?prompt "First Please select 0402 Package")
First Please select 0402 Package
last pick:  245.0620 118.1720
t
Skill > pin_dbid = car(axlGetSelSet())
dbid:237918640
Skill > connect_pin= axlDBGetConnect(pin_dbid t)
(dbid:231521048 dbid:231527472 dbid:231529320 dbid:218714232 dbid:218716968
    dbid:218722256 dbid:241760856 dbid:241760960 dbid:241761064
)

以上是调试框输出的内容


作者: aarom    时间: 2024-1-24 15:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: db-_-    时间: 2024-1-24 18:33
w_w 发表于 2024-1-20 15:05
用axlDBGetConnect函数,获取焊盘的连接list,然后对list进行循环确认,objType是否为shape,是就n=n+1,然 ...

4楼这个看着没毛病。

作者: aarom    时间: 2024-1-24 22:44
提示: 作者被禁止或删除 内容自动屏蔽




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