diff options
author | Howard Trickey <howard.trickey@gmail.com> | 2020-09-07 21:26:00 +0300 |
---|---|---|
committer | Howard Trickey <howard.trickey@gmail.com> | 2020-09-07 21:29:12 +0300 |
commit | de21ab418d69ca82a07ec7c836b1deca09bbd57f (patch) | |
tree | a713cb1e6a98b12d309e57addc1965ebc0973984 /source/blender/makesrna/intern/rna_modifier.c | |
parent | 19f56cfe6c59e3a54aaf7499fd9072a8790171b7 (diff) |
Add a Self option to the Exact boolean modifier. Fixes T52425.
With this option, self-intersections in either or both operands
will be handled properly (if both sides are piecewise winding
number constant, and maybe some other cases too).
In the Boolean tool, this flag was there already but the code
forced a unary operation in that case; this commit corrects it
to make a binary operation. This flag makes the code slower, which
is why it is an option and not an always-on thing.
Diffstat (limited to 'source/blender/makesrna/intern/rna_modifier.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_modifier.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c index d9e151e5f73..1bf14f86189 100644 --- a/source/blender/makesrna/intern/rna_modifier.c +++ b/source/blender/makesrna/intern/rna_modifier.c @@ -2863,6 +2863,11 @@ static void rna_def_modifier_boolean(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Solver", "Method for calculating booleans"); RNA_def_property_update(prop, 0, "rna_Modifier_update"); + prop = RNA_def_property(srna, "use_self", PROP_BOOLEAN, PROP_NONE); + RNA_def_property_boolean_sdna(prop, NULL, "flag", eBooleanModifierFlag_Self); + RNA_def_property_ui_text(prop, "Self", "Allow self-intersection in operands"); + RNA_def_property_update(prop, 0, "rna_Modifier_update"); + /* BMesh debugging options, only used when G_DEBUG is set */ /* BMesh intersection options */ |