Point 1: 0, 0, 0
Point 2: 10, 10, 3
我需要弄清楚如何获得两点之间的所有坐标,例如它会输出
0, 0, 0
0, 0, 1
0, 0, 2
0, 0, 3
0, 1, 0
0, 1, 1
0, 1, 2
0, 1, 3
1, 0, 0
1, 1, 0
1, 0, 1
1, 1, 1
等。等等......你明白了......直到你们两人之间的协调为止。
使用java kindof所以用数学实现这一点的任何方式帮助我!
你可以看到它们都是整数而不是小数,所以没有无限的点数。
答案 0 :(得分:0)
伪代码:
for (x from p1.x to p2.x)
for (y from p1.y to p2.y)
for (z from p1.z to p2.z)
new_point = (x, y, z) // do what you will with this
确保将伪代码转换为Java时,for
- 循环的步数为+1或-1,具体取决于p1
或p2
是否具有较小的坐标,你必须明确这一点。
但请注意,尽管这些点符合您的问题说明,但它们并非“在”p1
和p2
之间。正如您的示例所示,您将得到一个立方体,其中两个对角是给定的点。也许这就是你真正想要的?
如果您发现实际上想要 p1
和p2
之间行上或周围的点,则这是一个更难的问题(仅仅因为您需要整数)。