Comment accéder aux informations du menu contextuel?

Aug 28 2020

Je veux accéder à ces commandes via le code et les ajouter dans le tableau

cela m'aide à créer un outil comme les actions de photoshop

bpy.ops.mesh.primitive_cube_add(enter_editmode=False, align='WORLD', location=(0, 0, 0))
bpy.context.space_data.context = 'OBJECT'
bpy.context.object.location[0] = 5
bpy.context.object.location[1] = 10
bpy.context.object.location[2] = 15
bpy.context.object.rotation_euler[0] = 0.523599
bpy.context.object.rotation_euler[1] = 1.22173
bpy.context.object.rotation_euler[2] = 0.349066

Réponses

6 batFINGER Aug 28 2020 at 18:14

Copier et coller.

Auparavant disponible via bpy.ops.ui.reports_to_textblock()

Comment lire tous les `` rapports récents '' à partir de la fenêtre d'informations

Comment obtenir le texte du journal de la fenêtre Info avec Python?

L'opérateur semble indisponible dans la version 2.8, mais il s'agit simplement de sélectionner et de copier à partir de la zone d'informations

Script de test idiot, bascule dans la zone d'informations, sélectionne tout, copie, revient à la zone de texte et colle.

import bpy

context = bpy.context

# change to info
context.area.type = 'INFO'
bpy.ops.info.select_all()
bpy.ops.info.report_copy()
context.area.type = 'TEXT_EDITOR'
bpy.ops.text.paste() # silly

Le contenu du presse-papiers

>>> for line in C.window_manager.clipboard.splitlines():
...     line
...     
"bpy.context.area.ui_type = 'INFO'"
"bpy.context.area.ui_type = 'TEXT_EDITOR'"
'bpy.ops.text.run_script()'
'Python script failed, check the message in the system console'
"bpy.context.area.ui_type = 'TEXT_EDITOR'"
"bpy.context.area.ui_type = 'INFO'"
"bpy.context.area.ui_type = 'TEXT_EDITOR'"
'bpy.ops.text.run_script()'

Consultez la documentation pour connaître l'espace de la zone d'informations sur le basculement des types de rapport d'informations. aest une zone de type 'INFO'

>>> a.type
'INFO'

>>> a.spaces.active.show_
                         locked_time
                         region_header
                         report_debug
                         report_error
                         report_info
                         report_operator
                         report_warning