Carver MT - Add In-scene profiles, brush depth adjustment, fix rotation bug #50456

Closed
opened 2017-01-17 15:26:51 +01:00 by Ted Milker · 13 comments

The attached file has a couple updates and a fix to carver_mesh.py included in Blender 2.78a.

Updates:

  • Use profiles from scene, rather than require user to edit script to add new profiles
    • Adds a new scene property ProfilePrefix to set the prefix to look for profiles with
  • Add ability to change depth of entire brush
    • C is not an ideal key but D is used interchangeably for both the Object carve depth and profile thickness and I'm not sure it should be changed now that it's established

Fix:

mesh_carver.py
mesh_carver.patch

The attached file has a couple updates and a fix to carver_mesh.py included in Blender 2.78a. Updates: * Use profiles from scene, rather than require user to edit script to add new profiles * Adds a new scene property ProfilePrefix to set the prefix to look for profiles with * Add ability to change depth of entire brush * C is not an ideal key but D is used interchangeably for both the Object carve depth and profile thickness and I'm not sure it should be changed now that it's established Fix: * Fix issue with incorrect rotation brush rotation when the target object has been rotated (reported by Cirno, https://blenderartists.org/forum/showthread.php?400038-Carver&p=3109594&viewfull=1#post3109594) Note: The yellow/green ring displayed is still rotated incorrectly, I couldn't figure how to rotate it correctly. [mesh_carver.py](https://archive.blender.org/developer/F435275/mesh_carver.py) [mesh_carver.patch](https://archive.blender.org/developer/F435280/mesh_carver.patch)
Author

Changed status to: 'Open'

Changed status to: 'Open'
Author

Added subscriber: @Teds

Added subscriber: @Teds

Added subscriber: @VukGardasevic

Added subscriber: @VukGardasevic

Thanks, for the patch. We'll take a closer look at it soon.

Thanks, for the patch. We'll take a closer look at it soon.
Brendon Murphy self-assigned this 2017-01-18 01:41:49 +01:00
Author

I think all the boolean modifiers used by this addon should explicitly set the solver to "CARVE". The default "BMESH" solver in Blender 2.78a breaks Line Rebools that are entirely enclosed by the target mesh and in other cases. BMesh doesn't seem like it should be the default, either, if Blender documentation is correct. Here's a patch for my update.

carve_solver_by_default.patch

I think all the boolean modifiers used by this addon should explicitly set the solver to "CARVE". The default "BMESH" solver in Blender 2.78a breaks Line Rebools that are entirely enclosed by the target mesh and in other cases. BMesh doesn't seem like it should be the default, either, if Blender documentation is correct. Here's a patch for my update. [carve_solver_by_default.patch](https://archive.blender.org/developer/F435613/carve_solver_by_default.patch)

I think that the solver should be the option in the add-on preferences similar to Bool Tool.

Having an enum property gives more options for the user if one solver fails in certain cases.
If Carver works better with Carve then it could be the default option.

The patch doesn't set it to default but makes it the unique one.

I think that the solver should be the option in the add-on preferences similar to Bool Tool. Having an enum property gives more options for the user if one solver fails in certain cases. If Carver works better with Carve then it could be the default option. The patch doesn't set it to default but makes it the unique one.
Author

That's simply the opposite side of the same coin. Blender's default is supposed to be Carve according to the documentation and there wouldn't be an issue with the booleans if that were still the case in 2.78a(I don't know when the solver default changed or if it is supposed to and the docs are just out of date). I would like to bring up that if you turn off Apply Operations in Carver MT, that patch would still allow you change the solver to address those certain cases. Perhaps both my patch and your suggestion are out of scope for this task.

However, I disagree that it should be a global add-on preference, that's too coarse a setting to deal with individual situations reasonably.

That's simply the opposite side of the same coin. Blender's default is supposed to be Carve according to the documentation and there wouldn't be an issue with the booleans if that were still the case in 2.78a(I don't know when the solver default changed or if it is supposed to and the docs are just out of date). I would like to bring up that if you turn off Apply Operations in Carver MT, that patch would still allow you change the solver to address those certain cases. Perhaps both my patch and your suggestion are out of scope for this task. However, I disagree that it should be a global add-on preference, that's too coarse a setting to deal with individual situations reasonably.

Blender default is BMesh solver since 2.78.

https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.78/Modelling

They both have their own limitations.
BMesh fails with self intersecting and overlapping geometry.
For some tasks of the current ToDo's can the found here: blender/blender#47030

Carve fails, for instance, in this case with non-closed geometry:

carve_failure_case.jpg
Which is a Carver solver limitation since it's merging in 2.62.

https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.62/Boolean_Modifier

The option in the preferences can be set to be the default solver that can be toggled by a key for a specific
case - between it and the other option.

I don't agree that is too coarse, since carver is shortcuts only which are defined in the add-on preferences.

To get to any speed with the add-on they need to be learned.

Anyway, the default solver toggle maybe needs to be a separate task.

Blender default is BMesh solver since 2.78. https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.78/Modelling They both have their own limitations. BMesh fails with self intersecting and overlapping geometry. For some tasks of the current ToDo's can the found here: blender/blender#47030 Carve fails, for instance, in this case with non-closed geometry: ![carve_failure_case.jpg](https://archive.blender.org/developer/F438097/carve_failure_case.jpg) Which is a Carver solver limitation since it's merging in 2.62. https://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.62/Boolean_Modifier The option in the preferences can be set to be the default solver that can be toggled by a key for a specific case - between it and the other option. I don't agree that is too coarse, since carver is shortcuts only which are defined in the add-on preferences. To get to any speed with the add-on they need to be learned. Anyway, the default solver toggle maybe needs to be a separate task.
Author

This task is getting messy but I don't see a way to reconcile this task with a new one if they were to be merged at the same time, so here's a new version of mesh_carver.py with all of my changes for this task and the preferences/key for changing the solver while using it.

mesh_carver.py

This task is getting messy but I don't see a way to reconcile this task with a new one if they were to be merged at the same time, so here's a new version of mesh_carver.py with all of my changes for this task and the preferences/key for changing the solver while using it. [mesh_carver.py](https://archive.blender.org/developer/F438413/mesh_carver.py)
Member

hi, I think we are close to resolve here, will continue testing a few more days.

hi, I think we are close to resolve here, will continue testing a few more days.

This issue was referenced by 3111292276

This issue was referenced by 31112922764d65181f310f2e9d5541afe7c01ce3

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'

@Teds

Committed your patch with minor changes (mostly style and comments). Thanks :)
Works great.

Feel free if you have more patches to open new tasks.

@Teds Committed your patch with minor changes (mostly style and comments). Thanks :) Works great. Feel free if you have more patches to open new tasks.
Sign in to join this conversation.
No Milestone
No project
No Assignees
4 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender-addons#50456
No description provided.