<!-- Begin Page -->


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
        <title>Landview (DHTML Edition): Minnesota DNR</title>
    <link rel="SHORTCUT ICON" href="http://www.dnr.state.mn.us/favicon.ico" type="image/x-icon">
   <LINK rel="stylesheet" title="MN DNR Stylesheet 2001 for Netscape 4" media="screen" href="http://images.dnr.state.mn.us/stylesheets/ns4.css">

<meta ht
tp-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" >

<!-- <img src="http://169.237.35.250/~dylan/lab_website/header1.jpg"  height="50" border="0"> -->

<script type="text/javascript" language="javascript">
<!-- 
function seek1SetCols(v) {
  for (i=0;i<document.seek1.elements.length;i++) {
    if (document.seek1.elements[i].name=='col') {
      document.seek1.elements[i].checked=v
    }
  }
}





<table>
        <tr>
                <td valign="top"><!-- content area: this next table has necessary cellpadding. --><table width="100%" cellpadding="5" cellspacing="0">
<tr>
<td width="100%" align="left" valign="top"><!-- drill down nav --><span class="topnav2">&gt; <a href="/index.html">MN DNR Home</a> &gt; <a href="/maps/index.html">Maps</a> &gt; </span>
<h1 class="last">Landview (DHTML Edition)</h1><!-- end drill down nav --></td>
</tr>

    


<tr>

<td width="100%" align="left" valign="top">
<!-- http://maps.dnr.state.mn.us/landview/landview_dhtml_x.html? -->
<link rel="stylesheet" type="text/css" href="http://maps.dnr.state.mn.us/landview/landview.css">

<script language="JavaScript" src="javascript/popup.js"></script>
<script language="JavaScript" src="javascript/shape.js"></script>
<script language="JavaScript" src="javascript/utm.js"></script>

<script language="JavaScript" src="javascript/utils.js"></script>
<script language="JavaScript" src="javascript/mapserv_new.js"></script>
<script language="JavaScript" src="javascript/find.js"></script>

<!-- X Cross-browser DHTML Library -->
<script language="JavaScript" src="javascript/cross-browser.com/x/x_core.js"></script>
<script language="JavaScript" src="javascript/cross-browser.com/x/x_event.js"></script>
<script language="JavaScript" src="javascript/cross-browser.com/x/x_dom.js"></script>
<script language="JavaScript" src="javascript/cross-browser.com/x/x_drag.js"></script>

<!-- Walter Zorn Javascript Graphics Library -->
<script language="JavaScript" src="javascript/wz_jsgraphics.js"></script>

<!-- SDL DTHML Component Libraries -->
<script language="JavaScript" src="javascript/dbox_new.js"></script>
<script language="JavaScript" src="javascript/dcontainer.js"></script>

