openlayers简单例子

目录结构:

openlayers简单例子

效果图:

openlayers简单例子

代码:

<html>
 <head>
  <base href="<%=basePath%>">

  <title>My JSP 'index.jsp' starting page</title>
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  <meta http-equiv="description" content="This is my page">

  <link rel="stylesheet" href="css/theme/default/style.css"
   type="text/css" />
  <script type="text/javascript" src="script/OpenLayers.js"></script>
  <script type="text/javascript" src="index.js"></script>

  </script>
  <script type="text/javascript">
   function init() {
    var map, layer ,popup ,markers;     //声明变量map、layer;等同于 var map = null; var layer = null;
    var bounds = new OpenLayers.Bounds(
     0,0,1024,768
    );
    var options = {
        controls: [
     new OpenLayers.Control.PanZoomBar({
                   position: new OpenLayers.Pixel(10, 15)
               }),
               new OpenLayers.Control.Navigation(),      
               new OpenLayers.Control.LayerSwitcher(),
               new OpenLayers.Control.MousePosition()
        ],
        maxExtent: bounds,
        maxResolution: 0.648194258984375,
        projection: "EPSG:4326",
        units: 'degrees',
        numZoomLevels: 6
    };
           var map,base_layer;
    map = new OpenLayers.Map('map', options);
    base_layer = new OpenLayers.Layer.Image(
         '地图',
         'images/mapcn.jpg',
         bounds,
         new OpenLayers.Size(1024,768)
        );
    map.addLayer(base_layer);
    map.zoomToMaxExtent();
    
    var tower = new OpenLayers.Layer.Vector("基站图层", {
           styleMap: new OpenLayers.StyleMap({'default':{
      strokeColor: "#000000",
               strokeOpacity: 1,
               strokeWidth: 1,
               fillColor: "#000000",
               fillOpacity: 0.1,
               graphicName:"star",
               pointRadius: 0,
               label : "${id}",
      fontColor: "#000000",
      fontSize: "20px",
      labelAlign:"lb"
      }})
           }//自定义的基站样式,可以删除这个样式,
       );
    map.addLayer(tower);
    
    //设置图标大小
    var size = new OpenLayers.Size(21,25);
                var offset = new OpenLayers.Pixel(-(size.w/2), -size.h);
                //设置图标图片
    var jz = new OpenLayers.Icon('script/img/marker.png',size,offset);
    
    markers = new OpenLayers.Layer.Markers("分站");
    //设置显示坐标
    var x=550,y=310;
    //图片显示
    feature = new OpenLayers.Feature(markers,new OpenLayers.LonLat(x,y),{'icon': jz});
    marker = feature.createMarker();
    markers.addMarker(marker);
    map.addLayer(markers);
    //文字显示
    var point = new OpenLayers.Geometry.Point(x,y);
    feature = new OpenLayers.Feature.Vector(point);
       feature.attributes.id='测试';
       feature=[feature];
    tower.addFeatures(feature);
    //鼠标悬浮到图标上的事件
    var companyname="开滦煤矿",renshu=502;
    marker.events.register("mouseover", marker, function(evt){
     var html="<b>&nbsp;&nbsp;"+companyname+"<br>&nbsp;&nbsp;当前矿井人数:"+renshu+"人</b>";
     popup1=new OpenLayers.Popup("popup1",
                        new OpenLayers.LonLat(x,y),
                        new OpenLayers.Size(200,50),
                        html,
                        false);
     popup1.setBackgroundColor("#ffffff");
     popup1.setOpacity(12);
     popup1.setBorder("1px solid #d91f12");
                 map.addPopup(popup1);
    });
    //鼠标移开事件
    marker.events.register("mouseout", marker, function(evt){
     popup1.hide();
    });
    
   }
 </script>

 </head>

 <body οnlοad=init()>
  <div style="width: 800px; height: 475px" id="map" class="main_map">
   <b>Hello My Map</b>
  </div>
 </body>
</html>


