123456789101112131415161718192021222324252627282930313233 |
- import numpy as np
- import vedo
- N = np.arange(24).reshape([2, 3, 4])
- cubes = []
- texts = []
- positions = []
- xs, ys, zs = N.shape
- for x in range(xs):
- for y in range(ys):
- for z in range(zs):
- pos = (x, y, z)
- val = N[x, y, z]
- cubes.append(vedo.Cube(pos=pos, side=0.6, alpha=0.1))
- positions.append(pos)
- pts = vedo.Points(positions)
- labs= pts.labels2d(font='Quikhand', scale=2, justify="top-center", c="red4")
- vedo.show(cubes, labs, axes=4).close()
- ################################################################### (BUG)
- texts = []
- xs, ys, zs = [2, 1, 2]
- for x in range(xs):
- for y in range(ys):
- for z in range(zs):
- pos = (x, y, z)
- txt = vedo.Text3D(f"{pos}", pos, s=0.05, justify='centered', c='r5')
- txt.rotate_x(0.00001)
- txt.shift(0.00001, 0.00001, 0.00001) # same as rotate_x
- texts.append(txt.follow_camera())
- vedo.show(texts, axes=1)
|