2
$\begingroup$

The proportional editing tool use a white circle as an indicator to which vertice are affected but that works in 2D world well and not 3D.(for example if you design a flat paper page in blender and view it from top it works 100% accurately) enter image description here As you see in the image above some vertice are within the circle but they aren't affected.Is there a more accurate way to know which are affected?

$\endgroup$
  • 1
    $\begingroup$ View it from the top and you'll find they are within the circle. Consider the guide as a "sphere" around the vert (or median point of verts) when first selected. $\endgroup$ – batFINGER Aug 31 '16 at 14:34
  • $\begingroup$ @batFINGER In complex meshes this won't work :/ $\endgroup$ – xlxs Aug 31 '16 at 14:41
  • 1
    $\begingroup$ can you explain?, mentioned view from top in context to your screenshot as you have translated in what appears to be a global z direction. $\endgroup$ – batFINGER Aug 31 '16 at 15:05
  • 1
    $\begingroup$ Consider using quad view or multiple views to see more. Consider circle select. Consider Hide Vertices to prevent movement. Even though Hide Vertices has limitations. $\endgroup$ – atomicbezierslinger Aug 31 '16 at 17:39
3
$\begingroup$

This script / addon may help. It simply selects the vertices impacted by the proportional editing, starting from the current selection.

Once visualized, you can Ctrl+Z to come back to your current selection.

enter image description here

bl_info = {
    "name": "Select proportional editing impact",
    "author": "lemon acidjuice",
    "version": (1, 0),
    "blender": (2, 77, 1),
    "location": "View3D > Select > Edit mesh > Select proportional editing",
    "description": "Selects vertices influenced by proportional editing",
    "warning": "",
    "wiki_url": "",
    "category": "3D View",
    }


import bpy
from bpy.types import Operator


def Influenced( u, selected, size2 ):
    for s in selected:
        if (s.co - u.co).length_squared <= size2:
            return True
    return False

class EDIT_MESH_select_proportional(Operator):
    """Select proportional editing impact"""
    bl_idname = "editmesh.select_proportional"
    bl_label = "Select vertices influenced by proportional editing"
    bl_options = {'REGISTER', 'UNDO'}

    def execute(self, context):
        scene = context.scene
        obj = context.active_object

        size = scene.tool_settings.proportional_size        
        size2 = size * size

        mode = bpy.context.active_object.mode
        bpy.ops.object.mode_set(mode='OBJECT')

        selected = [v for v in obj.data.vertices if v.select]
        unselected = [v for v in obj.data.vertices if not v.select]

        for u in unselected:
            u.select = Influenced( u, selected, size2 )

        bpy.ops.object.mode_set(mode=mode)

        bpy.context.scene.update() 

        return {'FINISHED'}

# Registration

def add_select_menu(self, context):
    return self.layout.operator( EDIT_MESH_select_proportional.bl_idname )


def register():
    bpy.types.VIEW3D_MT_select_edit_mesh.prepend(add_select_menu)
    bpy.utils.register_class(EDIT_MESH_select_proportional)


def unregister():
    bpy.types.VIEW3D_MT_select_edit_mesh.remove(add_select_menu)
    bpy.utils.unregister_class(EDIT_MESH_select_proportional)

if __name__ == "__main__":
    register()

| improve this answer | |
$\endgroup$
  • 1
    $\begingroup$ Is there a possibility to display the impacted vertices with weight colors while doing proportional editing? $\endgroup$ – Denis Aug 31 '16 at 17:49

Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.