|
本帖最后由 bigmomasd 于 2024-12-17 20:51 编辑
8 e ]+ f% K" W5 ?* R
: J4 j' r6 ]; O% [. ]1 t在tcl command界面输入- # 此脚本重构tooltip功能,使得鼠标悬停在器件上面的时候显示器件的封装信息6 U3 A& {' I: o0 s# b8 @! E1 t
- # 判断是否启用工具提示功能$ W0 C/ M% {8 o+ }$ ]& j
- proc CustomToolTipForPageObjectsEnabler {args} {
) K1 `9 N& L1 T e) _+ c% M( t - return true
: B9 d* S& E' q& V) F$ Q& D3 \5 @6 g - }
; a( c- R7 g. H: |! u
: B* B0 ]3 y8 J: Y. d- V: _( q6 m
4 B9 d6 d U8 z f1 V- # 获取器件的 PCB Footprint 属性值
* l6 ? Z9 ?( h; ` - proc GetCustomToolTipForPageObjects {pObj pSchOcc pName} {
# e2 q4 ~4 ]2 b9 ` r- e! {) m3 m - # 定义属性名
8 ~) s/ p/ v( l9 X9 ?6 R2 `+ h - set propName [DboTclHelper_sMakeCString "PCB Footprint"]" z9 ^( G! G! R& D* r- b
- set propValue [DboTclHelper_sMakeCString]" z" Z2 E% u( [. p5 X7 t8 d8 ]- q
" `& N+ a, N9 A# y0 t6 s4 S* R- # 获取属性值
* p1 C) U; ]- z4 Y - set status [$pObj GetEffectivePropStringValue $propName $propValue]
8 d0 r5 ~2 x& a3 {! a - $ r* L9 u3 F- d5 {8 p& I
- if {[$status OK]} {# E0 y5 f+ o* y& v: n0 E+ r3 X
- return "${pName} --- [DboTclHelper_sGetConstCharPtr $propValue]"5 C! O/ k' r" ?+ x- S4 u+ H& I/ n
- } else {! U' D2 S0 O8 h% I5 p. F4 P
- return "${pName}"; X, ]; ?, r+ F" l. s9 F& t
- }
; j) y" ~% ~" G. ^; E! M - }( p1 S5 ~+ ?0 I) Z( f
# U8 q! i6 w- ~$ y B$ d0 ~( y- # 调用 RegisterAction 并设置参数/ ~* |$ ^1 D1 _& I& r' H
- RegisterAction _cdnGetCustomToolTipForPageObjects \
8 J3 s6 G' P; } m Y - CustomToolTipForPageObjectsEnabler \
6 d: q& I; A- Q! m, O" W h - "" \
+ m5 s0 f* z2 H+ g9 O$ B' C3 A: z - GetCustomToolTipForPageObjects \
7 K& w, c/ a8 W4 i+ Y - schematic_page
复制代码 然后鼠标移动到器件上方,显示如下:; r& k! c* O1 q6 F
便可以成功显示器件的封装信息。
( ^2 [' M7 f* J& e" l/ x9 x( V/ n3 l- W; E3 E
如果要每次打开cadence就加载此功能,可以将上述代码保存至一个tcl文件中,如show_pcb_footprint_tooltip.tcl文件,然后保存到<Cadence_Installation>\tools\capture\tclscripts\capAutoLoad目录下,重新打开cadence即可。' ~( {1 Z: v2 o* s& @' c
P* R9 m3 |/ O0 l |
|