| OLD | NEW |
| (Empty) |
| 1 #!/usr/bin/tclsh | |
| 2 # | |
| 3 # This script displays the field of rectangles used by --testset rtree | |
| 4 # of speedtest1. Run this script as follows: | |
| 5 # | |
| 6 # rm test.db | |
| 7 # ./speedtest1 --testset rtree --size 25 test.db | |
| 8 # sqlite3 --separator ' ' test.db 'SELECT * FROM rt1' >data.txt | |
| 9 # wish show_speedtest1_rtree.tcl | |
| 10 # | |
| 11 # The filename "data.txt" is hard coded into this script and so that name | |
| 12 # must be used on lines 3 and 4 above. Elsewhere, different filenames can | |
| 13 # be used. The --size N parameter can be adjusted as desired. | |
| 14 # | |
| 15 package require Tk | |
| 16 set f [open data.txt rb] | |
| 17 set data [read $f] | |
| 18 close $f | |
| 19 canvas .c | |
| 20 frame .b | |
| 21 button .b.b1 -text X-Y -command refill-xy | |
| 22 button .b.b2 -text X-Z -command refill-xz | |
| 23 button .b.b3 -text Y-Z -command refill-yz | |
| 24 pack .b.b1 .b.b2 .b.b3 -side left | |
| 25 pack .c -side top -fill both -expand 1 | |
| 26 pack .b -side top | |
| 27 proc resize_canvas_to_fit {} { | |
| 28 foreach {x0 y0 x1 y1} [.c bbox all] break | |
| 29 set w [expr {$x1-$x0}] | |
| 30 set h [expr {$y1-$y0}] | |
| 31 .c config -width $w -height $h | |
| 32 } | |
| 33 proc refill-xy {} { | |
| 34 .c delete all | |
| 35 foreach {id x0 x1 y0 y1 z0 z1} $::data { | |
| 36 .c create rectangle $x0 $y0 $x1 $y1 | |
| 37 } | |
| 38 .c scale all 0 0 0.05 0.05 | |
| 39 resize_canvas_to_fit | |
| 40 } | |
| 41 proc refill-xz {} { | |
| 42 .c delete all | |
| 43 foreach {id x0 x1 y0 y1 z0 z1} $::data { | |
| 44 .c create rectangle $x0 $z0 $x1 $z1 | |
| 45 } | |
| 46 .c scale all 0 0 0.05 0.05 | |
| 47 resize_canvas_to_fit | |
| 48 } | |
| 49 proc refill-yz {} { | |
| 50 .c delete all | |
| 51 foreach {id x0 x1 y0 y1 z0 z1} $::data { | |
| 52 .c create rectangle $y0 $z0 $y1 $z1 | |
| 53 } | |
| 54 .c scale all 0 0 0.05 0.05 | |
| 55 resize_canvas_to_fit | |
| 56 } | |
| 57 refill-xy | |
| OLD | NEW |