计算两个不规则图形最近距离的两点

jiajia4212 2006-07-13 07:30:08
现在有两个不规则的图形(两对边已知,另外两对边为直线),已知包围它们的矩形的中心点,分别为(x1,y1)和(x2,y2),求这两个不规则图形的最近距离的点的坐标,怎么编程?
...全文
823 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
庄鱼 2006-07-13
  • 打赏
  • 举报
回复
不需要那么复杂。
你仅需要将两点连线,然后做一组法线看看是否存在图像交错的情况,如果没有,只须计量交点距离,如有交错,根据交错点计算彼此交错斜率是否相同,相同说明交错是平行的,计算其间距即可,如果不同,说明存在斜交错,计算其平均交错线,取其法线最短的交点,即为最近点距离。
triace_zhang 2006-07-13
  • 打赏
  • 举报
回复 1
不规则图形求最近点要用空间分割的方法,已经有了两个包围矩形,则对这两个矩形采用四叉树分割法,每次分割后用遍历找出最近的两个节点,然后再次对节点以四叉树划分。这是个很复杂的过程,楼主可以参考有关空间分割方面的具体资料。
jixingzhong 2006-07-13
  • 打赏
  • 举报
回复
呵呵, 好像有点问题 ...
矩形的中心点,
呵呵, 没有看清楚艾 ..

楼主是否把题目再解释一下?
已知包围它们的矩形的中心点,==》这个矩形有什么特性?
似乎中心点在哪里都可以把,
只要长和宽足够就肯定可以包括这个 不规则图形 ...

是不是这个矩形是最小的 ?
还是 ?
jixingzhong 2006-07-13
  • 打赏
  • 举报
回复
已知包围它们的矩形的中心点,分别为(x1,y1)和(x2,y2)
===========================
连接 (x1,y1)和(x2,y2) 的到一条直线,
这条直线和 两个 不规则的图形 至少各有一个交点,
(如果是多个交点, 如凹多边形, 取最接近外接矩形边框的点)
这两个交点的连线就是最小距离,
也就是这两个点就是要求的点 ...

所以,
只要编程找出符合 经过(x1,y1)和(x2,y2) 两个点的直线方程,
并符合多边形边界线方程的解就可以了。

相当于解两组 2元1次方程组 ....
这个简单吧 ...
ckp 2006-07-13
  • 打赏
  • 举报
回复
2对边是直线,曲线?

64,674

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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