3d 查找两点之间的所有坐标(三维)

3d 查找两点之间的所有坐标(三维),3d,coordinates,points,3d,Coordinates,Points,我需要的是找出如何获得两点之间的所有坐标,例如,它将输出 Point 1: 0, 0, 0 Point 2: 10, 10, 3 ect。发射型计算机断层扫描仪。。。你明白了。。直到你有了他们之间的每一个合作 使用java真的有点像用数学来实现这一点的任何方法帮助我 正如你所看到的,它们都是整数而不是小数,因此点数不是无限的。伪代码: 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

我需要的是找出如何获得两点之间的所有坐标,例如,它将输出

Point 1: 0, 0, 0
Point 2: 10, 10, 3
ect。发射型计算机断层扫描仪。。。你明白了。。直到你有了他们之间的每一个合作

使用java真的有点像用数学来实现这一点的任何方法帮助我

正如你所看到的,它们都是整数而不是小数,因此点数不是无限的。

伪代码:

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时,您的
for
-循环的步数将为+1或-1,这取决于
p1
p2
的坐标是否较小,您必须明确这一点

但是请注意,尽管这些点符合您的问题描述,但它们并不在给定的
p1
p2
之间。正如您的示例所示,您将得到一个立方体,其两个对角是给定的点。也许这就是你真正想要的


如果您发现您实际上想要在
p1
p2
之间的线上或周围的点,那么这是一个更难的问题(仅仅因为您想要整数)。

您不可能得到两个点之间的每个点,因为这两个点之间有无限多的点。你需要某种粒度。点数不是无限的。。这是一个电子游戏,实际上没有小数,所以坐标中只有整数。
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