最近需要在bing 地图上画圆,因为bing 地图没有直接提供画圆的API,画起来比较麻烦,经过在网上的查找终于找到了画圆的方法。下面的代码是我整理过的代码,其中画圆函数来至网络。因为画圆比较困难,所以分享给大家,让大家也少走弯路。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>bing map画圆</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"
src="http://ecn.dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6.2&mkt=zh-cn"></script>
<script type="text/javascript">
var map = null;
function GetMap()
{
map = new VEMap('myMap');
map.LoadMap();
map.SetZoomLevel(14);
var latLon=new VELatLong(34.79248399030799,113.69712352752688);
//设置地图中心点
map.SetCenter(latLon);
map.SetMouseWheelZoomToCenter(false);
//画圆,以地图中心latLon为圆心,半径为1km 画圆
drawCircle(latLon,1);
}
//画圆函数 origin 圆心,radius 半径 单位km
function drawCircle(origin, radius) {
var earthRadius = 6371;
//圆心纬度
var lat = (origin.Latitude * Math.PI) / 180;
//圆心经度
var lon = (origin.Longitude * Math.PI) / 180;
var d = parseFloat(radius) / earthRadius;
var points = new Array();
for (i = 0; i <= 360; i++) {
var point = new VELatLong(0, 0);
var bearing = i * Math.PI / 180;
point.Latitude = Math.asin(Math.sin(lat) * Math.cos(d) + Math.cos(lat) * Math.sin(d) * Math.cos(bearing));
point.Longitude = ((lon + Math.atan2(Math.sin(bearing) * Math.sin(d) * Math.cos(lat), Math.cos(d) - Math.sin(lat) * Math.sin(point.Latitude))) * 180) / Math.PI;
point.Latitude = (point.Latitude * 180) / Math.PI;
points.push(point);
}
var circle = new VEShape(VEShapeType.Polygon, points);
//设置无边缘
circle.SetLineColor(new VEColor(255, 0, 0, 0));
circle.HideIcon();
map.AddShape(circle);
}
</script>
</head>
<body onload="GetMap();">
<div id='myMap'
style="position: relative; width: 400px; height: 400px;"></div>
</body>
</html>
分享到:
相关推荐
标题中的“Bing Map”指的是微软的Bing地图服务,这是一个全球性的在线地图应用程序,提供了丰富的地理信息和卫星图像。Bing地图不仅提供基本的导航功能,还支持各种定制化的地图应用,例如在地图上标注、绘图以及...
Bing Map 在 Vue 项目中的使用详解 Bing Map 是微软公司开发的一款地图服务,提供了强大的地图功能和 API 接口,广泛应用于 Web 开发、移动应用开发等领域。本文将主要介绍 Bing Map 在 Vue 项目中的使用详解,帮助...
【标题】:“Bing Map图”是一个关于使用Bing Maps API在Web应用中集成地图功能的知识点。Bing Maps是微软提供的一个强大的地理空间服务,它提供了丰富的地图数据和多种地图样式,允许开发者通过API创建交互式的地图...
在本文中,我们将深入探讨如何在Silverlight Bing地图中加载Google地图。Silverlight是一种由Microsoft开发的客户端插件技术,用于在Web浏览器中提供丰富的交互式用户体验,而Bing Maps则是微软提供的一个强大的地图...
【winphone7的bingmap实例sample】是一个专为Windows Phone 7平台设计的示例项目,它详细展示了如何集成和使用Bing Maps服务。这个样本集成了Bing Maps API,帮助开发者了解如何在Windows Phone应用中实现地图功能,...
《基于SilverLight和BingMap的车辆监控系统详解》 在现代信息技术的推动下,车辆监控系统的开发已经成为交通管理、物流调度以及安全防范等领域的重要工具。本篇文章将深入探讨一个利用SilverLight和BingMap技术构建...
### GoogleMap与BingMap接口分析 #### 一、GoogleMap API详解 ##### 1.1 前言 在地图开发领域,Google Maps API 是一个广泛使用的工具集,为开发者提供了丰富的功能来构建交互式地图应用。这些API不仅支持基本的...
### Bing Maps 在 Windows Phone 7 中的应用 #### 引言 随着移动互联网技术的发展与智能手机功能的日益强大,地图服务已成为各类应用中的重要组成部分。在 Windows Phone 7(WP7)平台中,Bing Maps 提供了丰富的 ...
本主题将深入探讨如何使用Bing Maps Control来加载并显示Google混合地图,这是一项技术上的创新,旨在整合不同地图服务的优点,为用户提供更丰富的地图体验。 首先,Bing Maps Control是由微软开发的一款地图API,...
在这个"Silverlight-bing map demo"项目中,我们可以看到如何将Silverlight的交互性与Bing Maps的强大功能相结合。开发者可能使用了以下关键技术点: 1. **地图控件集成**:在Silverlight应用中,通过引用Bing Maps...
<maps:Map x:Name="bingMap" CredentialsProvider="Your Bing Maps Key" /> ``` 这里的`CredentialsProvider`属性是至关重要的,你需要从Bing Maps账户中获取一个有效的API密钥,用以验证你的应用有权访问Bing ...
MMM-Bingmap 基于必应地图的交通地图 需求Bing API创建一个帐户以使用api https://www.bingmapsportal.com/ 使用静态地图制作器来确定大小和位置 https://staticmapmaker.com/bing/ 设定档 { module: 'MMM-Bing...
ArcBruTile display tiles from OpenStreetMap, Bing, Google, SpatialCloud and TMS/WMS-C Services in ArcGIS Desktop.
本篇文章将深入探讨Bing Map App SDK的核心组件及其在Silverlight中的运用。 首先,我们要了解的是`Microsoft.Maps.Core.dll`,它是Bing Maps SDK的基础库,包含了SDK的主要功能和接口。这个DLL文件提供了地图服务...
Microsoft (Bing) Maps Angular 应用程序用于 Bing 地图的简单可重用 AngularJS 应用程序。 使用 AngularJS 1.2 和 Microsoft Maps Ajax Control 7.0。文档Microsoft 地图 API 参考: : AngularJS 1.2: ://code....
- 实验的目标是使开发者熟悉Bing Maps for Windows Phone,掌握Bing Map控件和数据绑定的使用,以及如何获取和显示地图数据。 - 开始实验前,需要安装Visual Studio、Windows Phone开发工具以及具备稳定的互联网...
Other web services: AMap Search, Bing Maps Elevation API, Bing Maps Location API, HERE Routing API, Open Route Service Directions, Open Route Service Geocoding, Open Street Map Nominatim, Open Street...
bing地图的开发sdk,用于silverlight 开发bing地图应用