已知一个坐标A(x,y),求离A最近的N个坐标点,这个怎么算?

XBing 2009-02-02 10:58:03
已知一个坐标A(x,y),求离A最近的N个坐标点,这个怎么算?
...全文
154 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
sphinger 2009-02-02
  • 打赏
  • 举报
回复
你要做寻路还是什么?可以说更清楚就好了
wanghui0380 2009-02-02
  • 打赏
  • 举报
回复
恐怕是想做三角剖分,否则这个问题没啥实际意义。
我姓区不姓区 2009-02-02
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 XBing 的回复:]
我不是说了 找离A最近的N个坐标点吗,N就是一个确定值啊,可以是13,50,98,109......
[/Quote]
关键就是什么叫离A最近?
怎样才叫最近?
知道什么叫最近之后怎样筛选出这N个点?
这些条件都没有怎么做?
cpio 2009-02-02
  • 打赏
  • 举报
回复
两点间距离公式:

((x1-x2)平方+(y1-y2)平方)开方
CutBug 2009-02-02
  • 打赏
  • 举报
回复
无限个
XBing 2009-02-02
  • 打赏
  • 举报
回复
我不是说了 找离A最近的N个坐标点吗,N就是一个确定值啊,可以是13,50,98,109......
fengjian_428 2009-02-02
  • 打赏
  • 举报
回复
肯定要一个一个比较了啊 不然你怎么知道?
我姓区不姓区 2009-02-02
  • 打赏
  • 举报
回复
就这么点条件,可以说有无限个
fengjian_428 2009-02-02
  • 打赏
  • 举报
回复

//两点坐标距离为(X-X1)平方+(Y-Y1)平方再开根号
int x;
int y;
int iTemp=...;sPoints[0]与坐标X,Y的距离
string[] sPoints=....;//数据源{"x,y","x1,y1"....}
HashTable htData=new HashTable();
for(int i=0;i<sPoints.Length();i++)
{
if(sPoints[i]与X,Y的距离等于iTemp)
htData.Add(i.ToString(),sPoints[i]);
if(sPoints[i]与X,Y的距离小于iTemp)
{
htData.Clear();
htData.Add(i.ToString(),sPoints[i]);
iTemp=sPoints[i]与坐标X,Y的距离;
}
}
return htData;
XBing 2009-02-02
  • 打赏
  • 举报
回复
如何算,如何比较,一共有几十万个坐标点,不可能一个一个的算和比较吧
CsToD 2009-02-02
  • 打赏
  • 举报
回复
8个啊
x-1,y-1
x-1,y
x-1,y+1
x,y-1
x,y+1
x+1,y-1
x+1,y
x+1,y+1
cpio 2009-02-02
  • 打赏
  • 举报
回复
一个个算出来比较啊
XBing 2009-02-02
  • 打赏
  • 举报
回复
有人知道吗,帮忙解决一下啊
peakal 2009-02-02
  • 打赏
  • 举报
回复
可以参考Bresenham画圆算法

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