ORCAD库中,有时我们希望某一属性能够显示或者隐藏,可以使用系统提供的函数来完成。
系统提供的函数为
make_display_prop {pLibName logf pPropName {dispType 1} {rotation 0} {color 48} {locx 0} {locy 0}}
使用前,tcl脚本头部添加上
package require capLibPropUtil 1.0
如下代码是我使用的代码,实现让Part Reference显示值。
proc ::LibUtilties::DisplayProperties { Prop } {
set lStatus [DboState]
set lNullObj NULL
set lSourceOlb $::LibUtilties::CurrentWorkOLB
set idx2 [string last "." $lSourceOlb]
set logf [string range $lSourceOlb 0 [expr ($idx2 - 1)] ]
set logf "${logf}_dispProp.log"
puts $lSourceOlb
puts $logf
set currentDateTime [clock format [clock seconds] -format "%Y-%m-%d %H:%M:%S"]
write_to_logfile "\nBegin to write log: $currentDateTime"
set lSession $::DboSession_s_pDboSession
DboSession -this $lSession
# force close lib first
set pLibName [DboTclHelper_sMakeCString $lSourceOlb]
set lLib [$lSession GetOpenLib $pLibName $lStatus]
if { $lLib != $lNullObj} {
puts "Library is open.\nRemoved library first"
$lSession RemoveLib $lLib
}
# set Prop "Part Reference"
# make_display_prop {pLibName logf pPropName {dispType 1} {rotation 0} {color 48} {locx 0} {locy 0}}
::capLibPropUtil::make_display_prop $lSourceOlb $logf $Prop 1 0 48 5 -10
puts "Done"
set currentDateTime [clock format [clock seconds] -format "%Y-%m-%d %H:%M:%S"]
write_to_logfile "End writing log: $currentDateTime\n"
}
set Prop "Part Reference"
::LibUtilties::DisplayProperties $Prop