SplinesΒΆ
Make a ball with some random splines.
1import time
2
3import numpy as np
4
5import viser
6
7
8def main() -> None:
9 server = viser.ViserServer()
10 for i in range(10):
11 positions = np.random.normal(size=(30, 3)) * 3.0
12 server.scene.add_spline_catmull_rom(
13 f"/catmull_{i}",
14 positions,
15 tension=0.5,
16 line_width=3.0,
17 color=np.random.uniform(size=3),
18 segments=100,
19 )
20
21 control_points = np.random.normal(size=(30 * 2 - 2, 3)) * 3.0
22 server.scene.add_spline_cubic_bezier(
23 f"/cubic_bezier_{i}",
24 positions,
25 control_points,
26 line_width=3.0,
27 color=np.random.uniform(size=3),
28 segments=100,
29 )
30
31 while True:
32 time.sleep(10.0)
33
34
35if __name__ == "__main__":
36 main()