blob: 7e74dc5c3afe18deb048c263db3bbade840e7c0b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
class CellIndexer:
def __init__(self, geometry):
self.geometry = geometry
def neighbor(self, c_i):
return self.gid(*[ c for _, c in enumerate(c_i) ])
class XYZ(CellIndexer):
pass
def gid(self, x, y, z=0):
return x*self.geometry.size_y*self.geometry.size_z + y*self.geometry.size_z + z
class ZYX(CellIndexer):
pass
def gid(self, x, y, z=0):
return z*self.geometry.size_x*self.geometry.size_y + y*self.geometry.size_x + x
|