zoukankan      html  css  js  c++  java
  • ArcGIS api for JavaScript 3.27 按需显示需要的图层

    • 实例:现有一图层服务,现需要动态显示该图层中的一部分内容:点击一个图例,只显示这个图例的内容,再点击别的图例,原来的内容不消失,再次点击已被点击的图例才会消失。
    • 思路setLayerDefinitions可以设置图层的定义,该定义可用于过滤指定图层的
      var i,k;
      var arr=[];
      var strWhere="";
      var layerDefinitions=[];
      //该show方法只是获取点击的图例的值,放入需要查询的数组中,便于拼接
      function show(name) {
          if( name !="" && arr.length==0 )
          {
              arr[0]=name;
          }
          else {
              var m=arr.indexOf(name);
              if(m<0){
                  arr.push(name);
              }else{
                  arr.splice(m,1);  //删除重复的
              }
          }
      
      //拼接查询语句
          switch (arr.length) {
              case 0:
                  strWhere ="1=1";
                  break;
              default:
                  for(k=0;k<arr.length;k++) {
                      if(k!=0)
                      {
                          strWhere += " or name = '"+arr[k]+"'";
                      }
                      else{
                          strWhere="name = '" + arr[k]+"'";
                      }
                  }
                  break;
          }
          require([],function(){
              //要查询的那个图的图层的ID号:19
              layerDefinitions [19] = strWhere;
              tunnelLayer.setLayerDefinitions(layerDefinitions);
          });
      }

      点击图例

  • 相关阅读:
    dota监测
    R0:前瞻
    Python基础
    c++成员函数
    异步IO简介
    使用自定义类型做qmap,qhash的key
    c++ primer 7 函数
    c++ primer 6 语句
    c++ primer 5 表达式
    c++ primer 4 数组和指针
  • 原文地址:https://www.cnblogs.com/yangzhengier/p/10763811.html
Copyright © 2011-2022 走看看