<script language="javascript">
  var args = getargs(); // nab any URL-based arguments

  var path = "/usr/local/www/docs/landview/";
  var vpath = "http://maps.dnr.state.mn.us/landview";
  var gpath = "http://maps.dnr.state.mn.us/graphics";

  // interface buttons
  var buttons = new Array('state', 'zoomin', 'pan', 'zoomout', 'info', 'printicon', 'help');
  var active_button = '';

  // interface mapsize
  var mapsize='medium';
  var mapsizex=640, mapsizey=480; // default
  if(args.mapsize) { 
    mapsize = args.mapsize;
    if(args.mapsize == 'small') {
      mapsizex = 400;
      mapsizey = 300;
    } else if(args.mapsize == 'medium') {
      mapsizex = 640;
      mapsizey = 480;
    } else if(args.mapsize == 'large') {
      mapsizex = 800;
      mapsizey = 600;
    } else if(args.mapsize == 'huge') {
      mapsizex = 1024;
      mapsizey = 768;
    } else {
      alert("Unknown mapsize, valid values are small, medium or large. Reverting to default value.");
      var mapsize='medium';
      var mapsizex=640, mapsizey=480;
    }
  }

  // the DHTML main mapping window (note the significance of the name "main" here and with the Mapserv object)
  var main = new dBox("main");
  main.color = "red";
  main.thickness = 2;
  main.verbose = true;

  // the DHTML reference map
  var reference = new dBox("reference");
  reference.box = false;

  // global variables used in mapserv.js
  var MapServer = "http://169.237.35.250/cgi-bin/mapserv";
  var QueryServer = MapServer;
  var Interface = "dhtml";

  // var ms = new Mapserv("main", "LANDVIEW_MAPFILE", 155791.714648, 4720323.238005, 794359.124023, 5570749.155271, mapsizex, mapsizey);
     
  
  var ms = new Mapserv("main", "/home/dylan/public_html/mapserver/mapunit/fresno_w.map", -2079688.992760, -216382.321635, -2008421.838320, -82464.920713, mapsizex, mapsizey);
  ms.queryfile = "/home/dylan/public_html/mapserver/mapunit/fresno_w.map";
  ms.minscale = 5000;
  ms.maxscale = 10000000;

  // add the reference map
  //ms.referencemap = new Mapserv("reference", "LANDVIEW_REFERENCE_MAPFILE", -2079688.992760, -216382.321635, -2008421.838320, -82464.920713, 125, 125);
  
  //note that LANDVIEW_REFERENCE_MAPFILE is a small map file containing the reference image data... but it can be the main map file as well...
   ms.referencemap = new Mapserv("reference", "/home/dylan/public_html/mapserver/mapunit/fresno_w.map", -2079688.992760, -216382.321635, -2008421.838320, -82464.920713, 80, 150);

  // 
  // Process any input args (only a couple are supported). This is LandView specific but
  // a useful extension (see also the code above to change map size).
  // 
  if(args.mapxy) {      
    var coords = args.mapxy.split(" ");
    if(coords.length != 2) alert("Not enough coordinates for mapxy. Using default extent.");
    if(args.scale) ms.setextentfromscale(parseFloat(coords[0]), parseFloat(coords[1]), parseFloat(args.scale));
    else if(args.radius) ms.setextentfromradius(parseFloat(coords[0]), parseFloat(coords[1]), parseFloat(args.radius));
    else alert("Coordinate given but no scale or radius. Using default extent.");
  }

  if(args.mapext) {
    var coords = args.mapext.split(" ");
    if(coords.length != 4) alert("Not enough coordinates for mapext. Using default extent.");
    ms.setextent(parseFloat(coords[0]), parseFloat(coords[1]), parseFloat(coords[2]), parseFloat(coords[3]));
  }

  if(args.layers) {
    var layers = args.layers.split(" ");
    ms.layersoff(); // turn all layers off
    for(var i=0; i<layers.length; i++)  
      ms.setlayer(layers[i], true);
  }

  if(args.zoomsize)
    ms.zoomsize = args.zoomsize;

  //
  // Extensions to Mapserv.draw(): this allows you to exend the capabilties of
  // of the default draw method. There are post and pre draw functions available.
  //
  function postdraw() {
    // update the scalebars    
    document.scalebar_miles.src = MapServer + "?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&mode=scalebar&mapext=0+0+" + (ms.extent[2] - ms.extent[0]) + "+" + (ms.extent[3] - ms.extent[1]) + "&mapsize=" + ms.width + "+" + ms.height;
    document.scalebar_kilometers.src = MapServer + "?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&map_scalebar_units=kilometers&mode=scalebar&mapext=0+0+" + (ms.extent[2] - ms.extent[0]) + "+" + (ms.extent[3] - ms.extent[1]) + "&mapsize=" + ms.width + "+" + ms.height;

    // update the legend    
    var legendURL = "http://169.237.35.250/cgi-bin/mapserv?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&mode=legend&layers=" + ms.getlayerlist('+') + "&mapext=" + ms.extent[0] + "+"  + ms.extent[1] + "+"  + ms.extent[2] + "+"  + ms.extent[3] + "&mapsize=" + ms.width + "+" + ms.height;
    document.legend.src = legendURL;    
  }
  
  //
  // Functions that are called by the jBox applet or the dBox javascript code:
  // basically these provide the gateway from the applet/layers to the rest of
  // the application. Note that they are the same regardless of implementation.
  // You may want to swipe some of this code.
  //
  // jBox/dBox errors are passed to the browser via this function
  function seterror_handler(name, message) { alert(message); }

  // allows jBox/dBox to reset without redrawing
  function reset_handler(name, minx, miny, maxx, maxy) { }

  // called from jBox/dBox when the user initiates change
  function setbox_handler(name, minx, miny, maxx, maxy) {
    if(name == 'reference') {           
      ms.applyreference(minx, miny);
      ms.draw();
    } else {
      if(ms.mode == 'map') {
        if(minx != maxx && miny != maxy)
          ms.applybox(minx, miny, maxx, maxy);
        else
          ms.applyzoom(minx, miny);       
        ms.draw();           
      } else if(ms.mode != 'map') {
        ms.applyquerybox(minx, miny, maxx, maxy);
        ms.applyquerypoint(minx, miny);
        ms.query(); // builds query URL
        querywin = window.open(ms.url, 'querywin');
        querywin.focus();
      }
    }
  }

  // various event handlers called by jBox/dBox
  function mousemove_handler(name, x, y) {
    var text = '';
    var utm = new Point(Number(ms.extent[0] + x*ms.cellsize), Number(ms.extent[3] - y*ms.cellsize));
    var latlon = UTMToGeographic(15, utm);

    text = "&nbsp;UTM Coordinates:  x =" + Math.round(utm.x) + " and y = " + Math.round(utm.y);
 
    text = text + ", latitude = " + latlon.y.toFixed(8) + " and longitude = " + latlon.x.toFixed(8);
    
    xInnerHtml("coords", text);
  }
  function mouseexit_handler(name) { xInnerHtml("coords", "&nbsp;"); }
  function mouseenter_handler(name) { xInnerHtml("coords", "&nbsp;"); }

  function measure_handler(name, s, t, n, a) {    
    var text = '&nbsp;Distance: ' + Math.round(t*ms.cellsize) + " meters (" + n + " points)";
    xInnerHtml("measure", text);
  }

  //
  // LandView Specific Functions: these are associated with the various icons
  // and form controls on the page. You may or may not care about these.
  // 
  function change_scale() {
    var x = (ms.extent[0] + ms.extent[2])/2.0;
    var y = (ms.extent[1] + ms.extent[3])/2.0;
    ms.zoomscale(x, y, document.scaleform.scale.value);
    document.scaleform.scale.value = '';
    return false;
  }

  function change_zoomsize() {
    ms.zoomsize = document.options.zoomsize.options[document.options.zoomsize.selectedIndex].value;
  }

  function change_mapsize() {
    var url = "http://169.237.35.250/~dylan/mapserver/dhtml/landview_dhtml_x.html?";
    url += "mapsize=" + document.options.mapsize.options[document.options.mapsize.selectedIndex].value;
    url += "&zoomsize=" + ms.zoomsize;
    url += "&mapext=" + ms.extent.join('+');
    url += "&layers=" + ms.getlayerlist('+');

    window.location = url;
  }

  function print() {
    var printurl = 'http://maps.dnr.state.mn.us/cgi-bin/lvprint.pl?map=' + ms.mapfile +
                   '&mapext=' + ms.extent.join('+') +                 
                   '&layers=' + ms.getlayerlist('+') +
                   ms.options;
    openPopup(640,480, printurl,'printwin');
  }

  function pan(direction) {
    domouseclick('pan');
    ms.pan(direction);
  }

  function domouseclick(button) {
    var img;
    var last_active_button;

    last_active_button = active_button;
    active_button = '';

    for(var i=0; i<buttons.length; i++)
      domouseout(buttons[i]);
        
    img = eval("document." + button);
    img.src = gpath + "/" + button + '_down.gif';

    if(button == 'state') {
      ms.mode = 'map';
      ms.setextent(-2236810.624366, -689804.330870, -1576240.406397, 560510.442158);
      domouseclick('zoomin');
      ms.draw();
    } else if(button == 'info') {
      // document.main.setcursor("hand");         
      ms.mode = "query";
      ms.boxoff();
      active_button = button;
    } else if(button == 'help') {
      openPopup(500, 350, vpath + "/help_java.html", "helpwin");
      active_button = last_active_button;
      domouseout(button);
      img = eval("document." + active_button);
      img.src = gpath + "/" + active_button + '_down.gif';
    } else if(button == 'printicon') {
      print();
      active_button = last_active_button;
      domouseout(button);
      img = eval("document." + active_button);
      img.src = gpath + "/" + active_button + '_down.gif';
    } else {
      // document.main.setcursor("crosshair");
      ms.mode = "map";
      if(button == 'zoomin') {
            ms.zoomdir = 1;            
            ms.boxon();
      } else if(button == 'zoomout') { 
            ms.zoomdir = -1;
            ms.boxoff();
      } else {
            ms.zoomdir = 0;
            ms.boxoff();
      }
      active_button = button;
    }
  }  

  function domouseover(button) {
    var img;

    if(button == active_button) return;

    img = eval("document." + button);
    img.src = gpath + "/" + button + '_over.gif';
  }

  function domouseout(button) {
    var img;

    if(button == active_button) return;

    img = eval("document." + button);
    img.src = gpath + "/" + button + '.gif';
  }

  window.onresize = function() {
    main.sync();
    reference.sync();
    legend.sync();     
  }

  window.onload = function() {
    main.initialize();
    reference.initialize();
    
    domouseclick('zoomin');
    // document.main.setcursor("crosshair");
    set_select(document.options.mapsize, mapsize);
    set_select(document.options.zoomsize, ms.zoomsize);
    ms.draw();    
  }
