| 
 | 
 
 
 楼主 |
发表于 2025-2-13 16:26:14
|
显示全部楼层
 
 
 
 本帖最后由 xieeyawen 于 2025-2-14 16:35 编辑  
 
更新代码,可以取消已经高亮的nets,symbos,pins,避免干扰查看 
axlCmdRegister( "hl_null_pin" 'hl_null_pin) 
 
defun( hl_null_pin () 
let( 
        axlClearSelSet() ;清空选择 
        axlVisibleDesign( nil)  ;设计不可见 
        axlVisibleLayer( "PIN/TOP" t)  ;层可见,top面的pin 
        axlVisibleLayer( "PIN/BOTTOM" t) ;层可见,bottom面的pin 
        axlVisibleUpdate(t)  ;更新可见 
        axlDehighlightObject( axlDBGetDesign() -> nets, t)  ;取消网络颜色 
        axlDehighlightObject( axlDBGetDesign() -> symbols, t)  ;取消器件颜色 
        axlDehighlightObject( axlDBGetDesign() -> pins, t) ;取消pin颜色,避免干扰 
        axlSetFindFilter( ?enabled list("noall" "pins") ?onButtons list("noall" "pins")) ;在find对话框里只选中pins 
        lista=axlGetSelSet(axlAddSelectAll())         
        foreach( p lista  ;遍历lista这个list表,即选择的所有pins 
                when(p -> net -> name == "" axlHighlightObject(p t))  ;当网络为空,则把颜色赋给pins 
        ) 
        axlClearSelSet()  ;清空选择 
)) |   
 
 
 
 |