[PD-cvs] pd/src desire.tk,1.1.2.600.2.258,1.1.2.600.2.259
chunlee
chunlee at users.sourceforge.net
Wed Aug 1 06:42:54 CEST 2007
Update of /cvsroot/pure-data/pd/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8753
Modified Files:
Tag: desiredata
desire.tk
Log Message:
slider is_log should be better now
Index: desire.tk
===================================================================
RCS file: /cvsroot/pure-data/pd/src/Attic/desire.tk,v
retrieving revision 1.1.2.600.2.258
retrieving revision 1.1.2.600.2.259
diff -C2 -d -r1.1.2.600.2.258 -r1.1.2.600.2.259
*** desire.tk 31 Jul 2007 04:43:34 -0000 1.1.2.600.2.258
--- desire.tk 1 Aug 2007 04:42:50 -0000 1.1.2.600.2.259
***************
*** 5738,5745 ****
--- 5738,5748 ----
set l [expr $@orient ?$@h:$@w]
set @value [expr $@val*$span/($l-1)/100]
+ #set t [expr $@val * [$self slider_ratio] * 0.01]
+ #set @value [expr $@min*exp($t)]
}
def Slider init {mess} {
super $mess
+ set @oposition $@min
$self update_value
}
***************
*** 5754,5757 ****
--- 5757,5766 ----
}
+ #the value/centipixel ratio
+ def Slider slider_ratio {} {
+ set diff [expr $@is_log ? log($@max/$@min) : ($@max-$@min)]
+ return [expr $diff / ($@orient ? ($@h-1) : ($@w-1))]
+ }
+
def Slider draw_knob {} {
mset {x1 y1 x2 y2} [$self bbox]
***************
*** 5805,5814 ****
$canvas focus= $self
set @click_at [list $x $y]
! set @ovalue $@value
set @rate [expr $f&1 ? 0.01 : 1.00]
if {!$@steady} {
mset {x1 y1 x2 y2} [$self bbox]
set @value [expr [$self calc $x $y $x1 $y2]*$@rate]
! set @ovalue $@value
netsend [list .$self float $@value]
}
--- 5814,5823 ----
$canvas focus= $self
set @click_at [list $x $y]
! set @oposition $@value
set @rate [expr $f&1 ? 0.01 : 1.00]
if {!$@steady} {
mset {x1 y1 x2 y2} [$self bbox]
set @value [expr [$self calc $x $y $x1 $y2]*$@rate]
! #set @oposition $@value
netsend [list .$self float $@value]
}
***************
*** 5828,5833 ****
mset {clx cly} $@click_at
set d [$self calc $x $y $clx $cly]
! set value [clip [expr $@ovalue+$d*$@rate] $@min $@max]
! netsend [list .$self float $value]
}
--- 5837,5846 ----
mset {clx cly} $@click_at
set d [$self calc $x $y $clx $cly]
! set t ($@oposition+$d*$@rate)
! set value [expr $@is_log ? [expr $@min*exp($t*[$self slider_ratio])] : $t]
! set out [clip $value $@min $@max]
! #set value [clip [expr $@oposition+$d*$@rate] $@min $@max]
! #set out [expr $@is_log ? [expr $@min*exp($value*[$self slider_ratio])] : $value]
! netsend [list .$self float $out]
}
More information about the Pd-cvs
mailing list