1
$\begingroup$

Blender standard Outliner is not showing to much properties (left tree table).

The option to view the Datafile is not optimize for quick view of the basic information.

Question:

Its possible to show the Location, Dimensions, Scale, Rotation and Custom properties of objects in table-view (right tree table made in Photoshop)?

If its possible, can you tell me witch Blender Outliner system file I have to rewrite (I am a Noobie at Python).

Thanks a lot.

enter image description here

$\endgroup$
  • $\begingroup$ Paste the image in body, more help > stackoverflow.com/help $\endgroup$ – guisantogui Feb 3 '14 at 13:49
1
$\begingroup$

The data shown in the outliner is filtered within blender's C code, the python code used to display it is rather minimal - view it here. Altering the display of the outliner will need to be implemented with C not python. code is here if you want to look.

The data you want displayed is available in the properties sidebar on the right of the 3dView (press N to show/hide it)

enter image description here

You can write an addon to show a customised version of this data, a sample to get you started --

bl_info = {
    'name': 'sample info display',
    'author': 'Shane',
    'version': (1, 0),
    "blender": (2, 6, 9),
    'location': 'View3D > Properties panel > Sample Info',
    'description': 'A simple panel for the 3D view properties panel to show stuff',
    "wiki_url": ""\
        "",
    "tracker_url": ""\
        "",
    'category': 'Properties'}

"""
This script simply places some properties into the 3D view Properies panel.
"""

import bpy

class SamplePanel(bpy.types.Panel):
    bl_space_type = "VIEW_3D"
    bl_region_type = "UI"
    bl_label = "Sample data"

    def draw(self, context):
        layout = self.layout
        obj = context.object

        row = layout.row()
        row.column().prop(obj, "location")
        row = layout.row()
        if obj.rotation_mode == 'QUATERNION':
            row.column().prop(obj, "rotation_quaternion", text="Rotation")
        elif obj.rotation_mode == 'AXIS_ANGLE':
            row.column().prop(obj, "rotation_axis_angle", text="Rotation")
        else:
            row.column().prop(obj, "rotation_euler", text="Rotation")

def register():
    bpy.utils.register_class(SamplePanel)

def unregister():
    bpy.utils.unregister_class(SamplePanel)

if __name__ == "__main__":
    register()
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy