相关疑难解决方法(0)

点与线段之间的最短距离

我需要一个基本函数来找到点和线段之间的最短距离.随意用您想要的任何语言编写解决方案; 我可以把它翻译成我正在使用的(Javascript).

编辑:我的线段由两个端点定义.所以我的线段AB由两点A (x1,y1)和B (x2,y2).我试图找到这个线段和一个点之间的距离C (x3,y3).我的几何技能很生疏,所以我看到的例子令人困惑,我很遗憾地承认.

language-agnostic geometry distance line-segment

337
推荐指数
19
解决办法
24万
查看次数

将纬度和经度坐标分为顺时针有序的四边形

问题

用户可以按任何顺序提供最多四个纬度和经度坐标.他们使用谷歌地图.使用Google的PolygonAPI(v3),他们选择的坐标应突出显示四个坐标之间的选定区域.

题

如何按(逆时针)顺序排列纬度和经度坐标数组?

解决方案和搜索

StackOverflow问题

相关网站

已知算法

  • 格雷厄姆的扫描(太复杂了)
  • Jarvis March算法(处理N点)
  • 递归凸壳(删除一个点)

码

这是我到目前为止:

// Ensures the markers are sorted: NW, NE, SE, SW
function sortMarkers() {
  var ns = markers.slice( 0 );
  var ew = markers.slice( 0 );

  ew.sort( function( a, b ) {
    if( a.position.lat() < b.position.lat() ) {
      return -1;
    }
    else if( a.position.lat() > b.position.lat() ) {
      return 1;
    }

    return 0;
  });

  ns.sort( function( a, b …
Run Code Online (Sandbox Code Playgroud)

javascript geometry coordinates grahams-scan

32
推荐指数
2
解决办法
2万
查看次数

如何对Google地图多边形中的点进行排序,以便线条不会交叉?

我正在尝试制作一个地图,用户可以在其中勾勒出他们想要的任何形状.但我遇到的问题是,用户可以选择使多边形线交叉的点,并排除我想要包含的区域.

要查看我在说什么,请转到此页面并执行以下步骤:

  1. 点击4个点来制作一个方框的4个角
  2. 在您刚制作的4个点中的每个点之间单击以进一步定义框的周边
  3. 点击完成

你应该看到这样的东西:

替代文字http://polygon.abemiester.com/1.bmp

有没有一种简单的方法来解决这个问题,或者我基本上处理的是"旅行推销员"类型的情况?所有的逻辑都是用javascript完成的,所以如果你想看看我是怎么做的,请随意"查看源代码".

sorting google-maps polygon convex-hull

5
推荐指数
1
解决办法
4228
查看次数