Zoeken in een scène

Doelen

objImage Als objecten zijn gemaakt kun je deze gaan manipuleren. Maar eerst moeten we weten welke objecten er in een scène zitten.

Instructies / Taken

  1. Wat zijn de mogelijkheden die je hebt met lijsten? Als je twijfelt kun je kijken naar Python Basis: lijsten

  2. Maak een script dat de code van deze les uitvoert.

  3. Voeg een nieuw object toe aan de scène en voer het script opnieuw uit.

Laat alle objecten zien

Blender zet standaard een aantal objecten in een scène. Om de lijst te krijgen met alle beschikbare objecten in je scène kun je gebruik maken van de submodule bpy.data. In het onderstaande script zie je hoe je een lijst met alle beschikbare objecten krijgt:

#!bpy
"""
Name: 'object-list.py'
Blender: 2.77
Group: 'Discover'
Tooltip: 'Find objects in a scene'
"""
import bpy


def get_list_of_objects():
    " Print list of objects in a scene "
    for i in bpy.data.objects:
        print(i)


if __name__ == '__main__':
    # call the new function
    get_list_of_objects()

Uitleg

De module bpy.data bevat objecten. Je kunt een lijst met alle objecten in de huidige scène krijgen. Er is een for-loop gebruikt om alle objecten te printen.

Het resultaat voor een nieuwe Blender scène ziet er als volgt uit:

<bpy_struct, Object("Camera")>
<bpy_struct, Object("Cube")>
<bpy_struct, Object("Lamp")>

Je kunt je voorstellen wat voor soort objecten er beschikbaar zijn in deze scène.