Page MenuHome

Edit mesh: multi-object vertex smooth support
AbandonedPublic

Authored by Evan (evanvlane) on May 19 2018, 3:04 PM.

Diff Detail

Repository
rB Blender
Branch
blender2.8
Build Status
Buildable 1646
Build 1646: arc lint + arc unit

Event Timeline

I'm new to the Code Quest, and I've tried to make sure this is aligned to how you all do things.
I have read the docs, but if I missed something, please let me know and I'll fix it moving forward. Glad to help!

Hi @Evan (evanvlane), welcome to Code Quest
Thank you for your help!

source/blender/editors/mesh/editmesh_tools.c
2268
  • return statement will leak unfreed memory of objects
  • replace return to continue, in order to applt in the remaining objects.
  • BKE_report should reported once if all the object with selected verticies failing for the same reason.
2281
  • All RNA_*_get/set functions should be called outside the loop
source/blender/editors/mesh/editmesh_tools.c
2258

i thing totvertsel should be totfacesel

Edit mesh: multi-object vertex smooth support.
Update: Incorporated changes suggested by semaphore.

Evan (evanvlane) marked 3 inline comments as done.May 20 2018, 11:50 PM
Evan (evanvlane) added inline comments.
source/blender/editors/mesh/editmesh_tools.c
2268

BKE_report should reported once if all the object with selected verticies failing for the same reason.

I implemented this with a blocking flag to avoid smoothing anything if one n-gon is selected on any of the objects.
If this isn't the intended behavior let me know and I'll change it to deselect all found n-gons. I'm thinking this may result in unexpected behaviors though.

Dalai Felinto (dfelinto) requested changes to this revision.May 25 2018, 2:11 PM
Dalai Felinto (dfelinto) added inline comments.
source/blender/editors/mesh/editmesh_tools.c
2293

You should check for vert, edge and face, not only faces

2301

You want to break, not continue.

2304–2305
2314

This is tricky. You probably want to break from the for repeat loop, and continue the for (uint ob_index = 0; ob_index < objects_len; ob_index++) { loop. You only want to update the editmesh if all the repeat loop succeeded.

This revision now requires changes to proceed.May 25 2018, 2:11 PM