从相反的矢量坐标创建三维网格

2024-06-07 16:17:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在寻找一种基于立方体的两个相反端点(a=(x1,y1,z1) and b=(x2,y2,z2))创建三维网格的方法。每个维度的步长为1。 刚刚发现了一些以(0,0,0)开头的numpy fct,在我的例子中,虽然起始点是可变的和负的(例如(-5,-10,-15))。你知道吗


Tags: and方法numpy网格端点例子x1x2
2条回答

列表理解FTW!你知道吗

xRng = range(a[0],b[0]+1)
yRng = range(a[1],b[1]+1)
zRng = range(a[2],b[2]+1)
g = [(a,b,c) for a in xRng for b in yRng for c in zRng]

使用^{}(或^{},如果您想要密集网格):

>>> x1, y1, z1 = -4, -3, -2
>>> x2, y2, z2 = 4, 3, 2
>>> np.ogrid[x1:x2, y1:y2, z1:z2]
 [array([[[-4]],

       [[-3]],

       [[-2]],

       [[-1]],

       [[ 0]],

       [[ 1]],

       [[ 2]],

       [[ 3]]]),
 array([[[-3],
        [-2],
        [-1],
        [ 0],
        [ 1],
        [ 2]]]),
 array([[[-2, -1,  0,  1]]])]

相关问题 更多 >

    热门问题