コード例 #1
0
ファイル: render_panel.py プロジェクト: brendanaaa/Learnbgame
def save_image(image_type='image',
               view_selected=None,
               index=-1,
               zoom_val=0,
               add_index_to_name=True,
               add_colorbar=None,
               cb_ticks_num=None,
               cb_ticks_font_size=None):
    if add_colorbar is None:
        add_colorbar = False  #todo: Fix!! bpy.context.scene.save_views_with_cb
    if cb_ticks_num is None:
        cb_ticks_num = bpy.context.scene.cb_ticks_num
    if cb_ticks_font_size is None:
        cb_ticks_font_size = bpy.context.scene.cb_ticks_font_size
    if view_selected is None:
        view_selected = bpy.context.scene.save_selected_view
    if index == -1:
        fol = bpy.path.abspath(bpy.context.scene.output_path)
        files = [
            mu.namebase(f) for f in glob.glob(
                op.join(fol, '{}*.{}'.format(image_type, get_figure_format())))
        ]
        files_with_numbers = sum([len(re.findall('\d+', f)) for f in files])
        if files_with_numbers > 0:
            index = max([int(re.findall('\d+', f)[0])
                         for f in files]) + 1 if len(files) > 0 else 0
        else:
            index = 0

    switch_to_object_mode()
    index = bpy.context.scene.frame_current if index == -1 else index
    mu.show_only_render(True)
    fol = bpy.path.abspath(bpy.context.scene.output_path)
    if add_index_to_name:
        image_name = op.join(
            fol, '{}_{}.{}'.format(image_type, index, get_figure_format()))
    else:
        image_name = op.join(fol, '{}.{}'.format(image_type,
                                                 get_figure_format()))
    print('Image saved in {}'.format(image_name))
    bpy.context.scene.render.filepath = image_name
    view3d_context = mu.get_view3d_context()
    if view_selected:
        _addon().view_all()
        # todo: Understand when zoom(-1) is needed
        # if not _addon().subcorticals_are_hiding():
        #     _addon().zoom(-1)
        # mu.select_all_brain(True)
        # bpy.ops.view3d.camera_to_view_selected(view3d_context)
        # mu.view_selected()
    if zoom_val != 0:
        _addon().zoom(zoom_val)
    # _addon().zoom(1)
    # mu.center_view()
    bpy.ops.render.opengl(view3d_context, write_still=True)
    if add_colorbar:
        add_colorbar_to_image(image_name, cb_ticks_num, cb_ticks_font_size)
    # if view_selected:
    #     _addon().zoom(1)
    return image_name
コード例 #2
0
def save_image(image_type='image', view_selected=None, index=-1):
    if view_selected is None:
        view_selected = bpy.context.scene.save_selected_view
    if index == -1:
        fol = bpy.path.abspath(bpy.context.scene.output_path)
        files = [
            mu.namebase(f)
            for f in glob.glob(op.join(fol, '{}*.png'.format(image_type)))
        ]
        files_with_numbers = sum([len(re.findall('\d+', f)) for f in files])
        if files_with_numbers > 0:
            index = max([int(re.findall('\d+', f)[0])
                         for f in files]) + 1 if len(files) > 0 else 0
        else:
            index = 0

    if not _addon().is_solid():
        _addon().change_to_solid_brain()
    exit_from_camera_view()
    index = bpy.context.scene.frame_current if index == -1 else index
    mu.show_only_render(True)
    fol = bpy.path.abspath(bpy.context.scene.output_path)
    image_name = op.join(fol, '{}_{}.png'.format(image_type, index))
    print('Image saved in {}'.format(image_name))
    bpy.context.scene.render.filepath = image_name
    view3d_context = mu.get_view3d_context()
    if view_selected:
        _addon().view_all()
        # mu.select_all_brain(True)
        # bpy.ops.view3d.camera_to_view_selected(view3d_context)
        # mu.view_selected()
    bpy.ops.render.opengl(view3d_context, write_still=True)
    # if view_selected:
    #     _addon().zoom(1)
    return image_name
コード例 #3
0
ファイル: show_hide_panel.py プロジェクト: ltirrell/mmvt
def view_all():
    c = mu.get_view3d_context()
    bpy.ops.view3d.view_all(c)
    zoom(1)
コード例 #4
0
ファイル: show_hide_panel.py プロジェクト: ltirrell/mmvt
def zoom(delta):
    c = mu.get_view3d_context()
    bpy.ops.view3d.zoom(c, delta=delta)
コード例 #5
0
ファイル: show_hide_panel.py プロジェクト: ltirrell/mmvt
def minimize_brain():
    context = mu.get_view3d_context()
    bpy.ops.screen.back_to_previous(context)
コード例 #6
0
ファイル: show_hide_panel.py プロジェクト: ltirrell/mmvt
def maximize_brain():
    context = mu.get_view3d_context()
    bpy.ops.screen.screen_full_area(context)