Click here to download the full example code
Visualize SDF Actor#
Here is a simple tutorial that shows how to visualize SDF primitives using FURY.
SDFs or Signed-distance functions when passed the coordinates of a point in space, return the shortest distance between that point and some surface. This property of SDFs can be used to model 3D geometry at a faster rate compared to traditional polygons based modeling.
In this example we use the raymarching algorithm to render the SDF primitives shapes using shaders
import numpy as np from fury import actor, window
Lets define variables for the SDF Actor
dirs = np.random.rand(4, 3) colors = np.random.rand(4, 3) * 255 centers = np.array([[1, 0, 0], [0, 0, 0], [-1, 0, 0], [0, 1, 0]]) scales = np.random.rand(4, 1)
Create SDF Actor
Create a scene
scene = window.Scene() scene.background((1.0, 0.8, 0.8)) scene.add(sdfactor)
Since all the elements have been initialised ,we add them to the show manager.
current_size = (1024, 720) showm = window.ShowManager(scene, size=current_size, title='Visualize SDF Actor') interactive = False if interactive: showm.start() window.record(scene, out_path='viz_sdfactor.png', size=current_size)
Total running time of the script: ( 0 minutes 0.109 seconds)