選擇位於'L1_pkg'層的Pin,執行下列腳本便可以選擇落在選中的Pin的所有Bondwires。這個功能可以用來協助開發分離bondwires腳位的工具(見上一篇)。
import ScriptEnv
ScriptEnv.Initialize("Ansoft.ElectronicsDesktop")
oDesktop.RestoreWindow()
oProject = oDesktop.GetActiveProject()
oDesign = oProject.GetActiveDesign()
oLayout = oDesign.GetActiveEditor()
sele = oLayout.GetSelections()
AddWarningMessage(str(sele))
#polygon1 = oLayout.GetPolygon(sele[0])
toselect = []
for i in oLayout.FindObjects('Type', 'bondwire'):
p1 = oLayout.Point()
x, y = oLayout.GetPropertyValue('BaseElementTab',i, 'Pt1').split(',')
p1 = p1.Set(float(x)*1e-3 ,float(y)*1e-3)
obj = oLayout.FindObjectsByPoint(p1, 'L1_pkg')
if set(obj).intersection(set(sele)):
AddWarningMessage(str(i))
toselect.append(i)
oLayout.Select(toselect)
|
(圖一)選擇Pin,接著執行腳本 |
|
(圖二)落在被選中的Pin上的bondwires被選擇出來 |
沒有留言:
張貼留言