</script>

<table border="0" cellspacing="0" cellpadding="0" class="borg">
<tr>
<td width="175" align="center" valign="top">

  <!-- begin left column -->
  <table width="100%" border="0" cellspacing="5" cellpadding="0" class="data">

    <tr><td valign="top" class="borg">
      <img name="legend" src="http://maps.dnr.state.mn.us/graphics/white_pixel.gif">
    </td></tr>

    <tr><td align="center" valign="middle">
      <p><a href="javascript:ms.draw()">redraw map</a></p>
    </td></tr>

    <form name="options"><tr><td>
      <p><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="25" border="0" alt=" ">
      <b>Options</b><br>
        map size:<br> &nbsp;&nbsp;<select name="mapsize" onChange="change_mapsize()"> <option value="small"> small <option value="medium"> medium <option value="large"> large <option value="huge"> huge </select><br>
        zoom size:<br> &nbsp;&nbsp;<select name="zoomsize" onChange="change_zoomsize()"> <option value="2"> 2x <option value="3"> 3x <option value="5"> 5x <option value="10"> 10x </select></p>
    </td></tr></form>    

    <!-- reference map -->
    <tr><td valign="top"> 
      <p><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="25" border="0" alt=" ">    
      <b>Reference Map</b><br>      
      <img id="reference" src="http://maps.dnr.state.mn.us/graphics/reference.gif" width="80" height="150">
    </td></tr>
    <!-- end reference map -->

  </table>
  <!-- end left column -->
