GIS(一)——在js版搜索地图上加入Marker标记

因为我们做的是有关于旅游方面的项目,所以涉及到了地图功能。我接到的当中一个任务就是,在地图上显示指定的几个景点,并在地图上加上标记。

我们项目用的是搜狗地图。使用的是js版本号。大家有兴趣的话,能够參考搜索地图api以及演示样例代码

在地图上加入标记是地图的一个基本功能。这个标记叫做Marker。能够从这里看官网上对于Marker类的介绍。

实现的基本步骤,首先在页面上创建一个地图。然后地图上加入一个marker。你能够对这个marker指定位置、显示内容,在地图上的显隐等。

详细请看一下代码:

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>简单标记演示样例</title>

<link href="http://mfxuan.free.800m.net/blogCss/reset.css" type="text/css" rel="stylesheet" />
<link href="http://mfxuan.free.800m.net/blogCss/main.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://api.go2map.com/maps/js/api_v2.5.1.js"></script>
<!-- 定义地图等样式 -->
<style type="text/css">
html {height: auto;}
body {height: auto;margin: 0;padding: 0;}
#map_canvas {width:1000px;height: 600px;position: absolute;}
@media print {#map_canvas {height: 950px;}}
</style>
<script type="text/javascript">

  var p;//定义景点坐标数组
  var map;//定义地图对象
  var markers=[];//记录全部景点的Marker信息

  //初始化数据
  function initialize() {
	//将地图定位在海淀区域
    var point = new sogou.maps.Point(12939000,4840250);
    var myOptions = {
      zoom: 11,
      center: point
    }
    //载入并初始化地图
    map = new sogou.maps.Map(document.getElementById("map_canvas"), myOptions);

    //载入景点坐标值
	  loadScenic();

    //载入景点标记
    addmarker();

  }

  //载入标记
  function addmarker(){
    for(var i=0;i<p.length;i++){
      var point = new sogou.maps.Point(p[i].x,p[i].y);
      //加入一个图标
      var image = ‘‘;//‘http://api.go2map.com/maps/images/v2.0/flag.png‘;
      var marker = new sogou.maps.Marker({
        position: point,
        map: map,
        title:p[i].title,
        icon:image,
        visible:true
      });
      markers.push(marker);
    }
  }

  //载入景点坐标数据
  function loadScenic(){
  	p = [{x:12942902.5,y:4836960.5,title:‘颐和园‘},
	   	{x:12933625.5,y:4836929.5,title:‘香山、植物园‘},
	   	{x:12946300.5,y:4839226.5,title:‘圆明园遗址公园‘},
	   	{x:12948437.5,y:4826035.0,title:‘玉渊潭公园‘},
	   	{x:12950304.5,y:4829984.0,title:‘北京海洋馆‘},
	   	{x:12948074.5,y:4829765.0,title:‘紫竹院公园‘},
	   	{x:12922964.5,y:4853605.5,title:‘凤凰岭自然风景区‘}];
  }
</script>
</head>
<body >
  <div id="map_canvas"></div>
</body>
</html>

效果图:

是不是非常easy呢?事实上有了这些,仅仅是一个最简单的样式。在下一篇博文中,我们为他添添彩。敬请期待吧。

时间: 2024-10-10 05:00:53

GIS(一)——在js版搜索地图上加入Marker标记的相关文章

在js版搜索地图上添加标记

由于我们做的是有关于旅游方面的项目,所以涉及到了地图功能.我接到的其中一个任务就是,在地图上显示指定的几个景点,并在地图上加上标记. 我们项目用的是搜狗地图,使用的是js版本.大家有兴趣的话,可以参考搜索地图api以及示例代码. 在地图上添加标记是地图的一个基本功能.这个标记叫做Marker.可以从这里看官网上对于Marker类的介绍. 实现的基本步骤,首先在页面上创建一个地图,然后地图上添加一个marker.你可以对这个marker指定位置.显示内容,在地图上的显隐等.具体请看一下代码: <h

GIS(四)——为js版搜狗地图添加边界+Marker和Brand的最终美化版

在<GIS(三)--优化js版搜狗地图的brand标牌样式>中,分享了一下Brand样式的修改.现在把这几次Marker和Brand的修改统一再美化一下,算作一个终极优化版吧. 这次优化的主要内容是: 为整个操作的区域,添加边界 为Marker更换动态图片 为Brand更换半透明红色图片 只显示一个Brand,每3秒切换一次 1.绘制边界 首先做第一个吧,在搜狗地图上添加边界,是一个很简单的.很基本的,但是又很人性化的一个功能.在官网的实例代码中,覆盖层的第21个示例代码<画多边形区域.

在js版搜狗地图上添加brand标牌

在上一篇博文中,我在搜狗地图上添加了Marker标记,但是在用户体验度上还是不够的,如果想了解某些信息,你得把鼠标指向marker,才能看到title里的值.有没有一种可以直接显示在marker上的东东呢? 其实有很多方法可以做到.搜狗地图提供了叠加层类,但是可以直接在页面上显示信息的,貌似只有InfoWindow.Label和Brand.一般InfoWindow是用来显示大量信息的.所以我们显示少量信息一般选用Label和Brand.但是Label显示的效果比较一般,四棱四角的,而Brand则

GIS(六)——实现js版搜狗地图周边搜索功能

在上一篇文章<GIS(五)--完成js版搜狗地图基本交互搜索功能>中,介绍了搜狗地图的关键字搜索功能,今天就实现以下另一个重要功能吧--那就是周边搜索功能. 按照惯例,还是把官网上的示例代码给大家贴出来.飞机票在此.周边搜索的功能,跟关键字搜索其实是一样的,也是主要用到的了SearchRequest这个类,点击这里查看api文档.SearchRequest 对象规范: 属性 类型 说明 map Map 进行搜索的地图实例 renderer SearchRenderer 将结果进行渲染的对象.也

GIS(五)——完成js版搜狗地图基本交互搜索功能

最近在做的有关于北京海淀智慧旅游的一个项目,既然是旅游项目,那么涉及到地图的操作也就是必然的事情了.前几篇文章,主要是分享了在地图上标记多个景点及其景点信息的技术.其实跟项目中还是有一些不一样的.项目中要求实时显示景点的信息,根据实时数据,更新Marker的颜色(绿.橙.红),以及实时更新景点Brand上的景点信息(游客流量.舒适度).这些都没有出现在文章中,文章只是从技术的角度来验证的. 今天主要要做的是地图上的一个基本功能--交互搜索. 其实官网上搜索的例子并不是很多,而且真的不怎么滴.不过

GIS(七)——js版搜狗地图搜索功能美化版

在前2篇文章中介绍了关键字搜索和周边搜索的功能,但是界面比较简陋,所以这一版我主要做一些美化工作. 这次主要优化的方面有2个方面,一个是页面的样式,包括字体.按钮.布局等:二是要添加一个搜索的智能提示. 首先修改页面的样式,更改 #map{position:absolute;width:1364px; height:550px;} #option{ height:50px; width:1336px; border:solid 1px #CCCCCC; padding:10px; } 添加两个c

优化js版搜狗地图的brand标牌样式

从上一篇博文的效果图中,我们看到有几个相近的brand标牌给相互遮挡住了,不能完整的显示.怎么处理一下呢?今天我们就来研究一下这个解决方案. 其实要想不被遮挡,可以让这几个brand位置变动一下,而不总是箭头向下指向景点.如果改变箭头的指向呢?首先我们要了解它原本是怎么处理的.这个肯定是从spirit入手了. 先说一下spirit的参数: { url:"http://api.go2map.com/maps/images/v2.5/2.png", imgSize:[140,77], //

c# 进行AE开发时,如何在地图上定位出一个点

参考文章 1. GIS二次开发(C#+AE) 2. ArcEnbine开发之添加标 3. GIS(一)——在js版搜索地图上添加Marker标记 GIS ArcEngine字段标注显示代码 & 可以同时显示多个标注 离线GoogleMapAPIV3加载本地谷歌地图并添加标注 ArcGIS_Engine+C#实例开发教程+添加标注 GIS的学习(二十一)在osmdroid 地图中添加marker 并添加事件 arcEngine添加气泡提示框(标注,文本) arcEngine经典代码-添加气泡提示框

在地图上添加POI

使用Tangram的Marker, 可以在地图上做各种标记, 效果图: Tangram是通过Marker在地图上添加标记的,Marker分Point, Polyline和Polygon三种, 分别对应点.线.面三种几何体. Tangram使用统一的Marker接口来管理Marker: namespace Tangram { class Map { public: // Add a marker object to the map and return an ID for it; an ID of