Changeset 5256 for branches/1.3/gui/scripts/flowvisviewer.tcl
- Timestamp:
- Apr 17, 2015 7:52:50 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/1.3/gui/scripts/flowvisviewer.tcl
r5255 r5256 100 100 private method ParseMarkersOption { tf markers } 101 101 private method QuaternionToView { q } { 102 foreach { _view( qw) _view(qx) _view(qy) _view(qz) } $q break102 foreach { _view(-qw) _view(-qx) _view(-qy) _view(-qz) } $q break 103 103 } 104 104 private method Rebuild {} … … 116 116 private method SlicerTip {axis} 117 117 private method ViewToQuaternion {} { 118 return [list $_view( qw) $_view(qx) $_view(qy) $_view(qz)]118 return [list $_view(-qw) $_view(-qx) $_view(-qy) $_view(-qz)] 119 119 } 120 120 private method WaitIcon { option widget } … … 218 218 # Initialize the view to some default parameters. 219 219 array set _view { 220 qw 0.853553221 qx -0.353553222 qy 0.353553223 qz 0.146447224 zoom 1.0225 xpan 0226 ypan0220 -qw 0.853553 221 -qx -0.353553 222 -qy 0.353553 223 -qz 0.146447 224 -xpan 0 225 -ypan 0 226 -zoom 1.0 227 227 } 228 228 set _arcball [blt::arcball create 100 100] … … 234 234 235 235 array set _settings [subst { 236 $this-qw $_view( qw)237 $this-qx $_view( qx)238 $this-qy $_view( qy)239 $this-qz $_view( qz)240 $this-zoom $_view( zoom)241 $this-xpan $_view( xpan)242 $this-ypan $_view( ypan)236 $this-qw $_view(-qw) 237 $this-qx $_view(-qx) 238 $this-qy $_view(-qy) 239 $this-qz $_view(-qz) 240 $this-zoom $_view(-zoom) 241 $this-xpan $_view(-xpan) 242 $this-ypan $_view(-ypan) 243 243 $this-arrows 0 244 244 $this-currenttime 0 … … 975 975 array set _view $location 976 976 } 977 set _settings($this-qw) $_view( qw)978 set _settings($this-qx) $_view( qx)979 set _settings($this-qy) $_view( qy)980 set _settings($this-qz) $_view( qz)981 set _settings($this-xpan) $_view( xpan)982 set _settings($this-ypan) $_view( ypan)983 set _settings($this-zoom) $_view( zoom)977 set _settings($this-qw) $_view(-qw) 978 set _settings($this-qx) $_view(-qx) 979 set _settings($this-qy) $_view(-qy) 980 set _settings($this-qz) $_view(-qz) 981 set _settings($this-xpan) $_view(-xpan) 982 set _settings($this-ypan) $_view(-ypan) 983 set _settings($this-zoom) $_view(-zoom) 984 984 set q [ViewToQuaternion] 985 985 $_arcball quaternion $q … … 987 987 SendCmd "camera reset" 988 988 PanCamera 989 SendCmd "camera zoom $_view( zoom)"989 SendCmd "camera zoom $_view(-zoom)" 990 990 } 991 991 # The active transfer function is by default the first component of … … 1257 1257 1258 1258 } 1259 set _settings($this-qw) $_view( qw)1260 set _settings($this-qx) $_view( qx)1261 set _settings($this-qy) $_view( qy)1262 set _settings($this-qz) $_view( qz)1263 set _settings($this-xpan) $_view( xpan)1264 set _settings($this-ypan) $_view( ypan)1265 set _settings($this-zoom) $_view( zoom)1259 set _settings($this-qw) $_view(-qw) 1260 set _settings($this-qx) $_view(-qx) 1261 set _settings($this-qy) $_view(-qy) 1262 set _settings($this-qz) $_view(-qz) 1263 set _settings($this-xpan) $_view(-xpan) 1264 set _settings($this-ypan) $_view(-ypan) 1265 set _settings($this-zoom) $_view(-zoom) 1266 1266 1267 1267 set q [ViewToQuaternion] … … 1270 1270 SendCmd "camera reset" 1271 1271 PanCamera 1272 SendCmd "camera zoom $_view( zoom)"1272 SendCmd "camera zoom $_view(-zoom)" 1273 1273 1274 1274 foreach dataobj [get] { … … 1350 1350 switch -- $option { 1351 1351 "in" { 1352 set _view( zoom) [expr {$_view(zoom)*1.25}]1353 set _settings($this-zoom) $_view( zoom)1354 SendCmd "camera zoom $_view( zoom)"1352 set _view(-zoom) [expr {$_view(-zoom)*1.25}] 1353 set _settings($this-zoom) $_view(-zoom) 1354 SendCmd "camera zoom $_view(-zoom)" 1355 1355 } 1356 1356 "out" { 1357 set _view( zoom) [expr {$_view(zoom)*0.8}]1358 set _settings($this-zoom) $_view( zoom)1359 SendCmd "camera zoom $_view( zoom)"1357 set _view(-zoom) [expr {$_view(-zoom)*0.8}] 1358 set _settings($this-zoom) $_view(-zoom) 1359 SendCmd "camera zoom $_view(-zoom)" 1360 1360 } 1361 1361 "reset" { 1362 1362 array set _view { 1363 qw 0.8535531364 qx -0.3535531365 qy 0.3535531366 qz 0.1464471367 zoom 1.01368 xpan01369 ypan01363 -qw 0.853553 1364 -qx -0.353553 1365 -qy 0.353553 1366 -qz 0.146447 1367 -xpan 0 1368 -ypan 0 1369 -zoom 1.0 1370 1370 } 1371 1371 if { $_first != "" } { … … 1379 1379 SendCmd "camera orient $q" 1380 1380 SendCmd "camera reset" 1381 set _settings($this-qw) $_view( qw)1382 set _settings($this-qx) $_view( qx)1383 set _settings($this-qy) $_view( qy)1384 set _settings($this-qz) $_view( qz)1385 set _settings($this-xpan) $_view( xpan)1386 set _settings($this-ypan) $_view( ypan)1387 set _settings($this-zoom) $_view( zoom)1381 set _settings($this-qw) $_view(-qw) 1382 set _settings($this-qx) $_view(-qx) 1383 set _settings($this-qy) $_view(-qy) 1384 set _settings($this-qz) $_view(-qz) 1385 set _settings($this-xpan) $_view(-xpan) 1386 set _settings($this-ypan) $_view(-ypan) 1387 set _settings($this-zoom) $_view(-zoom) 1388 1388 } 1389 1389 } … … 1391 1391 1392 1392 itcl::body Rappture::FlowvisViewer::PanCamera {} { 1393 #set x [expr ($_view(xpan)) / $_limits(xrange)] 1394 #set y [expr ($_view(ypan)) / $_limits(yrange)] 1395 set x $_view(xpan) 1396 set y $_view(ypan) 1393 set x $_view(-xpan) 1394 set y $_view(-ypan) 1397 1395 SendCmd "camera pan $x $y" 1398 1396 } … … 1433 1431 set q [$_arcball rotate $x $y $_click(x) $_click(y)] 1434 1432 QuaternionToView $q 1435 set _settings($this-qw) $_view( qw)1436 set _settings($this-qx) $_view( qx)1437 set _settings($this-qy) $_view( qy)1438 set _settings($this-qz) $_view( qz)1433 set _settings($this-qw) $_view(-qw) 1434 set _settings($this-qx) $_view(-qx) 1435 set _settings($this-qy) $_view(-qy) 1436 set _settings($this-qz) $_view(-qz) 1439 1437 SendCmd "camera orient $q" 1440 1438 … … 1469 1467 set x [expr $x / double($w)] 1470 1468 set y [expr $y / double($h)] 1471 set _view( xpan) [expr $_view(xpan) + $x]1472 set _view( ypan) [expr $_view(ypan) + $y]1469 set _view(-xpan) [expr $_view(-xpan) + $x] 1470 set _view(-ypan) [expr $_view(-ypan) + $y] 1473 1471 PanCamera 1474 set _settings($this-xpan) $_view( xpan)1475 set _settings($this-ypan) $_view( ypan)1472 set _settings($this-xpan) $_view(-xpan) 1473 set _settings($this-ypan) $_view(-ypan) 1476 1474 return 1477 1475 } … … 1486 1484 set _click(x) $x 1487 1485 set _click(y) $y 1488 set _view( xpan) [expr $_view(xpan) - $dx]1489 set _view( ypan) [expr $_view(ypan) - $dy]1486 set _view(-xpan) [expr $_view(-xpan) - $dx] 1487 set _view(-ypan) [expr $_view(-ypan) - $dy] 1490 1488 PanCamera 1491 set _settings($this-xpan) $_view( xpan)1492 set _settings($this-ypan) $_view( ypan)1489 set _settings($this-xpan) $_view(-xpan) 1490 set _settings($this-ypan) $_view(-ypan) 1493 1491 } 1494 1492 if { $option == "release" } { … … 2391 2389 0,0 $inner.view_l -anchor e -pady 2 \ 2392 2390 0,1 $inner.view -anchor w -pady 2 2391 blt::table configure $inner r0 -resize none 2393 2392 2394 2393 set row 1 … … 2398 2397 entry $inner.${tag} -font "Arial 9" -bg white \ 2399 2398 -textvariable [itcl::scope _settings($this-$tag)] 2400 bind $inner.${tag} <KeyPress-Return> \ 2401 [itcl::code $this camera set ${tag}] 2399 bind $inner.${tag} <Return> \ 2400 [itcl::code $this camera set -${tag}] 2401 bind $inner.${tag} <KP_Enter> \ 2402 [itcl::code $this camera set -${tag}] 2402 2403 blt::table $inner \ 2403 2404 $row,0 $inner.${tag}label -anchor e -pady 2 \ … … 2407 2408 } 2408 2409 2409 blt::table configure $inner c* r*-resize none2410 blt::table configure $inner c* -resize none 2410 2411 blt::table configure $inner c2 -resize expand 2411 2412 blt::table configure $inner r$row -resize expand … … 2560 2561 itcl::body Rappture::FlowvisViewer::SlicerTip {axis} { 2561 2562 set val [$itk_component(${axis}CutScale) get] 2562 # set val [expr {0.01*($val-50)2563 # *($_limits(${axis}max)-$_limits(${axis}min))2564 # + 0.5*($_limits(${axis}max)+$_limits(${axis}min))}]2565 2563 return "Move the [string toupper $axis] cut plane.\nCurrently: $axis = $val%" 2566 2564 } … … 2604 2602 } 2605 2603 "set" { 2606 set wh o[lindex $args 0]2607 set x $_settings($this-$wh o)2604 set what [lindex $args 0] 2605 set x $_settings($this-$what) 2608 2606 set code [catch { string is double $x } result] 2609 2607 if { $code != 0 || !$result } { 2610 set _settings($this-$wh o) $_view($who)2608 set _settings($this-$what) $_view($what) 2611 2609 return 2612 2610 } 2613 switch -- $wh o{2614 " xpan" - "ypan" {2615 set _view($wh o) $_settings($this-$who)2611 switch -- $what { 2612 "-xpan" - "-ypan" { 2613 set _view($what) $_settings(${this}${what}) 2616 2614 PanCamera 2617 2615 } 2618 " qx" - "qy" - "qz" - "qw" {2619 set _view($wh o) $_settings($this-$who)2616 "-qx" - "-qy" - "-qz" - "-qw" { 2617 set _view($what) $_settings(${this}${what}) 2620 2618 set q [ViewToQuaternion] 2621 2619 $_arcball quaternion $q 2622 2620 SendCmd "camera orient $q" 2623 2621 } 2624 " zoom" {2625 set _view($wh o) $_settings($this-$who)2626 SendCmd "camera zoom $_view( zoom)"2622 "-zoom" { 2623 set _view($what) $_settings(${this}${what}) 2624 SendCmd "camera zoom $_view($what)" 2627 2625 } 2628 2626 } … … 3007 3005 bottom "0.707107 0.707107 0 0" 3008 3006 } 3009 foreach name { qw qx qyqz } value $positions($side) {3007 foreach name { -qw -qx -qy -qz } value $positions($side) { 3010 3008 set _view($name) $value 3011 3009 } … … 3014 3012 SendCmd "camera orient $q" 3015 3013 SendCmd "camera reset" 3016 set _view( xpan) 0.03017 set _view( ypan) 0.03018 set _view( zoom) 1.03019 set _settings($this-xpan) $_view( xpan)3020 set _settings($this-ypan) $_view( ypan)3021 set _settings($this-zoom) $_view( zoom)3022 } 3014 set _view(-xpan) 0.0 3015 set _view(-ypan) 0.0 3016 set _view(-zoom) 1.0 3017 set _settings($this-xpan) $_view(-xpan) 3018 set _settings($this-ypan) $_view(-ypan) 3019 set _settings($this-zoom) $_view(-zoom) 3020 }
Note: See TracChangeset
for help on using the changeset viewer.