</td>
<td align="center" valign="top">
  <!-- begin right column -->

  <table width="100%" border="0" cellspacing="4" cellpadding="4">
  <tr><td align="center" valign="top">
    <table border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#666666">
    <tr><td colspan="4"> 
      <table width="100%" border="0" cellspacing="0" cellpadding="4" bgcolor="#999999"><tr>
      <!-- find place -->
      <form name="findform" action="javascript:void(0)" onSubmit="return find('ms','landview',100000,50000)">
      <td colspan="2" align="left" valign="middle">
        <p class="small"><b>Find place:</b>&nbsp;<input type="text" name="place">&nbsp;<input type="submit" value="go!"></p>
      </td>
      </form>
      <!-- end find place -->

      <!-- set scale -->
      <form name="scaleform" action="javascript:void(0)" onSubmit="return change_scale()">
      <td colspan="2" align="right" valign="middle">
        <p class="small"><b>Set scale:</b>&nbsp;<input type="text" name="scale" maxlength="50">&nbsp;<input type="submit" value="go!"></p>
      </td>
      </form>
      <!-- end set scale -->
      </td></tr></table>
    </td></tr>
      
    <!-- map, tools, scalebars and pan controls -->      
    <tr><td rowspan="3" bgcolor="#cccccc" valign="top">    

      <!-- tools -->
      <table width="100%" border="0" cellspacing="2" cellpadding="0" align="center" width="38" bgcolor="#CCCCCC">
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('state')" onMouseOver="domouseover('state')" onMouseOut="domouseout('state')"><img name="state" src="http://maps.dnr.state.mn.us/graphics/state.gif" width="38" height="38" border="0" alt="view whole state"></a></td></tr>
        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="22" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('pan')" onMouseOver="domouseover('pan')" onMouseOut="domouseout('pan')"><img name="pan" src="http://maps.dnr.state.mn.us/graphics/pan.gif" width="38" height="38" border="0" alt="recenter map"></a></td></tr>
        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="23" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('zoomin')" onMouseOver="domouseover('zoomin')" onMouseOut="domouseout('zoomin')"><img name="zoomin" src="http://maps.dnr.state.mn.us/graphics/zoomin.gif" width="38" height="38" border="0" alt="zoom in"></a></td></tr>
        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="23" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('zoomout')" onMouseOver="domouseover('zoomout')" onMouseOut="domouseout('zoomout')"><img name="zoomout" src="http://maps.dnr.state.mn.us/graphics/zoomout.gif" width="38" height="38" border="0" alt="zoom out"></a></td></tr>
        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="23" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('info')" onMouseOver="domouseover('info')" onMouseOut="domouseout('info')"><img name="info" src="http://maps.dnr.state.mn.us/graphics/info.gif" width="38" height="38" border="0" alt="get feature information"></a></td></tr>
        
        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="22" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('printicon')" onMouseOver="domouseover('printicon')" onMouseOut="domouseout('printicon')"><img name="printicon" src="http://maps.dnr.state.mn.us/graphics/printicon.gif" width="38" height="38" border="0" alt="print this map"></a></td></tr>

        <tr><td><img src="http://images.dnr.state.mn.us/spacer.gif" width="1" height="22" border="0" alt=" "></td></tr>
        <tr><td align="center" valign="middle"><a href="javascript:domouseclick('help')" onMouseOver="domouseover('help')" onMouseOut="domouseout('help')"><img name="help" src="http://maps.dnr.state.mn.us/graphics/help.gif" width="38" height="38" border="0" alt="view help screen"></a></td></tr>
      </table>
      <!-- end tools -->

    </td>
      <td align="right" width="18"><a href="javascript:pan('nw')"><img src="http://maps.dnr.state.mn.us/graphics/nw.gif" width="18" height="18" border="0" alt="pan northwest"></a></td>
      <td align="center"><a href="javascript:pan('n')"><img src="http://maps.dnr.state.mn.us/graphics/n.gif" width="23" height="18" border="0" alt="pan north"></a></td>
      <td align="left" width="18"><a href="javascript:pan('ne')"><img src="http://maps.dnr.state.mn.us/graphics/ne.gif" width="18" height="18" border="0" alt="pan northeast"></a></td>
    </tr>
    <tr>
      <td align="right" width="18"><a href="javascript:pan('w')"><img src="http://maps.dnr.state.mn.us/graphics/w.gif" width="18" height="23" border="0" alt="pan west"></a></td>
      <td align="center">

