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