投篮不准的程序员不是一个好车手 2017-09-20 14:17 采纳率: 0%
浏览 2901
已结题

OpenLayers2在图层中添加鼠标经过高亮

 var bayuquan = new OpenLayers.Layer.Vector("KML_bayuquan", {//加载鲅鱼圈区边界
                projection: map.displayProjection,
                isBaseLayer: false,
                styleMap: new OpenLayers.StyleMap({
                pointRadius: 3,
                fillColor: "white",
                strokeColor: "black",
                strokeWidth: 1
                }),
                strategies: [new OpenLayers.Strategy.Fixed()],
                protocol: new OpenLayers.Protocol.HTTP({
                url: "kml/byq.kml",
                format: new OpenLayers.Format.KML({
                extractStyles: true, 
                extractAttributes: true,
                maxDepth: 2
                })
                })
                });

                map.addLayer(bayuquan);

这是在bayuquan这个图层上用kml在地图上显示边界线,在地图上可以正常显示出,怎么才能让鼠标经过这个区域时这个区域阴影一下或变色一下呢,在网上看了一些demo试了试还是弄不出来,新手不是很熟练,求指教

下面这个是找到的一个显示多边形区域的demo,改一改放到上面的代码后面为什么不好用呢。

 var feature2 = new OpenLayers.Feature.Vector(
                OpenLayers.Geometry.fromWKT(
                    "POLYGON((-120.828125 -50.3515625, -80.1875 -80.0078125, -40.40625 -20.4140625, -120.828125 -50.3515625))"
                )
            );
            vectors.addFeatures([feature2]);

            var report = function(e) {
                OpenLayers.Console.log(e.type, e.feature.id);
            };

            var highlightCtrl = new OpenLayers.Control.SelectFeature(vectors, {
                hover: true,
                highlightOnly: true,
                renderIntent: "temporary",
                eventListeners: {
                    beforefeaturehighlighted: report,
                    featurehighlighted: report,
                    featureunhighlighted: report
                }
            });

            var selectCtrl = new OpenLayers.Control.SelectFeature(vectors,
                {clickout: true}
            );

            map.addControl(highlightCtrl);
            map.addControl(selectCtrl);

            highlightCtrl.activate();
            selectCtrl.activate();
  • 写回答

1条回答 默认 最新

报告相同问题?

悬赏问题

  • ¥15 matlab作业不会写
  • ¥15 eclipse mqtt 消息消费问题
  • ¥15 vue2(标签-chrome|关键词-浏览器兼容)
  • ¥15 python网络流自动生成系统 医学领域
  • ¥15 sql查询仓库里都有什么
  • ¥15 代码的修改,添加和运行完善
  • ¥15 krpano-场景分组和自定义地图分组
  • ¥15 lammps Gpu加速出错
  • ¥15 关于PLUS模型中kapaa值的问题
  • ¥15 关于博途V17进行仿真时无法建立连接问题