Changeset 4271 for trunk


Ignore:
Timestamp:
Mar 25, 2014, 11:23:30 PM (11 years ago)
Author:
ldelgass
Message:

Add method to get map projection, initialize map type on first map dataobj.

Location:
trunk/gui/scripts
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/gui/scripts/map.tcl

    r4270 r4271  
    4848    public method layers {}
    4949    public method extents {}
     50    public method projection {}
    5051    public method layer { name }
    5152    public method hints { args }
     
    9798        }
    9899    }
     100}
     101
     102#
     103# projection --
     104#
     105itcl::body Rappture::Map::projection {} {
     106    return [$_tree get root "projection" ""]
    99107}
    100108
  • trunk/gui/scripts/mapviewer.tcl

    r4266 r4271  
    169169    # Initialize the view to some default parameters.
    170170    array set _view {
    171         qw              0.853553
    172         qx              -0.353553
    173         qy              0.353553
    174         qz              0.146447
    175         zoom            1.0 
    176         xpan            0
    177         ypan            0
     171        qw              1.0
     172        qx              0.0
     173        qy              0.0
     174        qz              0.0
     175        zoom            1.0
     176        xpan            0.0
     177        ypan            0.0
    178178    }
    179179    set _arcball [blt::arcball create 100 100]
     
    187187        legend                 1
    188188        terrain-edges          0
    189         terrain-lighting       1
     189        terrain-lighting       0
    190190        terrain-vertscale      1.0
    191191        terrain-wireframe      0
     
    450450    set pos [lsearch -exact $_dlist $dataobj]
    451451    if {$pos < 0} {
     452        #if {[llength $_dlist] > 0} {
     453        #    error "Can't add more than 1 map to mapviewer"
     454        #}
    452455        lappend _dlist $dataobj
    453456    }
     
    844847        $_arcball resize $w $h
    845848        DoResize
    846         #FixSettings ?
    847 
    848         if { $_haveTerrain } {
    849             FixSettings terrain-edges terrain-lighting terrain-wireframe terrain-vertscale
    850         }
    851         StopBufferingCommands
    852         SendCmd "imgflush"
    853         StartBufferingCommands
     849
     850        #if { $_haveTerrain } {
     851        #    FixSettings terrain-edges terrain-lighting terrain-vertscale \
     852        #        terrain-wireframe
     853        #}
     854        #StopBufferingCommands
     855        #SendCmd "imgflush"
     856        #StartBufferingCommands
    854857    }
    855858
     
    861864    foreach dataobj [get -objects] {
    862865        set _obj2datasets($dataobj) ""
     866        if {$_first == ""} {
     867            # The map must be reset once before any layers are added
     868            # This should not be done more than once as it is very
     869            # expensive
     870            set _first $dataobj
     871            set profile [$dataobj projection]
     872            set extents [$dataobj extents]
     873            if {[$dataobj isGeocentric]} {
     874                SendCmd "map reset geocentric"
     875            } elseif {$extents == ""} {
     876                set profile "global-mercator"
     877                SendCmd "map reset projected $profile"
     878            } else {
     879                SendCmd "map reset projected $profile [list $extents]"
     880            }
     881            if { $_haveTerrain } {
     882                FixSettings terrain-edges terrain-lighting terrain-vertscale \
     883                    terrain-wireframe
     884            }
     885            SendCmd "imgflush"
     886        }
    863887        foreach layer [$dataobj layers] {
    864888            array unset info
     
    10651089        "reset" {
    10661090            array set _view {
    1067                 qw      0.853553
    1068                 qx      -0.353553
    1069                 qy      0.353553
    1070                 qz      0.146447
     1091                qw      1.0
     1092                qx      0.0
     1093                qy      0.0
     1094                qz      0.0
    10711095                zoom    1.0
    1072                 xpan    0
    1073                 ypan    0
     1096                xpan    0.0
     1097                ypan    0.0
    10741098            }
    10751099            if { $_first != "" } {
     
    12361260            SendCmd "map terrain lighting $bool"
    12371261        }
     1262        "terrain-palette" {
     1263            set cmap [$itk_component(terrainpalette) value]
     1264            #SendCmd "map terrain colormap $cmap"
     1265        }
    12381266        "terrain-vertscale" {
    12391267            set val $_settings(terrain-vertscale)
     
    13281356
    13291357    label $inner.palette_l -text "Palette" -font "Arial 9" -anchor w
    1330     itk_component add meshpalette {
     1358    itk_component add terrainpalette {
    13311359        Rappture::Combobox $inner.palette -width 10 -editable no
    13321360    }
     
    13491377        "orange-to-blue"     "orange-to-blue"   
    13501378
    1351     $itk_component(meshpalette) value "BCGYR"
     1379    $itk_component(terrainpalette) value "BCGYR"
    13521380    bind $inner.palette <<Value>> \
    13531381        [itcl::code $this AdjustSetting terrain-palette]
     
    15211549                -edgecolor black
    15221550                -edges 0
    1523                 -lighting 1
     1551                -lighting 0
    15241552                -linewidth 1.0
    15251553                -vertscale 1.0
Note: See TracChangeset for help on using the changeset viewer.