Wie man ein einfaches Gitter in Blender 2.50 über das Python-API erstellen
-
01-10-2019 - |
Frage
Ich möchte ein einfaches Netz in Blender (2,50) über das Python-API erstellen, aber die Beispiele aus der API-Dokumentation noch nicht funktionieren.
Ich habe versucht, die folgenden, aber es ist von 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
Das funktioniert nicht, weil das Netzobjekt hat keine faces
oder verts
Mitglieder.
Gibt es Möglichkeiten, dies zu tun?
Lösung
Versuchen Sie diese Dokumentation für den 2.5x-API. Ich verstehe, dass trotz der großen Warnungen an der Spitze, die am meisten verwendeten Abschnitte jetzt ziemlich stabil sind. Ich habe es noch nicht probiert.
EDIT:
ich denke, das entsprechende Bit ist In diesem Abschnitt - es scheint, dass Sie eine Liste von Scheitelflächen usw. erstellen und an diese übergeben. Dies scheint aus den jüngsten Beispielen geändert haben wir finden können. Versuchen Sie suchen in Ihren Skripts Ordner -. Es könnte ein Beispiel sein, dort, dass Sie betrachten können
EDIT 2: Ich habe den Link zu Punkt auf den aktuellen Live-docs aktualisiert. Die Noten dort vermuten, dass es wahrscheinlich bessere Möglichkeiten, dies jetzt zu tun, aber es ist eine lange Zeit, da ich jeden Mixer Scripting getan haben kann keine Hilfe mehr.
Andere Tipps
Dank neil, fand ich den folgenden Abschnitt aus der Dokumentation:
Skripte für Blender 2.50 - In Mesh-Scripts
Ich werde das folgende Skript versuchen und meine Ergebnisse berichten: