Cadence Skill 论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5512|回复: 3

[求助] 請求ASSIGN TEXT的SKILL

[复制链接]
发表于 2019-2-21 16:32:46 | 显示全部楼层 |阅读模式
如題,想請問是否有ASSIGN TEXT的SKILL
功能大致是說我點擊文字點選ASSIGN TEXT在選擇我要的NET
將此文字改成我選擇的NET NAME
希望有高手可以出手相助
謝謝!
 楼主| 发表于 2019-2-21 16:38:19 | 显示全部楼层
本帖最后由 jim357951 于 2019-2-21 18:04 编辑

或者有人知道那些函數是我需要用到的,我對函數認識的不多,目前想用下面2個函數來做編寫            
axlNetEcsetValueGet
axlDBChangeText

再透過CHANGE VIA NET的SKILL做修改,希望有人可以給些意見,




axlCmdRegister( "cvia" 'x_change_via_net)

defun( x_change_via_net ()
prog((p all vnet n_pad n_xy ch_via_logfile ch_via_logport flag)
               
        axlSetFindFilter( ?enabled
        list("noall" "vias") ?onButtons
        list("noall" "vias"))
            
        while( axlSelect()
                axlHighlightObject(axlGetSelSet())
                all = axlGetSelSet()
        )
        
        case( axlUIGetUserData()->doneState
        
        (done
                when( all == nil then
                        axlUIConfirm("You have select nothing!")
                        return(nil)
                )
               
                vnet = axlUIDataBrowse('NET '(RETRIEVE_OBJECT) "Please select net" t)
                when( vnet == nil return(nil))
               
                ch_via_logfile = axlTempFile()
                ch_via_logport = outfile(ch_via_logfile)
                flag = nil
                foreach( p all
                        n_pad = p -> name
                        n_xy = p -> xy
                        if( axlDBIsFixed(p) then
                                fprintf(ch_via_logport, "Ignore Change FIXED VIA @ %L\n" , p -> xy )
                                flag = t
                        else
                                when( axlDBCreateVia(n_pad n_xy car(vnet))
                                        axlDeleteObject(p)
                                )
                        )
                )
                close(ch_via_logport)
                when( flag axlUIWExpose(axlUIViewFileCreate(ch_via_logfile "Change Via Net Log" nil)))
        )
        
        (cancel
                axlUIWPrint(nil "cancel")
        )
        )
))

发表于 2019-3-4 14:06:15 | 显示全部楼层
就是创建同Net Name 的文字咯?
        axlClearSelSet()
        axlSetFindFilter(?enabled '("noall" "nets") ?onButtons '("noall" "nets"))
        net = car(axlGetSelSet(axlSingleSelectPoint()))
        textLayer = "BOARD GEOMETRY/SILKSCREEN_TOP"
        myorient = make_axlTextOrientation(
                ?textBlock "2" ;字号
                ?rotation 0.0 ;旋转角度
                ?mirrored nil ;是否镜像
                ?justify "left" ;对齐方式 "left" "center" "right"
        )
        axlDBCreateText(net->name axlGetLastEnterPoint() myorient textLayer nil)
 楼主| 发表于 2019-3-4 17:41:47 | 显示全部楼层
leilei4908 发表于 2019-3-4 14:06
就是创建同Net Name 的文字咯?
        axlClearSelSet()
        axlSetFindFilter(?enabled '("noall" "nets") ?onBu ...

這問題我在學習交流的板上已經獲得解決了
覆上鏈結
http://www.allegro-skill.com/for ... read&tid=146551
謝謝你的ˊ回覆~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|网站地图|Cadence Skill 论坛 ( 蜀ICP备13024417号 )

GMT+8, 2024-11-23 20:50 , Processed in 0.121545 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表