Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2021-01-05 14:27:49 +0300
committerCampbell Barton <ideasman42@gmail.com>2021-01-05 14:48:12 +0300
commit105d385e4b73f353350a3a1894eb0d9e933130c3 (patch)
tree601a0689e7caeeae235a45dc9f06266ab5a5176a /source/blender/blenkernel/BKE_mesh_mirror.h
parent724110487721226812a111cb147b85622f2c19e4 (diff)
Fix T84364: Sculpt symmetrize fails with shape keys
Use the BMesh symmetrize operator instead of using the modifier code. While we could support shape-keys with the existing code used by the mirror modifier, we'd need to add code-paths for evaluated mesh & bmesh conversion to handle shape-keys differently just for this one case, since we want to avoid copying & processing shape-keys layers for evaluated meshes in general.
Diffstat (limited to 'source/blender/blenkernel/BKE_mesh_mirror.h')
-rw-r--r--source/blender/blenkernel/BKE_mesh_mirror.h31
1 files changed, 17 insertions, 14 deletions
diff --git a/source/blender/blenkernel/BKE_mesh_mirror.h b/source/blender/blenkernel/BKE_mesh_mirror.h
index 2c6920a18bf..a91f0787e68 100644
--- a/source/blender/blenkernel/BKE_mesh_mirror.h
+++ b/source/blender/blenkernel/BKE_mesh_mirror.h
@@ -23,27 +23,30 @@
* \ingroup bke
*/
-#include "BLI_utildefines.h"
-
#ifdef __cplusplus
extern "C" {
#endif
+struct Main;
+struct Mesh;
struct MirrorModifierData;
-struct ModifierEvalContext;
struct Object;
-struct Mesh *BKE_mesh_mirror_bisect_on_mirror_plane(struct MirrorModifierData *mmd,
- const struct Mesh *mesh,
- int axis,
- const float plane_co[3],
- float plane_no[3]);
-
-struct Mesh *BKE_mesh_mirror_apply_mirror_on_axis(struct MirrorModifierData *mmd,
- const struct ModifierEvalContext *UNUSED(ctx),
- struct Object *ob,
- const struct Mesh *mesh,
- int axis);
+struct Mesh *BKE_mesh_mirror_bisect_on_mirror_plane_for_modifier(struct MirrorModifierData *mmd,
+ const struct Mesh *mesh,
+ int axis,
+ const float plane_co[3],
+ float plane_no[3]);
+
+void BKE_mesh_mirror_apply_mirror_on_axis(struct Main *bmain,
+ struct Mesh *mesh,
+ const int axis,
+ const float dist);
+
+struct Mesh *BKE_mesh_mirror_apply_mirror_on_axis_for_modifier(struct MirrorModifierData *mmd,
+ struct Object *ob,
+ const struct Mesh *mesh,
+ int axis);
#ifdef __cplusplus
}