Merge branch 'StefanSchippers:master' into master

This commit is contained in:
Chayan Deb 2025-03-21 06:36:27 +00:00 committed by GitHub
commit 5fc62e6474
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 35 additions and 17 deletions

View File

@ -709,32 +709,40 @@ proc spaces {n {indent 4}} {
# complex number operators
# a + b
proc cadd {a b} {
lassign $a ra ia
lassign $b rb ib
# lassign $a ra ia
# lassign $b rb ib
foreach {ra ia} $a break
foreach {rb ib} $b break
set c [list [expr {$ra + $rb}] [expr {$ia + $ib}]]
return $c
}
# a - b
proc csub {a b} {
lassign $a ra ia
lassign $b rb ib
# lassign $a ra ia
# lassign $b rb ib
foreach {ra ia} $a break
foreach {rb ib} $b break
set c [list [expr {$ra - $rb}] [expr {$ia - $ib}]]
return $c
}
# a * b
proc cmul {a b} {
lassign $a ra ia
lassign $b rb ib
# lassign $a ra ia
# lassign $b rb ib
foreach {ra ia} $a break
foreach {rb ib} $b break
set c [list [expr {$ra * $rb - $ia * $ib}] [expr {$ra * $ib + $rb * $ia}]]
return $c
}
# a / b
proc cdiv {a b} {
lassign $a ra ia
lassign $b rb ib
# lassign $a ra ia
# lassign $b rb ib
foreach {ra ia} $a break
foreach {rb ib} $b break
set ra [expr {double($ra)}]
set ia [expr {double($ia)}]
set rb [expr {double($rb)}]
@ -747,7 +755,8 @@ proc cdiv {a b} {
# 1/b
proc cinv {b} {
lassign $b rb ib
# lassign $b rb ib
foreach {rb ib} $b break
set rb [expr {double($rb)}]
set ib [expr {double($ib)}]
set m [expr {$rb * $rb + $ib * $ib}]
@ -757,13 +766,15 @@ proc cinv {b} {
# return real component
proc creal {a} {
lassign $a ra ia
# lassign $a ra ia
foreach {ra ia} $a break
return $ra
}
# return imaginary component
proc cimag {a} {
lassign $a ra ia
# lassign $a ra ia
foreach {ra ia} $a break
return $ia
}
@ -4928,7 +4939,8 @@ proc insert_symbol_update_dirs {} {
set insert_symbol(dirs) {}
foreach f $files {
lassign $f ff fff
# lassign $f ff fff
foreach {ff fff} $f break ;# pre-tcl8.5
lappend insert_symbol(dirtails) $ff
lappend insert_symbol(dirs) $fff
}
@ -4983,7 +4995,8 @@ proc insert_symbol_filelist {} {
set filelist {}
set insert_symbol(fullpathlist) {}
foreach f $files {
lassign $f ff fff
# lassign $f ff fff
foreach {ff fff} $f break ;# pre-tcl8.5
lappend filelist $ff
lappend insert_symbol(fullpathlist) $fff
}
@ -5313,10 +5326,15 @@ proc schpins_to_sympins {} {
set texty0 [expr {$y0-4}]
set textflip [expr {$flip}]
}
lassign [rotation $x0 $y0 $linex1 $liney1 $rot $flip] linex1 liney1
lassign [rotation $x0 $y0 $linex2 $liney2 $rot $flip] linex2 liney2
lassign [order $linex1 $liney1 $linex2 $liney2] linex1 liney1 linex2 liney2
lassign [rotation $x0 $y0 $textx0 $texty0 $rot $flip] textx0 texty0
## lassign not available pre-tck8.5
# lassign [rotation $x0 $y0 $linex1 $liney1 $rot $flip] linex1 liney1
foreach {linex1 liney1} [rotation $x0 $y0 $linex1 $liney1 $rot $flip] break
# lassign [rotation $x0 $y0 $linex2 $liney2 $rot $flip] linex2 liney2
foreach {linex2 liney2} [rotation $x0 $y0 $linex2 $liney2 $rot $flip] break
# lassign [order $linex1 $liney1 $linex2 $liney2] linex1 liney1 linex2 liney2
foreach {linex1 liney1 linex2 liney2} [order $linex1 $liney1 $linex2 $liney2] break
# lassign [rotation $x0 $y0 $textx0 $texty0 $rot $flip] textx0 texty0
foreach {textx0 texty0} [rotation $x0 $y0 $textx0 $texty0 $rot $flip] break
puts $fd "B 5 $pinx1 $piny1 $pinx2 $piny2 \{name=$lab dir=$dir\}"
puts $fd "L 4 $linex1 $liney1 $linex2 $liney2 \{\}"
puts $fd "T \{$lab\} $textx0 $texty0 $rot $textflip 0.2 0.2 \{\}"