[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [19712] branches/blender2.5/blender/source /blender/blenkernel: Action Code - Tidied up some code that wasn' t working yet
Joshua Leung
aligorith at gmail.com
Tue Apr 14 12:18:48 CEST 2009
Revision: 19712
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19712
Author: aligorith
Date: 2009-04-14 12:18:48 +0200 (Tue, 14 Apr 2009)
Log Message:
-----------
Action Code - Tidied up some code that wasn't working yet
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/blenkernel/BKE_action.h
branches/blender2.5/blender/source/blender/blenkernel/intern/action.c
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_action.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_action.h 2009-04-14 03:08:09 UTC (rev 19711)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_action.h 2009-04-14 10:18:48 UTC (rev 19712)
@@ -64,9 +64,8 @@
// XXX is this needed?
void make_local_action(struct bAction *act);
-
+
/* Some kind of bounding box operation on the action */
-// XXX depreceated..
void calc_action_range(const struct bAction *act, float *start, float *end, int incl_hidden);
/* Action Groups API ----------------- */
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/action.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/action.c 2009-04-14 03:08:09 UTC (rev 19711)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/action.c 2009-04-14 10:18:48 UTC (rev 19712)
@@ -762,38 +762,27 @@
/* Calculate the extents of given action */
void calc_action_range(const bAction *act, float *start, float *end, int incl_hidden)
{
- // FCurve *fcu;
+ FCurve *fcu;
float min=999999999.0f, max=-999999999.0f;
- int foundvert=0;
+ short foundvert=0;
if (act) {
-#if 0 // XXX old animation system
- for (chan=act->chanbase.first; chan; chan=chan->next) {
- if ((incl_hidden) || (chan->flag & ACHAN_HIDDEN)==0) {
- if (chan->ipo) {
- for (icu=chan->ipo->curve.first; icu; icu=icu->next) {
- if (icu->totvert) {
- min= MIN2(min, icu->bezt[0].vec[1][0]);
- max= MAX2(max, icu->bezt[icu->totvert-1].vec[1][0]);
- foundvert=1;
- }
- }
- }
- for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) {
- if (conchan->ipo) {
- for (icu=conchan->ipo->curve.first; icu; icu=icu->next) {
- if (icu->totvert) {
- min= MIN2(min, icu->bezt[0].vec[1][0]);
- max= MAX2(max, icu->bezt[icu->totvert-1].vec[1][0]);
- foundvert=1;
- }
- }
- }
- }
+ for (fcu= act->curves.first; fcu; fcu= fcu->next) {
+ if (fcu->totvert) {
+ float nmin, nmax;
+
+ /* get extents for this curve */
+ calc_fcurve_range(fcu, &nmin, &nmax);
+
+ /* compare to the running tally */
+ min= MIN2(min, nmin);
+ max= MAX2(max, nmax);
+
+ foundvert= 1;
}
}
-#endif // XXX old animation system
}
+
if (foundvert) {
if(min==max) max+= 1.0f;
*start= min;
@@ -869,9 +858,11 @@
if(pchanto) {
Mat4CpyMat4(pchanto->pose_mat, pchanfrom->pose_mat);
Mat4CpyMat4(pchanto->chan_mat, pchanfrom->chan_mat);
+
/* used for local constraints */
VECCOPY(pchanto->loc, pchanfrom->loc);
QUATCOPY(pchanto->quat, pchanfrom->quat);
+ VECCOPY(pchanto->eul, pchanfrom->eul);
VECCOPY(pchanto->size, pchanfrom->size);
VECCOPY(pchanto->pose_head, pchanfrom->pose_head);
More information about the Bf-blender-cvs
mailing list