2013-06-30 3 views
5

Io uso frullatore 2.6 e aggiungere un oggetto di testo consceneggiatura frullatore: come scrivere a oggetto di testo

bpy.ops.object.text_add(location=(x,y,z)) 

e vogliono solo per impostare il testo e non può capirlo. Ho trovato nella console python che posso

bpy.data.texts['Text.001'].write("my text") 

ma (anche in generale) sono confuso come fare riferimento l'ultimo oggetto creato per eseguire qualcosa su di esso. Nelle esercitazioni sono presenti le scorciatoie primitive_MESHTYPE_add che restituiscono non l'oggetto creato. Puoi dirmi come fare Text.new()?

+0

che io sono bene con '' ' bpy.ops.object.text_add (enter_editmode = true, location = (x, y, z)) bpy.ops.font.delete() bpy.ops.font.text_insert (text =" mytext ") ' '' – groovehunter

risposta

8
bpy.ops.object.text_add() 
ob=bpy.context.object 
ob.data.body = "my text" 
6

Se avete intenzione di creare un sacco di oggetti di testo mi consiglia di utilizzare il codice di basso livello, invece di bpy.ops al fine di aumentare la velocità di esecuzione di codice:

import bpy 

myFontCurve = bpy.data.curves.new(type="FONT",name="myFontCurve") 
myFontOb = bpy.data.objects.new("myFontOb",myFontCurve) 
myFontOb.data.body = "my text" 
bpy.context.scene.objects.link(myFontOb) 
bpy.context.scene.update() 
Problemi correlati