2013-03-24 39 views
7

Come creare una semplice finestra di dialogo di immissione (come nell'immagine) in blender ed elaborare il testo immesso tramite python. Non riesco a trovare alcun buon tutorial su questo.blender finestra di dialogo input

simple entry box

risposta

9

Per la finestra di dialogo la risposta da how to show a message from a blender script? potrebbe essere un punto di partenza.

Ma penso che un approccio migliore sia l'integrazione di input nel pannello come ad es.
String example

Per fare questo si deve aggiungere un StringProperty al vostro add-on e metterlo nel vostro pannello (vedi Addon Tutorial per maggiori informazioni). I passaggi fondamentali sono:

def draw(self, context) : 
    col = self.layout.column(align = True) 
    col.prop(context.scene, "my_string_prop") 

...

def register() : 
    bpy.types.Scene.my_string_prop = bpy.props.StringProperty \ 
     (
     name = "My String", 
     description = "My description", 
     default = "default" 
    ) 

...

def unregister() : 
    del bpy.types.Scene.my_string_prop 

...

È possibile accedere alla stringa context.scene.my_string_prop

C'è un'altra modalità per entrare input tegrate. Quando si aggiunge ad esempio un testo alla scena è possibile modificare i parametri dopo che l'operatore è stato chiamato e vedere i cambiamenti immediatamente:

Add text object

Modifica Località si sposta l'oggetto di testo appena creato in un altro posto. Non ho lavorato con questo, ma dovrebbe essere simile al codice sopra.

Problemi correlati