projections.html

    <head><title>projections.html</title>
    <script src="../window.js"></script>
    <script src="../examples.js"></script>
    </head>

    <body>
    <script>

    var w = new win(100,100,400,400,"All Projections")
    w.setServerURL(MSURL)
    w.setVar("map",MSMAP)
    w.setVar("mapext","-20000000 -10000000 20000000 10000000")

    function submitWin () {
        w.setVar("mapsize",w.contentWidth + " " + w.contentHeight)
        w.submit()
    }

    w.setExecOnResize(submitWin)

    function setProj(b) {
        var projString = "proj=" + b.prCode + ",ellps=clrk66,lat_1=30,lat_2=50"
        w.setVar("map_projection",projString)
        submitWin()
    }

    function mkProjMenu() {
        var m = new menu()
        var i=0
        while (i<arguments.length) {
            var prCode = arguments[i++]
            var prName = arguments[i++]
            var prButton = new button(prName, setProj)
            prButton.prCode = prCode
            m.addButton(prButton)
        }
        return(m)
    }

    cylMenu = mkProjMenu
    (
        "latlong","LatLong",
        "merc","Mercator",
        "cc","Central Cylindrical",
        "mill","Miller",
        "cea","Lambert Cylindrical Equal Area",
        "gall","Gall Stereographic",
        "tcea","Transverse Cylindrical Equal Area",
        "eqc","Equidistant Cylindrical (Plate Caree)",
        "cass","Cassini"
    )

    psCyl1Menu = mkProjMenu
    (    "sinu","Sinusoidal",
        "moll","Mollweide",
        "robin","Robinson",
        "eck1","Eckert I",
        "eck2","Eckert II",
        "eck3","Eckert III",
        "eck4","Eckert IV",
        "eck5","Eckert V",
        "eck6","Eckert VI",
        "goode","Goode Homolosine",
        "hatano","Hatano",
        "loxim","Loximuthal",
        "mbtfpp","McBryde-Thomas Flat-Polar Parabolic",
        "mbtfpq","McBryde-Thomas Flat-Polar Quartic",
        "mbtfps","McBryde-Thomas Flat-Polar Sinusoidal",
        "mbt_s","McBryde-Thomas Flat-Polar Sine (1)",
        "mbt_fps","McBryde-Thomas Flat-Polar Sine (2)",
        "qua_aut","Quartic Authalic",
        "wink1","Winkel I",
        "wink2","Winkel II",
        "boggs","Boggs Eumorphic",
        "collg","Collignon",
        "fahey","Fahey",
        "denoy","Denoyer"
    )

    psCyl2Menu = mkProjMenu
    (
        "fouc","Foucaut",
        "fouc_s","Foucaut Sinusoidal",
        "kav5","Kavraisky V",
        "kav7","Kavraisky VII",
        "nell","Nell",
        "nell_h","Nell-Hammer",
        "putp1","Putnin p1",
        "putp2","Putnin p2",
        "putp3","Putnin p3",
        "putp3p","Putnin p3'",
        "crast","Craster Parabolic (Putnins P4)",
        "putp4p","Putnin p4'",
        "putp5","Putnin p5",
        "putp5p","Putnin p5'",
        "putp6","Putnin p6",
        "putp6p","Putnin p6'",
        "wag1","Wagner I (Kavraisky VI)",
        "wag2","Wagner II",
        "wag3","Wagner III",
        "wag4","Wagner IV",
        "wag5","Wagner V",
        "wag6","Wagner VI"
    )

    conicMenu = mkProjMenu
    (
        "lcc","Lambert Conformal",
        "eqdc","Equidistant",
        "pconic","Perspective",
        "aea","Albers Equal Area",
        "leac","Lambert Equal Area",
        "poly","Polyconic (American)",
        "rpoly","Rectangular Polyconic",
        "euler","Euler",
        "murd1","Murdoch I",
        "murd2","Murdoch II",
        "murd3","Murdoch III",
        "tissot","Tissot",
        "vitk1","Vitkovsky I",
        "bonne","Bonne"
    )

    azimMenu = mkProjMenu
    (
        "stere","Stereographic",
        "gnom","Gnomonic",
        "ortho","Orthographic",
        "airy","Airy",
        "aeqd","Azimuthal Equidistant",
        "hammer","Hammer Equidistant",
        "wag7","Wagner VII",
        "mil_os","Miller Oblated Stereographic",
        "ups","Universal Polar Stereographic"
    )

    miscMenu = mkProjMenu
    (
        "august","August",
        "bacon","Bacon",
        "nicol","Nicolosi",
        "apian","Apian",
        "ortel","Ortelius",
        "vandg","Van der Grinten I",
        "vandg2","Van der Grinten II",
        "vandg3","Van der Grinten III",
        "vandg4","Van der Grinten IV",
        "lagrng","Lagrange",
        "larr","Larrivee",
        "lask","Laskowski",
        "tpeqd","Two Points Equidistant",
        "gins8","Ginsburg VIII"
    )

    projMenu= new menu
    (
        "Cylindrical",cylMenu,
        "Pseudo-Cylindrical 1",psCyl1Menu,
        "Pseudo-Cylindrical 2",psCyl2Menu,
        "Conic",conicMenu,
        "Azimuthal",azimMenu,
        "Miscellaneous",miscMenu
    )

    projMenu.realSticky(true)
    projMenu.vertical(false)
    projMenu.showAt(10,10)
    </script>