[Bf-blender-cvs] [3e218ed6f5f] experimental_gp_weight: ix simplify stroke segment fault
Antonio Vazquez
noreply at git.blender.org
Wed May 16 10:51:25 CEST 2018
Commit: 3e218ed6f5f4ecda5f4c9fe9d41fbb8ca491e3b6
Author: Antonio Vazquez
Date: Wed May 16 10:49:20 2018 +0200
Branches: experimental_gp_weight
https://developer.blender.org/rB3e218ed6f5f4ecda5f4c9fe9d41fbb8ca491e3b6
ix simplify stroke segment fault
The index of the weights array was wrong.
WIP: Still there is a problem with simplify adaptative.
===================================================================
M source/blender/blenkernel/intern/gpencil_modifier.c
===================================================================
diff --git a/source/blender/blenkernel/intern/gpencil_modifier.c b/source/blender/blenkernel/intern/gpencil_modifier.c
index bff8df78836..6f90955210e 100644
--- a/source/blender/blenkernel/intern/gpencil_modifier.c
+++ b/source/blender/blenkernel/intern/gpencil_modifier.c
@@ -219,19 +219,19 @@ static void gpencil_rdp_stroke(bGPDstroke *gps, vec2f *points2d, float epsilon)
int j = 0;
for (int i = 0; i < totpoints; i++) {
- bGPDspoint *old_pt = &old_points[i];
+ bGPDspoint *pt_src = &old_points[i];
bGPDspoint *pt = &gps->points[j];
- MDeformVert *o_dvert = &old_dvert[i];
- MDeformVert *dvert = &gps->dvert[i];
+ MDeformVert *dvert_src = &old_dvert[i];
+ MDeformVert *dvert = &gps->dvert[j];
if ((marked[i]) || (i == 0) || (i == totpoints - 1)) {
- memcpy(pt, old_pt, sizeof(bGPDspoint));
- memcpy(dvert, o_dvert, sizeof(MDeformVert));
+ memcpy(pt, pt_src, sizeof(bGPDspoint));
+ memcpy(dvert, dvert_src, sizeof(MDeformVert));
j++;
}
else {
- BKE_gpencil_free_point_weights(o_dvert);
+ BKE_gpencil_free_point_weights(dvert_src);
}
}
@@ -280,19 +280,19 @@ void BKE_gpencil_simplify_fixed(bGPDlayer *UNUSED(gpl), bGPDstroke *gps)
int j = 0;
for (int i = 0; i < gps->totpoints; i++) {
- bGPDspoint *old_pt = &old_points[i];
+ bGPDspoint *pt_src = &old_points[i];
bGPDspoint *pt = &gps->points[j];
- MDeformVert *o_dvert = &old_dvert[i];
- MDeformVert *dvert = &gps->dvert[i];
+ MDeformVert *dvert_src = &old_dvert[i];
+ MDeformVert *dvert = &gps->dvert[j];
if ((i == 0) || (i == gps->totpoints - 1) || ((i % 2) > 0.0)) {
- memcpy(pt, old_pt, sizeof(bGPDspoint));
- memcpy(dvert, o_dvert, sizeof(MDeformVert));
+ memcpy(pt, pt_src, sizeof(bGPDspoint));
+ memcpy(dvert, dvert_src, sizeof(MDeformVert));
j++;
}
else {
- BKE_gpencil_free_point_weights(o_dvert);
+ BKE_gpencil_free_point_weights(dvert_src);
}
}
More information about the Bf-blender-cvs
mailing list