算法..找到最近的相邻矩形..在所有 4 个方向
哪种空间搜索算法..将有助于查询给定矩形..在所有4个方向(即顶部、左侧、底部、右侧)的最近相邻矩形。
1:距离是从矩形的一侧到另一个矩形的相对侧的正交距离。
2:矩形实际上代表表单上的 GUI 组件。
Which Spatial Search Algorithm..would help in querying the nearest neighboring rectangle ..for a Given Rectangle ..in all 4 directions(ie Top ,Left,Bottom ,Right).
1: The distance is orthogonal from one side of the rectangle..to the opposite side of the other rect.
2: Rectangles actually represent GUI components on a form.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在java中以OOP风格进行操作,假设轴从左下角开始并增加:
所以现在你有一个用矩形实例化的对象计算矩形的最小和最大跨度,这个
Displacement
对象是借助minDistance(...)
能够找到与另一个Displacement
的最小距离现在您可以轻松地执行类似的操作:
我用 Java 编写它只是为了快速提供一个例如,但方法在每种语言中都可以相同..
您可以通过将计算距离的方式拆分为不同的方向,轻松地以不同的方式处理每个方向,这样您就可以执行我在前面的代码片段中所做的相同工作,但拆分为每个轴。
Doing it OOP style in java, assuming axis that start from lower left corner and increasing:
So now you have an object that instantiated with a rectangle calculates the minimal and maximals spans of the rectangle, this
Displacement
object is able to find the minimum distance with anotherDisplacement
thanks tominDistance(...)
Now you can easily do something like that:
I wrote it in Java just to give a quick example but the approach can be the same in every language..
you can easily treat every direction in a different way by splitting the way you calculate distance over different cartinal directions, so you can do the same work I did in previous snippet but splitted for every axis.