Come creare un semplice maglia in Blender 2.50 tramite l'API di Python
-
01-10-2019 - |
Domanda
vorrei creare un semplice maglia in Blender (2,50) tramite l'API di Python, ma gli esempi dalla documentazione delle API non funzionano ancora.
Ho provato quanto segue ma è da API 2.49
from Blender import *
import bpy
editmode = Window.EditMode() # are we in edit mode? If so ...
if editmode: Window.EditMode(0) # leave edit mode before getting the mesh
# define vertices and faces for a pyramid
coords=[ [-1,-1,-1], [1,-1,-1], [1,1,-1], [-1,1,-1], [0,0,1] ]
faces= [ [3,2,1,0], [0,1,4], [1,2,4], [2,3,4], [3,0,4] ]
me = bpy.data.meshes.new('myMesh') # create a new mesh
me.verts.extend(coords) # add vertices to mesh
me.faces.extend(faces) # add faces to the mesh (also adds edges)
me.vertexColors = 1 # enable vertex colors
me.faces[1].col[0].r = 255 # make each vertex a different color
me.faces[1].col[1].g = 255
me.faces[1].col[2].b = 255
scn = bpy.data.scenes.active # link object to current scene
ob = scn.objects.new(me, 'myObj')
if editmode: Window.EditMode(1) # optional, just being nice
Questo non funziona perché l'oggetto mesh non ha alcun membro faces
o verts
.
Ci sono opzioni per fare questo?
Soluzione
questa documentazione per il 2.5x API. Capisco che, nonostante le grandi avvertimenti nella parte superiore, le sezioni più utilizzate sono abbastanza stabili ora. Non ho ancora provato.
EDIT:
Credo che il bit rilevante è questa sezione - sembra si crea un elenco di vertici facce ecc e passarlo a questo. Questo sembra aver cambiato dagli esempi più recenti che posso trovare. Prova a guardare negli script cartella -. Ci potrebbe essere un esempio che ci si può guardare
EDIT 2: Ho aggiornato il link al punto agli attuali documenti in tempo reale. Le note ci suggeriscono che probabilmente ci sono modi migliori per farlo ora, ma è da molto tempo che ho fatto qualsiasi scripting frullatore in modo da non può fare di più.
Altri suggerimenti
Grazie a Neil, ho trovato la seguente sezione della documentazione:
Script per Blender 2.50 - aggiungere script Mesh
cercherò il seguente script e riferire i miei risultati: