Fury Arrow Actor#

This example shows how to use the arrow actor.

import fury
import numpy as np

First thing, you have to specify centers, directions, and colors of the arrow(s)

centers = np.zeros([3, 3])

np.identity is the same as specifying x, y, and z directions.

dirs = np.identity(3)
colors = np.identity(3)
scales = np.array([2.1, 2.6, 2.5])

The below arrow actor is generated by repeating the arrow primitive.

arrow_actor = fury.actor.arrow(centers, dirs, colors=colors, scales=1.5)

repeating what we did but this time with random centers, directions, and colors.

cen2 = np.random.rand(5, 3)
dir2 = np.random.rand(5, 3)
cols2 = np.random.rand(5, 3)

arrow_actor2 = fury.actor.arrow(cen2, dir2, colors=cols2, scales=1.5)

scene = fury.window.Scene()

Adding our Arrow actors to scene.

scene.add(arrow_actor)
scene.add(arrow_actor2)

interactive = False

if interactive:
    fury.window.show(scene, size=(600, 600))

fury.window.record(scene, out_path="viz_arrow.png", size=(600, 600))
viz arrow
/opt/homebrew/Caskroom/miniforge/base/envs/py39/lib/python3.9/site-packages/sphinx_gallery/gen_rst.py:722: UserWarning: We'll no longer accept the way you call the record function in future versions of FURY.

Here's how to call the Function record: record(scene='value', cam_pos='value', cam_focal='value', cam_view='value', out_path='value', path_numbering='value', n_frames='value', az_ang='value', magnification='value', size='value', reset_camera='value', screen_clip='value', stereo='value', verbose='value')

  exec(self.code, self.fake_main.__dict__)

Total running time of the script: (0 minutes 0.052 seconds)

Gallery generated by Sphinx-Gallery