zoukankan      html  css  js  c++  java
  • arcgis for js 闪烁

    $(document).ready(function () {
        function checkKey(evt) {
            var keyID = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode);
            alert(keyID);
        }
        require([
            "dojo/parser",
            "esri/map",
            "esri/geometry/Extent",
            "esri/SpatialReference",
            "esri/dijit/Scalebar",
            "esri/dijit/OverviewMap",
            "esri/layers/ArcGISDynamicMapServiceLayer",
            "esri/tasks/QueryTask",
            "esri/tasks/query",
            "esri/symbols/SimpleMarkerSymbol",
            "esri/symbols/CartographicLineSymbol",
            "esri/symbols/SimpleFillSymbol",
            "esri/layers/GraphicsLayer",
            "esri/graphic",
            "esri/geometry/Geometry",
            "esri/InfoTemplate",
            "dojo/_base/Color",
            "dojo/_base/lang",
            "dojox/gfx/fx",
            "dijit/layout/LayoutContainer",
            "dijit/layout/ContentPane",
            "dojo/dom",
            "dojo/domReady!"],
    
        function (parser, Map, Extent, SpatialReference, Scalebar, OverviewMap, Dynamic, QueryTask, Query, SimpleMarkerSymbol, CartographicLineSymbol, SimpleFillSymbol, GraphicsLayer, Graphic, Geometry, InfoTemplate, Color, lang, fx, LayoutContainer, ContentPane, dom) {
            map = new Map("map", {
                //basemap: "national-geographic",
                center: [-72.923611, 41.31],
                zoom: 11,
                logo: false
            });
    
            function showResultsFlash(featureSet) {
                // alert("flash");
                // remove all graphics on the maps graphics layer
                map.graphics.clear();
    
                // assign featureSet array to a single variable.
                var resultFeatures = featureSet.features;
    
                // Loop through each feature returned
                for (var i = 0, il = resultFeatures.length; i < il; i++) {
                    // Get the current feature from the featureSet.
                    // Feature is a graphic
                    var graphicFlash = resultFeatures[i];
    
                    // allow different symbols
                    markerSymbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_DIAMOND, 28,
                    new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,
                    new dojo.Color([255, 255, 255]), 2),
                    new dojo.Color([255, 0, 0, 0.85]));
                    lineSymbol = new esri.symbol.CartographicLineSymbol(esri.symbol.CartographicLineSymbol.STYLE_SOLID,
                    new dojo.Color([0, 255, 255]), 10, esri.symbol.CartographicLineSymbol.CAP_ROUND,
                    esri.symbol.CartographicLineSymbol.JOIN_MITER, 5);
                    fillSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,
                    new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,
                    new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.85]));
    
                    // figure out which symbol to use                                                                                      
                    if (graphicFlash.geometry.type === "point" || graphicFlash.geometry.type === "multipoint") {
                        symbol = markerSymbol;
                    } else if (graphicFlash.geometry.type === "line" || graphicFlash.geometry.type === "polyline") {
                        symbol = lineSymbol;
                    } else {
                        symbol = fillSymbol;
                    }
    
                    var flashGraphicLayer = new GraphicsLayer();
                    map.addLayer(flashGraphicLayer);
    
                    //map.reorderLayer(graphicFlashLayer, 0);
    
                    //graphicFlash.setSymbol(symbol);
                    var g = new Graphic(graphicFlash, symbol)
    
                    //Add graphic to the map graphics layer.                                                     
                    map.flashGraphicLayer.add(g);
    
                    alert("not getting here");
                    // using partial: http://dojotoolkit.org/reference-guide/1.9/dojo/_base/lang.html#dojo-base-lang-partial
                    setTimeout(lang.partial(function (animateMe) {
                        var shape = animateMe.getDojoShape();
                        fx.animateStroke({
                            shape: shape,
                            duration: 1000,
                            color: {
                                start: "red",
                                end: shape.strokeStyle.color
                            },
                             {
                                start: 20,
                                end: shape.strokeStyle.width
                            }
                        }).play();
                    }, g), 500);
    
                }
            }
        }
    

      

      function gridSelect(e) {
            var graphicFlash;
            var gridId = e.currentTarget.id;
            var selectedGrid = dijit.byId(gridId);
            var row = selectedGrid.row(e);
    
            graphicHighlight = findGraphicByAttribute(row.data);
    
            if (graphicHighlight !== null) {
                switch (graphicHighlight.geometry.type) {
                    case "point": case "multipoint":
                        graphicFlash = new esri.Graphic(graphicHighlight.geometry, symbolFlashPoint)
                        break;
                    case "polyline":
                        graphicFlash = new esri.Graphic(graphicHighlight.geometry, symbolFlashPolyline);
                        break;
                    case "polygon": case "extent":
                        graphicFlash = new esri.Graphic(graphicHighlight.geometry, symbolFlashPolygon);
                        break;
                }
                map.graphics.add(graphicFlash);
            }
    
            var shape = graphicFlash.getDojoShape();
            var animStroke = fx.animateStroke({
                shape: shape,
                duration: 500,
                color: { end: new dojo.Color([0, 0, 0, 0]) }
            });
            var animFill = fx.animateFill({
                shape: shape,
                duration: 500,
                color: { end: new dojo.Color([0, 0, 0, 0]) }
            });
            var anim = dojo.fx.combine([animStroke, animFill]).play();
            var animConnect = dojo.connect(anim, "onEnd", function () {
                map.graphics.remove(graphicFlash);
            });
        }
    

      

  • 相关阅读:
    springmvc 配置多视图,返回jsp,velocity,freeMarker,tiles(模板)等等
    spring,mybatis,多数据源配置
    springMVC分页,interceptor实现
    springMVC全局Exception异常处理SimpleMappingExceptionResolver
    百度FIS入门
    如何安装nodejs
    如何高效部署前端代码,如css,js...
    javascript url几种编码方式
    【转】RBAC权限管理
    elasticsearch 之IK分词器安装
  • 原文地址:https://www.cnblogs.com/zany-hui/p/14791072.html
Copyright © 2011-2022 走看看