Dans cet article, je vais vous montrer comment créer vos propres fonctions pour faciliter le traitement plus polyvalent.
Une fonction est comme un périphérique de sortie. Reçoit les informations d'argument et exécute le processus.
Cela ressemble à `` nom de la fonction (argument 1, argument 2, ...) ''. L'argument agit comme un paramètre. En d'autres termes, si vous jouez avec les arguments, le résultat du processus changera.
À cet égard, c'est similaire à la cuisine. Si vous modifiez la quantité de sel (paramètre), le goût (rendement) du plat changera naturellement.
Il existe deux types de fonctions.
** Fonctions fournies par quelqu'un ** et ** Fonctions créées par vous-même **.
Les fonctions telles que `` primitive_cube_add () '' qui ajoutent des cubes qui ont été fréquemment utilisés sont des ** fonctions fournies par quelqu'un **.
Vous pourriez penser que c'est un nom de fonction long, tel que `` primitive_cube_add () '', mais je suis sûr que certains oncles ont travaillé dur pour parler et ont créé une fonction avec un nom aussi long. Je vais.
Je suis reconnaissant d'utiliser les fonctions préparées par mes oncles pour créer mes propres fonctions.
① ** Définition ** ② ** Utiliser **
Procédez dans l'ordre de.
Pour être un peu plus précis,
fonction def():
En traitement
Après avoir ** défini ** la fonction comme
fonction()
Ecrivez.
Jetons un regard concret dans le prochain chapitre.
Créons une fonction qui fait apparaître un cube.
Tout d'abord, jetons un coup d'œil à la fonction `` primitive_cube_add () '' qui fait apparaître un cube que quelqu'un a préparé.
import bpy
bpy.ops.mesh.primitive_cube_add()
Utilisez ceci pour créer votre propre fonction.
Dans l'exemple ci-dessous, vous définissez vous-même une fonction appelée cube ().
import bpy
#Définition de la fonction d'origine
def cube():
#Une fonction fournie par quelqu'un
bpy.ops.mesh.primitive_cube_add()
Dans le code ci-dessus, je ** définis ** ma fonction d'origine cube () '' en utilisant
def ''. La structure est la suivante.
def Le nom de la fonction que vous créez():
Ce que vous voulez faire lorsque vous appelez une fonction
② Utiliser Appelons la fonction.
cube()
Seulement ça. L'image entière est la suivante.
import bpy
#Définition des fonctions
def cube():
#Ce que vous voulez faire lorsque vous appelez une fonction
bpy.ops.mesh.primitive_cube_add()
#Cube de fonctions auto-défini()Appel
cube()
Je pense que c'est plus facile à comprendre si vous regardez un exemple concret, donc je posterai un exemple de code et une brève explication d'ici.
import bpy
def cube():
bpy.ops.mesh.primitive_cube_add()
def wireframe():
bpy.ops.object.modifier_add(type='WIREFRAME')
cube()
wireframe()
import bpy
#Une fonction qui fait d'un objet un fil de fer
def wireframe():
bpy.ops.object.modifier_add(type='WIREFRAME')
#Une fonction qui fait apparaître un cube en fil de fer tout en modifiant sa taille
def wireframe_cube(_size = 2,num = 3):
for i in range(0,num):
bpy.ops.mesh.primitive_cube_add(
size = _size * i
)
#Transformez les objets en fil de fer un par un
wireframe()
#La première taille est 1 et le double. Le nombre de cubes est de 10.
wireframe_cube(_size = 1,num = 10)
import bpy
#sphere()Définissez une fonction appelée
#Permet l'ajustement de la douceur et de la position de l'apparence
def uv_sphere(_segments = 32,_location = (0,0,0)):
bpy.ops.mesh.primitive_uv_sphere_add(
segments=_segments,
location = _location
)
#Faire apparaître 3
uv_sphere()
uv_sphere(_segments = 16,_location = (3,0,0))
uv_sphere(_segments = 3,_location = (6,0,0))
import bpy
#Définition d'une fonction qui fait apparaître n'importe quel nombre de cubes dans une ligne depuis n'importe quel endroit
#Remplacez l'argument par la valeur par défaut
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(
#Disposer dans la direction de l'axe X
location=(start_position[0] + i,start_position[1],start_position[2])
)
#Cube de fonctions auto-défini()Appel
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
#Définition de la fonction qui fait apparaître le cube
def cube():
bpy.ops.mesh.primitive_cube_add()
#Définition de la fonction qui définit le matériau
def material(name = 'material',color = (0, 0, 0, 1)):
material_glass = bpy.data.materials.new(name)
#Rendre le nœud disponible
material_glass.use_nodes = True
p_BSDF = material_glass.node_tree.nodes["Principled BSDF"]
#0→BaseColor/7→roughness(=Rugosité)/15→transmission(=propagation)
#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
#Ajouter des éléments matériels à un objet
bpy.context.object.data.materials.append(material_glass)
cube()
material(name = 'Red',color = (1, 0, 0, 1))
import bpy
#Définition de la fonction qui fait apparaître le cube
def cube():
bpy.ops.mesh.primitive_cube_add()
#Définition de la fonction qui définit le matériau
def material(name = 'material',color = (0, 0, 0, 1)):
material_glass = bpy.data.materials.new(name)
#Rendre le nœud disponible
material_glass.use_nodes = True
p_BSDF = material_glass.node_tree.nodes["Principled BSDF"]
#0→BaseColor/4→Metallic(=métal)/7→Roughness(=Rugosité)
#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
#Ajouter des éléments matériels à un objet
bpy.context.object.data.materials.append(material_glass)
cube()
material(name = 'Blue',color = (0, 0, 1, 1))
mots anglais | Traduction |
---|---|
function | fonction |
context | le contexte/environnement |
append | ajouter |
default | Défaut |
add | ajouter |
distance | distance |
inputs | avoir |
principled | Principe, principe |
line up | S'aligner |
segments | partie/Séparation |
Recommended Posts