In diesem Artikel werde ich Ihnen zeigen, wie Sie Ihre eigenen Funktionen erstellen, um die vielseitigere Verarbeitung zu vereinfachen.
Eine Funktion ist wie ein Ausgabegerät. Erhält die Argumentinformationen und führt den Prozess aus.
Es sieht aus wie Funktionsname (Argument 1, Argument 2, ...)
.
Das Argument fungiert als Parameter.
Mit anderen Worten, wenn Sie mit den Argumenten spielen, ändert sich das Ergebnis des Prozesses.
In dieser Hinsicht ähnelt es dem Kochen. Wenn Sie die Salzmenge (Parameter) ändern, ändert sich natürlich der Geschmack (Ausgabe) des Gerichts.
Es gibt zwei Arten von Funktionen.
** Von jemandem bereitgestellte Funktionen ** und ** Von Ihnen selbst erstellte Funktionen **.
Funktionen wie primitive_cube_add ()
, die häufig verwendete Cubes hinzufügen, sind ** Funktionen, die von jemandem bereitgestellt werden **.
Sie könnten denken, dass es sich um einen langen Funktionsnamen handelt, z. B. "primitive_cube_add ()", aber ich bin sicher, dass einige Onkel hart gearbeitet haben, um zu sprechen, und eine Funktion mit einem so langen Namen erstellt haben. Ich werde.
Ich bin dankbar, die von meinen Onkeln vorbereiteten Funktionen zu verwenden, um meine eigenen Funktionen zu erstellen.
① ** Definition ** ② ** Verwenden **
Fahren Sie in der Reihenfolge fort.
Um etwas genauer zu sein,
def Funktion():
wird bearbeitet
Nach ** Definition ** der Funktion wie
Funktion()
Einfach schreiben.
Lassen Sie uns im nächsten Kapitel einen konkreten Blick darauf werfen.
Lassen Sie uns eine Funktion erstellen, die einen Würfel erscheinen lässt.
Schauen wir uns zunächst die Funktion primitive_cube_add ()
an, die einen Würfel erscheinen lässt, den jemand vorbereitet hat.
import bpy
bpy.ops.mesh.primitive_cube_add()
Verwenden Sie diese Option, um Ihre eigene Funktion zu erstellen.
Im folgenden Beispiel definieren Sie Ihre eigene Funktion namens cube ().
import bpy
#Definition der ursprünglichen Funktion
def cube():
#Eine von jemandem bereitgestellte Funktion
bpy.ops.mesh.primitive_cube_add()
Im obigen Code definiere ich meine ursprüngliche Funktion cube ()
mit def
. Die Struktur ist wie folgt.
def Der Name der von Ihnen erstellten Funktion():
Was Sie tun möchten, wenn Sie eine Funktion aufrufen
② Verwenden Rufen wir die Funktion auf.
cube()
Nur das. Das ganze Bild ist wie folgt.
import bpy
#Funktionsdefinition
def cube():
#Was Sie tun möchten, wenn Sie eine Funktion aufrufen
bpy.ops.mesh.primitive_cube_add()
#Selbstdefinierter Funktionswürfel()Anruf
cube()
Ich denke, es ist einfacher zu verstehen, wenn Sie sich ein konkretes Beispiel ansehen. Deshalb werde ich hier Beispielcode und eine kurze Erklärung veröffentlichen.
import bpy
def cube():
bpy.ops.mesh.primitive_cube_add()
def wireframe():
bpy.ops.object.modifier_add(type='WIREFRAME')
cube()
wireframe()
import bpy
#Eine Funktion, die ein Objekt zu einem Drahtrahmen macht
def wireframe():
bpy.ops.object.modifier_add(type='WIREFRAME')
#Eine Funktion, mit der ein Drahtrahmenwürfel angezeigt wird, während seine Größe geändert wird
def wireframe_cube(_size = 2,num = 3):
for i in range(0,num):
bpy.ops.mesh.primitive_cube_add(
size = _size * i
)
#Machen Sie die erscheinenden Objekte nacheinander zu Drahtgittern
wireframe()
#Die erste Größe ist 1 und verdoppelt sie. Die Anzahl der Würfel beträgt 10.
wireframe_cube(_size = 1,num = 10)
import bpy
#sphere()Definieren Sie eine aufgerufene Funktion
#Ermöglichen Sie die Einstellung der Glätte und der Position des Erscheinungsbilds
def uv_sphere(_segments = 32,_location = (0,0,0)):
bpy.ops.mesh.primitive_uv_sphere_add(
segments=_segments,
location = _location
)
#Lass 3 erscheinen
uv_sphere()
uv_sphere(_segments = 16,_location = (3,0,0))
uv_sphere(_segments = 3,_location = (6,0,0))
import bpy
#Definition einer Funktion, mit der eine beliebige Anzahl von Würfeln an einer beliebigen Stelle in einer Reihe angezeigt wird
#Ersetzen Sie das Argument durch den Standardwert
def cube_line_up(start_position = (0,0,0),num = 2,distance = 2):
for i in range(0,num * distance + 1,distance):
bpy.ops.mesh.primitive_cube_add(
#In X-Achsenrichtung anordnen
location=(start_position[0] + i,start_position[1],start_position[2])
)
#Selbstdefinierter Funktionswürfel()Anruf
cube_line_up()
cube_line_up(start_position = (0,-4,0),num = 10,distance = 5)
cube_line_up(start_position = (0,-8,0),num = 4,distance = 3)
import bpy
#Definition der Funktion, die den Würfel erscheinen lässt
def cube():
bpy.ops.mesh.primitive_cube_add()
#Definition der Funktion, die das Material festlegt
def material(name = 'material',color = (0, 0, 0, 1)):
material_glass = bpy.data.materials.new(name)
#Stellen Sie den Knoten zur Verfügung
material_glass.use_nodes = True
p_BSDF = material_glass.node_tree.nodes["Principled BSDF"]
#0→BaseColor/7→roughness(=Rauheit)/15→transmission(=Vermehrung)
#default_value = (R, G, B, A)
p_BSDF.inputs[0].default_value = color
p_BSDF.inputs[7].default_value = 0
p_BSDF.inputs[15].default_value = 1
#Fügen Sie einem Objekt Materialelemente hinzu
bpy.context.object.data.materials.append(material_glass)
cube()
material(name = 'Red',color = (1, 0, 0, 1))
import bpy
#Definition der Funktion, die den Würfel erscheinen lässt
def cube():
bpy.ops.mesh.primitive_cube_add()
#Definition der Funktion, die das Material festlegt
def material(name = 'material',color = (0, 0, 0, 1)):
material_glass = bpy.data.materials.new(name)
#Stellen Sie den Knoten zur Verfügung
material_glass.use_nodes = True
p_BSDF = material_glass.node_tree.nodes["Principled BSDF"]
#0→BaseColor/4→Metallic(=Metall)/7→Roughness(=Rauheit)
#default_value = (R, G, B, A)
p_BSDF.inputs[0].default_value = color
p_BSDF.inputs[4].default_value = 1
p_BSDF.inputs[7].default_value = 0
#Fügen Sie einem Objekt Materialelemente hinzu
bpy.context.object.data.materials.append(material_glass)
cube()
material(name = 'Blue',color = (0, 0, 1, 1))
englische Wörter | Übersetzung |
---|---|
function | Funktion |
context | Kontext/Umgebung |
append | hinzufügen |
default | Standard |
add | hinzufügen |
distance | Entfernung |
inputs | erhalten |
principled | Prinzip, Prinzip |
line up | Ausrichten |
segments | Teil/Trennung |
Recommended Posts