原文地址:http://blog.sina.com.cn/s/blog_49d3ec2f0102dv0j.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
文件列表: OL3Demo\.DS_Store OL3Demo\css\base.css OL3Demo\css\js_demo.css OL3Demo\css\ol.css OL3Demo\demos\.DS_Store OL3Demo\demos\Controls\Animation.htm OL3Demo\demos\Controls\CanvasTiles.htm OL3Demo\demos\Controls\FullScreen.htm OL3Demo\demos\Controls\LayerControl.htm OL3Demo\demos\Controls\LayerSpy.htm OL3Demo\demos\Controls\Measure.htm OL3Demo\demos\Controls\MousePosition.htm OL3Demo\demos\Controls\Operation.htm OL3Demo\demos\Controls\OverviewMap.htm OL3Demo\demos\Controls\ScaleLine.htm OL3Demo\demos\Controls\ZoomSlider.htm OL3Demo\demos\data\geojson\countries-110m.json OL3Demo\demos\data\geojson\countries.geojson OL3Demo\demos\data\geojson\GeoJSON.json OL3Demo\demos\data\geojson\samples.json OL3Demo\demos\data\geolocation-orientation.json OL3Demo\demos\data\geolocation_marker_heading.png OL3Demo\demos\data\gml\gml.xml OL3Demo\demos\data\gml\topp-states-wfs.xml OL3Demo\demos\data\gpx\fells_loop.gpx OL3Demo\demos\data\kml\2012-02-10.kml OL3Demo\demos\data\kml\2012_Earthquakes_Mag5.kml OL3Demo\demos\data\kml\kml.xml OL3Demo\demos\DataHandler.ashx OL3Demo\demos\Drawing\DrawFeatures.htm OL3Demo\demos\Drawing\FeaturesStyle.htm OL3Demo\demos\Drawing\ModifyFeatures.htm OL3Demo\demos\Drawing\MoveFeatures.htm OL3Demo\demos\Drawing\SaveFeatures.htm OL3Demo\demos\Labels\AddClusterLabels.htm OL3Demo\demos\Labels\AddLabels.htm OL3Demo\demos\Labels\AddPopup.htm OL3Demo\demos\MultiData\LoadBasicMaps.htm OL3Demo\demos\MultiData\LoadOpenData.htm OL3Demo\demos\MultiData\LoadPublicMaps.htm OL3Demo\demos\MultiData\LoadTiandituMap.htm OL3Demo\demos\MultiData\MapExport.htm OL3Demo\demos\MultiData\OSM.htm OL3Demo\demos\MultiData\OverLayerMaps.htm OL3Demo\demos\OGC\LoadWCSMap.htm OL3Demo\demos\OGC\LoadWFSFeatrue.htm OL3Demo\demos\OGC\LoadWMSMap.htm OL3Demo\demos\OGC\LoadWMTSMap.htm OL3Demo\demos\OGC\WFS_Transaction.htm OL3Demo\demos\Others\AddPOI.htm OL3Demo\demos\Others\CreatCharts.htm OL3Demo\demos\Others\Geolocation.htm OL3Demo\demos\Others\Heatmap.htm OL3Demo\demos\Others\HotSpots.htm OL3Demo\demos\Others\LoadPublicMaps.htm OL3Demo\demos\Others\MilitaryPlotting.htm OL3Demo\demos\Others\MultiViewLinkage.htm OL3Demo\demos\Others\ProjectionTransformation.htm OL3Demo\demos\Others\SimulateGeolocation.htm OL3Demo\demos\Others\副本 LoadPublicMaps.htm OL3Demo\demos\RegDataHandler.ashx OL3Demo\demos\Web.config OL3Demo\images\ArrowIcon\arbitrary_area.png OL3Demo\images\ArrowIcon\arrow.png OL3Demo\images\ArrowIcon\arrow1.png OL3Demo\images\ArrowIcon\arrowcross.png OL3Demo\images\ArrowIcon\assembly.png OL3Demo\images\ArrowIcon\circle.png OL3Demo\images\ArrowIcon\CircleClosedangleCompass.png OL3Demo\images\ArrowIcon\closedangle.png OL3Demo\images\ArrowIcon\curve_flag.png OL3Demo\images\ArrowIcon\custom_arrow.png OL3Demo\images\ArrowIcon\custom_tail_arrow.png OL3Demo\images\ArrowIcon\custom_tail_arrow_.png OL3Demo\images\ArrowIcon\DoubleClosedangleCompass.png OL3Demo\images\ArrowIcon\double_arrow.png OL3Demo\images\ArrowIcon\fourstar.png OL3Demo\images\ArrowIcon\rect_flag.png OL3Demo\images\ArrowIcon\rhombus.png OL3Demo\images\ArrowIcon\SameDirectionClosedangleCompass.png OL3Demo\images\ArrowIcon\singleLine_arrow.png OL3Demo\images\ArrowIcon\smooth_curve.png OL3Demo\images\ArrowIcon\stright_arrow.png OL3Demo\images\ArrowIcon\tail_arrow.png OL3Demo\images\ArrowIcon\triangle.png OL3Demo\images\ArrowIcon\triangle_flag.png OL3Demo\images\ArrowIcon\VaneCompass.png OL3Demo\images\content\dotted.png OL3Demo\images\label\bj.png OL3Demo\images\label\blueIcon.png OL3Demo\images\label\icon.png OL3Demo\images\label\restaurant.png OL3Demo\images\label\国有企业.png OL3Demo\images\left\app.png OL3Demo\images\left\app_current.png OL3Demo\images\left\channel.png OL3Demo\images\left\channel_current.png OL3Demo\images\left\cloud.png OL3Demo\images\left\cloud_current.png OL3Demo\images\left\custom.png

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值