API

How to check the list of operators added to the area header

To add an operator to the area header, we can use the “append” and “prepend” functions specifying in its parameters the drawing function of the operator call button.

For example, to add an operator of adding the default cube to the header of the viewport (3D View) area, we need to define the operator drawing function:

and add it to the window header:

The operator button will appear in the header of the viewport window.

Now we can view a list of all the functions that add operators to the area header by the “_draw_funcs” property of the “draw” method.

Note that the “_draw_funcs” property would be defined only if custom operators have been added to the area header. If custom operators were not added to the header, an error will be thrown:

AttributeError: ‘function’ object has no attribute ‘_draw_funcs’

How to create camera through the Blender Python API

To create and add a camera to the scene with the Blender Python API we need to do the following:

1. Create a camera data-block

2. Create an object and link it with the camera date-block, we created

3. Add created camera-object to the scene

A new camera will be created in the current scene in its main collection.

Final code:

Using the FileBrowser interface window to opening and saving files

In scripts and add-ons for importing-exporting files with formats that are not supported in Blender by default, we must give the user an ability to select files using the “FileBrowser” interface.

To open the file browser window, and after the user selects the necessary file, to return the path to it, we need to use the “ImportHelper” and the “ExportHelper” classes.

How to install required packages to the Blender Python with pip

For add-ons development, sometimes it is necessary to use packages that are not included in the core set of the Blender Python interpreter. Most often, the dependencies you need are included in the Python Package Index (PyPI) and can be installed to Blender through the Pip package management system.

For Windows 10 see the updated version of this article.

The Pip Package Manager is already installed in Blender. However, Blender does not allow us to install the desired packages in a common way with the “pip install package_name” command.

How to rotate objects through the Blender Python API

For objects rotation, we can use the “rotation_euler” property. This property is a list of three items, each of them corresponds to the rotation angle around the X, Y, and Z-axis. TheĀ otation_euler[0] contains the rotation angle around the X-axis, rotation_euler[1] – around the Y-axis, and rotation_euler[2] – around the Z-axis. To rotate an object we must set a rotation angle to the appropriate field of the property.

For example, to rotate an active object around the X-axis to the 90 degrees angle we must execute the following command:

math.radians is used to convert degrees to radians.