<script language="javascript">
  document.write("<img id=\"main\" src=\"http://maps.dnr.state.mn.us/graphics/white_pixel.gif\" height=\"" + mapsizey + "\" width=\"" + mapsizex + "\">");
</script>
      <!-- <img id="main" src="http://maps.dnr.state.mn.us/graphics/white_pixel.gif" height="480" width="640"> -->

      </td>
      <td align="left" width="18"><a href="javascript:pan('e')"><img src="http://maps.dnr.state.mn.us/graphics/e.gif" width="18" height="23" border="0" alt="pan east"></a></td>
    </tr>
    <tr>
      <td align="right" width="18"><a href="javascript:pan('sw')"><img src="http://maps.dnr.state.mn.us/graphics/sw.gif" width="18" height="18" border="0" alt="pan southwest"></a></td>
      <td align="center"><a href="javascript:pan('s')"><img src="http://maps.dnr.state.mn.us/graphics/s.gif" width="23" height="18" border="0" alt="pan south"></a></td>
      <td align="left" width="18"><a href="javascript:pan('se')"><img src="http://maps.dnr.state.mn.us/graphics/se.gif" width="18" height="18" border="0" alt="pan southeast"></a></td>
    </tr>
    <tr><td bgcolor="#FFFFFF">&nbsp;</td><td bgcolor="#FFFFFF" colspan="3">      

      <!-- scalebars -->
      <script language="javascript">
      <!--
        document.write("<img align=\"right\" name=\"scalebar_miles\" src=\"" + MapServer + "?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&mode=scalebar&mapext=0+0+" + (ms.extent[2] - ms.extent[0]) + "+" + (ms.extent[3] - ms.extent[1]) + "&mapsize=" + ms.width + "+" + ms.height + "\" border=\"0\">");
        document.write("<img name=\"scalebar_kilometers\" src=\"" + MapServer + "?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&map_scalebar_units=kilometers&mode=scalebar&mapext=0+0+" + (ms.extent[2] - ms.extent[0]) + "+" + (ms.extent[3] - ms.extent[1]) + "&mapsize=" + ms.width + "+" + ms.height + "\" border=\"0\">");
      // -->
      </script>
      <!-- end scalebars -->

    </td></tr>
    </table>
  </td></tr>
  <!-- map, tools, scalebars and pan controls -->

  </table>
  <!-- end right column -->
</td></tr>
<tr><td colspan="2"><div id="coords" class="small">&nbsp;</div></td></tr>
<tr><td colspan="2"><div id="measure" class="small">&nbsp;</div></td></tr>
</table>

Measure: <a href="javascript:main.lineon(); xInnerHtml('measure', '&nbsp;');">On</a>/<a href="javascript:main.lineoff(); xInnerHtml('measure', '&nbsp;');">Off</a>

<!-- <form name="debug">
  <p><textarea name="message" cols="60" rows="5"></textarea></p>
</form> -->
</td>
</tr>
<tr>
<td width="100%" align="left" valign="top">

</td>

        </tr>
</table>


<script>
document.write("http://169.237.35.250/cgi-bin/mapserv?map=/home/dylan/public_html/mapserver/mapunit/fresno_w.map&mode=legend&layers=" + ms.getlayerlist('+') + "&mapext=" + ms.extent[0] + "+"  + ms.extent[1] + "+"  + ms.extent[2] + "+"  + ms.extent[3] + "&mapsize=" + ms.width + "+" + ms.height)
</script>

</body>
</html>