I have this bit of code
def build_tree_base(blocks, x, y, z): indicies = [ (x ,z ,y ), (x ,z+1,y ), (x ,z ,y+1), (x ,z+1,y+1), (x+1,z ,y ), (x+1,z+1,y ), (x+1,z ,y+1), (x+1,z+1,y+1), ] children = [blocks[i] for i in indicies] return Node(children=children)
If the blocks are a three-dimensional numpy array.
What I would like to do is to replace the list comprehension with something like numpy.take, however, it seems that this applies only to unit dimension indices. Is there something like this that will work with multidimensional indexes?
I also know that you can do this with transpose, cut, and then change, but it was slow, so I'm looking for the best option.