[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30767] trunk/blender/source/blender: Curve shape keys:
Sergey Sharybin
g.ulairi at gmail.com
Mon Jul 26 21:07:33 CEST 2010
Revision: 30767
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30767
Author: nazgul
Date: 2010-07-26 21:07:33 +0200 (Mon, 26 Jul 2010)
Log Message:
-----------
Curve shape keys:
- Fixed incorrect working of "from mix" insert keyblock operator property
shapekey coordinated are applying on curve's data when creating displist,
so curve's nurbs can't be used as unchanged data -- use basis keyblock data instead
- Fixed tilt damaging when loading editcurve -- made a typo in array indexes
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/object.c
trunk/blender/source/blender/editors/curve/editcurve.c
Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c 2010-07-26 19:00:15 UTC (rev 30766)
+++ trunk/blender/source/blender/blenkernel/intern/object.c 2010-07-26 19:07:33 UTC (rev 30767)
@@ -2955,7 +2955,11 @@
if(newkey || from_mix==FALSE) {
/* create from curve */
kb= add_keyblock(key, name);
- curve_to_key(cu, kb, lb);
+ if (!newkey) {
+ KeyBlock *basekb= (KeyBlock *)key->block.first;
+ kb->data= MEM_dupallocN(basekb->data);
+ kb->totelem= basekb->totelem;
+ } else curve_to_key(cu, kb, lb);
}
else {
/* copy from current values */
Modified: trunk/blender/source/blender/editors/curve/editcurve.c
===================================================================
--- trunk/blender/source/blender/editors/curve/editcurve.c 2010-07-26 19:00:15 UTC (rev 30766)
+++ trunk/blender/source/blender/editors/curve/editcurve.c 2010-07-26 19:07:33 UTC (rev 30767)
@@ -884,7 +884,7 @@
fp+= 3; curofp+= 3;
}
- fp[0]= ofp[0];
+ fp[0]= curofp[0];
if(apply_offset) {
/* apply alfa offsets */
@@ -914,7 +914,7 @@
if (index >= 0) {
curofp= ofp + index;
VECCOPY(fp, curofp);
- fp[3]= curofp[4];
+ fp[3]= curofp[3];
if(apply_offset) {
VECADD(fp, fp, ofs[i]);
More information about the Bf-blender-cvs
mailing list