Extending OVITO

OVITO Pro

You can add new functionality to OVITO by writing it in Python: modifiers, pipeline sources, file readers and writers, viewport layers, and utility applets. Such extensions integrate seamlessly into the graphical user interface of OVITO Pro, and you can use them in your Python scripts, too.

Overview

The available extension types and the rules your code must follow when running inside OVITO Pro.

Python extensions
Modifiers

Implement new data analysis or manipulation functions that can be inserted into a pipeline.

User-defined modifiers
Parameters

Define adjustable parameters for any class-based extension, which OVITO Pro displays as input widgets.

Parameters of Python extensions
Pipeline sources

Generate the input data of a pipeline dynamically.

User-defined pipeline sources
File readers and writers

Import data from new file formats, or export results in custom formats.

User-defined file readers
Viewport layers

Draw text, plots, and graphics on top of rendered images and interactive viewports.

User-defined viewport layers
Utility applets

Add custom panels with actions and automations to the OVITO Pro user interface.

User-defined utility applets