zoukankan      html  css  js  c++  java
  • ArcGIS api for javascript——地理处理任务-瓶中信

    描述

    如果在海洋中丢下一个瓶子,本例使用颗粒追踪模型显示指定的天数后瓶子在的地方。首先,输入一个追踪瓶子的天数。然后单击按钮并在海洋里的任意地方画一个点来开始模型。几秒以后将看到一条线出现描述瓶子将去的地方。

    关于这个模型的更多信息,见本例中引用的ArcGIS Server地理处理任务的服务目录页: http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_Currents_World/GPServer/MessageInABottle。这个页面列出了模型的参数并包含一个如何创建模型的帮助URL。

    本例使用绘画工具栏帮助画点。工具栏不是一个可以加到页面的用户界面组件。而是一个帮助类,能够画某一几何体类型。更多信息见示例使用一个绘画工具栏

     1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
     2 <html>
     3   <head>
     4     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
     5     <meta http-equiv="X-UA-Compatible" content="IE=7" />
     6     <title>ArcGIS Geoprocessing and ArcGIS Server JavaScript API</title>
     7     <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/1.5/js/dojo/dijit/themes/tundra/tundra.css">
     8     <script type="text/javascript" src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=1.5"></script>
     9     <script type="text/javascript">
    10         dojo.require("esri.map");
    11         dojo.require("esri.tasks.gp");
    12         dojo.require("esri.toolbars.draw");
    13         
    14         var map, gp, toolbar;
    15         
    16         function init() {
    17              map = new esri.Map("mapDiv");
    18              var streetMap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer");
    19              map.addLayer(streetMap);
    20              gp = new esri.tasks.Geoprocessor("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_Currents_World/GPServer/MessageInABottle");
    21              //esri.toolbars.Draw(map, options)    创建一个新的绘图对象。地图是必要的参数。
    22              toolbar = new esri.toolbars.Draw(map);
    23            
    24              dojo.connect(toolbar,"onDrawEnd",executeParticleTrack);
    25             
    26         }
    27         
    28         function executeParticleTrack(geometry) {
    29         
    30            
    31             map.graphics.clear();
    32             //使用一张图片定义样式。这是最常用的渲染方式之一。
    33             //我们通常的应用都会使用这一样式,使地图图元的意义更加明朗,地图也更加的美观。
    34             var simplePictureMarkerSymbol = new esri.symbol.PictureMarkerSymbol('http://www.esri.com/graphics/aexicon.jpg', 26, 26);
    35             var graphic = new esri.Graphic(geometry,simplePictureMarkerSymbol);
    36             map.graphics.add(graphic);
    37             toolbar.deactivate();//None    关闭工具栏并激活地图导航.
    38             
    39             
    40             var features = [];
    41             features.push(graphic);
    42             var featureSet = new esri.tasks.FeatureSet();
    43             featureSet.features = features;
    44             
    45             var params = { "Input_Point":featureSet, "Days": dojo.byId("days").value };
    46             gp.execute(params, displayTrack);
    47         
    48         }
    49         
    50         function displayTrack(results, messages) {
    51         alert(222);
    52             var simpleLineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255,255,0]), 1);
    53             var features = results[0].value.features;
    54             for(var i=0,j=features.length;i<j;i++) {
    55                 var feature = features[i];
    56                 feature.setSymbol(simpleLineSymbol);
    57                 map.graphics.add(feature);    
    58             }
    59         
    60         }
    61         
    62         dojo.addOnLoad(init);
    63     </script>
    64   </head>
    65   <body class="tundra">
    66     <table>
    67       <tbody>
    68         <tr>
    69           <td>Select tool to draw and execute the particle tracker model.
    70             <br>Start season is Spring. Number of days to track = <input type="text" id="days" value="180" size="3"/>.
    71             &nbsp;&nbsp;<button onclick="toolbar.activate(esri.toolbars.Draw.POINT);">Draw and execute particle track.</button>
    72           </td>
    73         </tr>
    74         <tr>
    75           <td id="mapDiv" style="800px; height:600px; border:1px solid #000;"></td>
    76         </tr>
    77       </tbody>
    78     </table>
    79   </body>
    80 </html> 
  • 相关阅读:
    优化!优化!
    JavaScript 错误
    js 学习总结
    JavaScript join() 方法
    JavaScript shift() 方法
    JavaScript split() 方法
    arTemplate解析语法
    getTime 方法
    PHP 5 数据类型
    thinkphp 实现微信公众号开发(二)--实现自定义菜单
  • 原文地址:https://www.cnblogs.com/xiaotian-222/p/6555098.html
Copyright © 2011-2022 走看看