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:
authorTon Roosendaal <ton@blender.org>2013-01-15 19:42:12 +0400
committerTon Roosendaal <ton@blender.org>2013-01-15 19:42:12 +0400
commit73c7c10c6e876bb6679fb8ba8ecbb82b4751fb7d (patch)
tree31f19268cb5752117bbe867ec85cebe0f7d9a814 /source/blender/blenkernel/intern/curve.c
parente20dfbca6da607f6126a8e0a7ef5f35aafec3254 (diff)
Bug fix #33748
Old fixes, since 2009 and before! Related to Curve object editmode: - normals are not being drawn for hidden curves anymore - even worse: Blender also didn't hide the extrusions or bevels for hidden curves - outside edit mode, it shows all (as for all other modes) - (de)select-all now works when 1st (or any) handle was hidden.
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index a9c4a7dcdc2..a6e68b9b2d5 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -2220,6 +2220,7 @@ void BKE_curve_bevelList_make(Object *ob)
struct bevelsort *sortdata, *sd, *sd1;
int a, b, nr, poly, resolu = 0, len = 0;
int do_tilt, do_radius, do_weight;
+ int is_editmode = 0;
/* this function needs an object, because of tflag and upflag */
cu = ob->data;
@@ -2233,12 +2234,17 @@ void BKE_curve_bevelList_make(Object *ob)
if (cu->editnurb && ob->type != OB_FONT) {
ListBase *nurbs = BKE_curve_editNurbs_get(cu);
nu = nurbs->first;
+ is_editmode = 1;
}
else {
nu = cu->nurb.first;
}
- while (nu) {
+ for (; nu; nu = nu->next) {
+
+ if (nu->hide && is_editmode)
+ continue;
+
/* check if we will calculate tilt data */
do_tilt = CU_DO_TILT(cu, nu);
do_radius = CU_DO_RADIUS(cu, nu); /* normal display uses the radius, better just to calculate them */
@@ -2384,7 +2390,6 @@ void BKE_curve_bevelList_make(Object *ob)
}
}
}
- nu = nu->next;
}
/* STEP 2: DOUBLE POINTS AND AUTOMATIC RESOLUTION, REDUCE DATABLOCKS */