- Timestamp:
- Mar 28, 2014 8:23:09 PM (10 years ago)
- Location:
- trunk/gui/scripts
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gui/scripts/map.tcl
r4292 r4294 123 123 } 124 124 $_tree set $child "type" $layerType 125 foreach key { label description url } {125 foreach key { label description opacity status style url } { 126 126 $_tree set $child $key [$layers get $layer.$key] 127 127 } -
trunk/gui/scripts/mapviewer.tcl
r4288 r4294 101 101 private method GetImage { args } 102 102 private method PanCamera {} 103 private method SetObjectStyle { dataobj layer } 103 private method SetLayerStyle { dataobj layer } 104 private method SetMapStyle { style } 104 105 private method SetOpacity { dataset } 105 106 private method SetOrientation { side } … … 268 269 269 270 BuildLayerTab 271 BuildTerrainTab 270 272 BuildCameraTab 271 273 … … 596 598 array unset hints 597 599 array set hints [$dataobj hints] 598 if { ![info exists overall(type)] } { 600 if { ![info exists _mapsettings(style)] } { 601 set _mapsettings(style) $hints(style) 602 } 603 if { ![info exists _mapsettings(type)] } { 599 604 set _mapsettings(type) $hints(type) 600 605 } elseif { $hints(type) != $_mapsettings(type) } { … … 620 625 } 621 626 if { $_haveTerrain } { 622 if { ![$itk_component(main) exists "Terrain Settings"] } { 623 if { [catch { BuildTerrainTab } errs ] != 0 } { 624 puts stderr "errs=$errs" 625 } 627 if { [$itk_component(main) exists "Terrain Settings"] } { 628 # TODO: Enable controls like vertical scale that only have 629 # an effect when terrain is present 626 630 } 627 631 } … … 861 865 862 866 if { $_mapsettings(type) == "geocentric" } { 863 SendCmd [list map reset "geocentric"]867 SendCmd "map reset geocentric" 864 868 } else { 865 869 set proj $_mapsettings(projection) 866 if { $_mapsettings(extents) == "" } { 870 if { $proj == "" } { 871 SendCmd "map reset projected global-mercator" 872 } elseif { $_mapsettings(extents) == "" } { 867 873 SendCmd [list map reset "projected" $proj] 868 874 } else { … … 871 877 } 872 878 } 873 if { $_haveTerrain } { 879 # FIXME: need to specify initial layer in one command 880 SendCmd "map layer delete base" 881 if { [info exists _mapsettings(style)] } { 882 SetMapStyle $_mapsettings(style) 883 } else { 874 884 FixSettings terrain-edges terrain-lighting terrain-vertscale \ 875 885 terrain-wireframe 876 886 } 877 # FIXME: need to specify initial layer in one command878 SendCmd "map layer delete base"879 887 SendCmd "imgflush" 880 888 } … … 917 925 SendCmd [list map layer add $type $info(url) $tag] 918 926 set _datasets($tag) 1 919 Set ObjectStyle $dataobj $layer927 SetLayerStyle $dataobj $layer 920 928 } 921 929 lappend _obj2datasets($dataobj) $tag … … 1573 1581 } 1574 1582 1575 itcl::body Rappture::MapViewer::SetObjectStyle { dataobj layer } { 1583 itcl::body Rappture::MapViewer::SetMapStyle { style } { 1584 array set settings { 1585 -color white 1586 -edgecolor black 1587 -edges 0 1588 -lighting 0 1589 -linewidth 1.0 1590 -vertscale 1.0 1591 -wireframe 0 1592 } 1593 array set settings $style 1594 1595 SendCmd "map terrain edges $settings(-edges)" 1596 set _settings(terrain-edges) $settings(-edges) 1597 #SendCmd "map terrain color [Color2RGB $settings(-color)]" 1598 #SendCmd "map terrain colormode constant" 1599 SendCmd "map terrain lighting $settings(-lighting)" 1600 set _settings(terrain-lighting) $settings(-lighting) 1601 SendCmd "map terrain linecolor [Color2RGB $settings(-edgecolor)]" 1602 #SendCmd "map terrain linewidth $settings(-linewidth)" 1603 SendCmd "map terrain vertscale $settings(-vertscale)" 1604 set _settings(terrain-vertscale) $settings(-vertscale) 1605 SendCmd "map terrain wireframe $settings(-wireframe)" 1606 set _settings(terrain-wireframe) $settings(-wireframe) 1607 } 1608 1609 itcl::body Rappture::MapViewer::SetLayerStyle { dataobj layer } { 1576 1610 set tag $dataobj-$layer 1611 array set info [$dataobj layer $layer] 1577 1612 set _visibility($tag) 1 1578 1579 array set info [$dataobj layer $layer] 1613 if { [info exists info(status)] } { 1614 if { $info(status) == "hidden" } { 1615 set _visibility($tag) 0 1616 SendCmd "map layer visible 0 $tag" 1617 } 1618 } 1619 1580 1620 switch -- $info(type) { 1621 "raster" { 1622 array set settings { 1623 -min_level 0 1624 -max_level 23 1625 -opacity 1.0 1626 } 1627 if { [info exists info(style)] } { 1628 array set settings $info(style) 1629 } 1630 if { [info exists info(opacity)] } { 1631 set $_settings(-opacity) $info(opacity) 1632 } 1633 SendCmd "map layer opacity $_settings(-opacity) $tag" 1634 } 1581 1635 "elevation" { 1582 1636 array set settings { 1583 -edgecolor black 1584 -edges 0 1585 -lighting 1 1586 -linewidth 1.0 1587 -vertscale 1.0 1588 -wireframe 0 1637 -min_level 0 1638 -max_level 23 1589 1639 } 1590 1640 if { [info exists info(style)] } { 1591 1641 array set settings $info(style) 1592 1642 } 1593 SendCmd "map terrain edges $settings(-edges)" 1594 set _settings(terrain-edges) $settings(-edges) 1595 #SendCmd "map terrain color [Color2RGB $settings(-color)]" 1596 #SendCmd "map terrain colormode constant {}" 1597 SendCmd "map terrain lighting $settings(-lighting)" 1598 set _settings(terrain-lighting) $settings(-lighting) 1599 SendCmd "map terrain linecolor [Color2RGB $settings(-edgecolor)]" 1600 #SendCmd "map terrain linewidth $settings(-linewidth)" 1601 SendCmd "map terrain wireframe $settings(-wireframe)" 1602 set _settings(terrain-wireframe) $settings(-wireframe) 1603 } 1604 } 1605 #SetColormap $dataobj $layer 1643 } 1644 "line" { 1645 array set settings { 1646 -color black 1647 -minbias 1000 1648 -opacity 1.0 1649 -width 1 1650 } 1651 if { [info exists info(style)] } { 1652 array set settings $info(style) 1653 } 1654 if { [info exists info(opacity)] } { 1655 set $_settings(-opacity) $info(opacity) 1656 } 1657 SendCmd "map layer opacity $_settings(-opacity) $tag" 1658 } 1659 "polygon" { 1660 array set settings { 1661 -color black 1662 -minbias 1000 1663 -opacity 1.0 1664 } 1665 if { [info exists info(style)] } { 1666 array set settings $info(style) 1667 } 1668 if { [info exists info(opacity)] } { 1669 set $_settings(-opacity) $info(opacity) 1670 } 1671 SendCmd "map layer opacity $_settings(-opacity) $tag" 1672 } 1673 } 1606 1674 } 1607 1675
Note: See TracChangeset
for help on using the changeset viewer.