napari.components.Camera

class napari.components.Camera(*, center: Tuple[float, float, float] = (0.0, 0.0, 0.0), zoom: float = 1.0, angles: Tuple[float, float, float] = (0.0, 0.0, 90.0), perspective: float = 0, interactive: bool = True)[source]

Bases: napari.utils.events.evented_model.EventedModel

Camera object modeling position and view of the camera.

center

Center of the camera. In 2D viewing the last two values are used.

Type

3-tuple

zoom

Scale from canvas pixels to world pixels.

Type

float

angles

Euler angles of camera in 3D viewing (rx, ry, rz), in degrees. Only used during 3D viewing. Note that Euler angles’s intrinsic degeneracy means different sets of Euler angles may lead to the same view.

Type

3-tuple

perspective

Perspective (aka “field of view” in vispy) of the camera (if 3D).

Type

float

interactive

If the camera interactivity is enabled or not.

Type

bool

Methods

Attributes

asdict()

Convert a model to a dictionary.

calculate_nd_view_direction(ndim, dims_displayed)[source]

Calculate the nD view direction vector of the camera.

Parameters
  • ndim (int) – Number of dimensions in which to embed the 3D view vector.

  • dims_displayed (Tuple[int]) – Dimensions in which to embed the 3D view vector.

Returns

view_direction_nd – nD view direction vector as an (ndim, ) ndarray

Return type

np.ndarray

classmethod construct(_fields_set=None, **values)

Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

Return type

Model

copy(*, include=None, exclude=None, update=None, deep=False)

Duplicate a model, optionally choose which fields to include, exclude and change.

Parameters
  • include (Union[ForwardRef, ForwardRef]) – fields to include in new model

  • exclude (Union[ForwardRef, ForwardRef]) – fields to exclude from new model, as with values this takes precedence over include

  • update (DictStrAny) – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

  • deep (bool) – set to True to make a deep copy of the model

Return type

Model

Returns

new model instance

dict(*, include=None, exclude=None, by_alias=False, skip_defaults=None, exclude_unset=False, exclude_defaults=False, exclude_none=False)

Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

Return type

DictStrAny

enums_as_values(as_values=True)

Temporarily override how enums are retrieved.

Parameters

as_values (bool, optional) – Whether enums should be shown as values (or as enum objects), by default True

json(*, include=None, exclude=None, by_alias=False, skip_defaults=None, exclude_unset=False, exclude_defaults=False, exclude_none=False, encoder=None, **dumps_kwargs)

Generate a JSON representation of the model, include and exclude arguments as per dict().

encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

Return type

unicode

reset()

Reset the state of the model to default values.

update(values)

Update a model in place.

Parameters

values (dict, napari.utils.events.EventedModel) – Values to update the model with. If an EventedModel is passed it is first converted to a dictionary. The keys of this dictionary must be found as attributes on the current model.

classmethod update_forward_refs(**localns)

Try to update ForwardRefs on fields based on this Model, globalns and localns.

Return type

None

property view_direction

3D view direction vector of the camera.

View direction is calculated from the Euler angles and returned as a (3,) array.

Return type

ndarray