[PYTHON] Skript zum Durchsuchen aller ausgewählten Objekthierarchien in Blender

List Relatives -ad Befehl in Maya In Maya kann es in einer Zeile ausgeführt werden, aber in Blender scheint es nicht einfach zu sein (?), Und es scheint, dass Sie dies nur tun können, wenn Sie selbst eine rekursive Funktion erstellen.

↓ Wenn Sie mit einem ausgewählten Objekt ausführen, werden alle Objektnamen in der unteren Hierarchie gedruckt.

import bpy

def return_hierarchy(ob):
	hierarchyList = []
	def recurse(ob):
		hierarchyList.append(ob.name)
		if not len(ob.children) == 0:
			for child in ob.children:
				recurse(child)
		return
	recurse(ob)
	return hierarchyList

selectList = bpy.context.selected_objects
his = return_hierarchy(selectList[0])
for hi in his:
	print(hi)

hierarchyList.append (ob.name) Wenn Sie es in hierarchyList.append (ob) ändern, können Sie das Objekt selbst anstelle des Namens abrufen.

Übrigens, hier ist, wie man so etwas wie listRelatives -c macht https://qiita.com/pekochun/items/48433271c9d7e20a0b7c

Persönliche Notizen Ich bin mir ein wenig unsicher, also lassen Sie es mich bitte wissen, wenn Sie einen Fehler machen.

Recommended Posts

Skript zum Durchsuchen aller ausgewählten Objekthierarchien in Blender
Drucken Sie einfach das ausgewählte Objekt in Blender
[Blender] Druckt alle an das Objekt angehängten ShapeKey-Namen
Skript an mysqldump an alle MySQL-DBs
[Blender] Skript zum Überprüfen, ob es sich bei dem ausgewählten um ein Netz handelt
Artikel zum Lesen, wenn Blenders Python-Skriptcode in 2.80 nicht funktioniert
Pin aktuelles Verzeichnis an Skriptverzeichnis in Python
Beispielskript zum Überfüllen von Signalen in Python
Verweisen auf Umgebungsvariablen in Python in Blender
So verschieben Sie das BufferImageStim-Objekt in PsychoPy
In Blender ein Skript, das nur alle Objekte direkt unter einer bestimmten Gruppe verbindet
Programm zur vollständigen Suche nach Sequenzen (zur Wettbewerbsprogrammierung)
Unterschied in der Objekt-ID aufgrund des Imports in Python