点周围的半径也称为 ASP.NET C# 中的地理围栏与谷歌地图[关闭]

Posted

技术标签:

【中文标题】点周围的半径也称为 ASP.NET C# 中的地理围栏与谷歌地图[关闭]【英文标题】:Radius Around Point also known as Geofence in ASP.NET C# With Google Maps [closed] 【发布时间】:2011-11-27 22:07:21 【问题描述】:

我正在使用 asp.NET C# 开发一个 web 应用程序。我目前正在使用这个地图控制器。 http://googlemap.artembg.com/ 我想要做的是,我想让用户可以点击地图,并且应该在用户点击的位置看到一个标记,并在该区域周围形成一个半径圆圈,并且用户应该可以更改半径。我在 ASP.Net c# 中到处搜索此示例,但找不到。我想要这样的东西:http://www.freemaptools.com/radius-around-point.htm

有什么建议吗?

【问题讨论】:

向我们展示您的代码,我们将帮助您修复它。 问题是,我还没有任何代码。我不知道从哪里开始.. :/ 使用 javascript 更容易!为什么要将它包装在 C# 控件中? 因为我要使用这些位置并将它们存储在 SQL 数据库中 【参考方案1】:

也许为了帮助您入门,您会发现此 javascript 代码很有用,然后尝试将其调整为 C# 控件提供的任何内容。

var map;
var marker;

function initialize() 
    var optns = 
        zoom: 6,
        center: latlng,
        mapTypeId: google.maps.MapTypeId.HYBRID
    
    map = new google.maps.Map(document.getElementById("myMap"), optns);
    google.maps.event.addListener(map, 'click', function(event) 
        setCurrentLocation(event.latLng, 10);
    );


function setCurrentLocation(location, crcl_radius)
    if(marker)
        marker.setMap(null);

    var opts = 
        map: map,
        position: location,
        clickable:false
    ;
    marker = new google.maps.Marker(opts);

    var circle = new google.maps.Circle(
            map: map,
            radius: crcl_radius,
            fillColor:'#efefef',
            fillOpacity:0.5,
            strokeColor:'#ff0000',
            strokeWeight:2
    );
   circle.bindTo('center', marker, 'position');

每当您点击地图时,上面的代码都会创建一个半径为 10 的圆。您可以从那里获取它并尝试使其适应您的需求。

以上假设您有一个 ID 为 myMap 的 div,您的地图将在其中显示。

【讨论】:

以上是关于点周围的半径也称为 ASP.NET C# 中的地理围栏与谷歌地图[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在 PHP 中计算纬度/经度 GPS 点周围的半径

在我周围 5 公里半径值范围内的 android 应用上标记地理位置。

查找具有重叠地理点的半径的地理点

在任意坐标周围找到半径为 r 的球体中的所有点

如何让地理字段填充半径值

画一个圆的半径和点周围的边缘