• ArcGIS api for javascript——地图配置-增加标注到滑动器


    描述

    ArcGISTiledMapServiceLayer,这意味着图层有一个在明确的比例的预先渲染的地图切片的 cache。能够从 tileInfo属性获得图层的的缓存比例数组。这是本例中标注如何被得到。在下面的代码中,记得"lods"是"levels of detail"。

    var lods = layer.tileInfo.lods;
    for (var i=0, il=lods.length; i<il; i++) {
      labels[i] = lods[i].scale;
    }

    构建这个比例等级的数组后,通过esriConfig中的sliderLabel.labels将比例等级数组应用为标注很容易的。

    esriConfig.defaults.map.sliderLabel = {
      ...
      labels: labels,
      ...
    };


     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>增加标注到滑动器</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    
    11         dojo.require("esri.map");
    12         function init() {
    13             var layer = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer");
    14         
    15              if(layer.loaded) {
    16           
    17                  initMap(layer);
    18              }else {
    19               
    20               dojo.connect(layer,"onLoad",initMap);
    21              }
    22         }
    23         
    24         function initMap(layer) {
    25         
    26            //增加自定义注标器
    27            //用层的缩放来展示滑动器类别
    28             var labels = [];           
    29             var lods = layer.tileInfo.lods;
    30             
    31             alert(lods.length);
    32             for(var i=0,j=lods.length;i<j;i++) {
    33                 labels[i] = lods[i].scale;
    34             
    35             }
    36             esriConfig.defaults.map.sliderLabel = {
    37             tick:0,
    38             labels:labels,
    39             style:"2em;font-family:Verdana;font-size:65%;color:#fff;padding-left:2px;"
    40             
    41             };
    42             
    43             var map = new esri.Map("map");
    44             map.addLayer(layer);
    45         
    46         }
    47         dojo.addOnLoad(init); 
    48         
    49       
    50         
    51     </script>
    52   </head>
    53    <body class="tundra">
    54     <div id="map" style="1024px; height:512px; border:1px solid #000;"></div>
    55   </body>
    56 </html>
    57  
    58  
  • 相关阅读:
    C-Lodop 非典型应用
    这里有个坑---js日期格式yyyy-MM-dd与yyyy/MM/dd
    这里有个坑---[NotMapped]不要忘了加
    这里有个坑---entity为null的问题
    数据库优化小技巧总结
    前端优化小技巧总结
    前端日志探讨二
    25.密码学知识-对称加密-2——2019年12月19日
    24.mongodb可视化工具部署——2019年12月19日
    22.Express框架——2019年12月19日
  • 原文地址:https://www.cnblogs.com/xiaotian-222/p/6541911.html
Copyright © 2020-2023  润新知