[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14332] trunk/blender/source/blender: No need for unions in transform code.
Martin Poirier
theeth at yahoo.com
Sat Apr 5 00:21:26 CEST 2008
Revision: 14332
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14332
Author: theeth
Date: 2008-04-05 00:21:24 +0200 (Sat, 05 Apr 2008)
Log Message:
-----------
No need for unions in transform code.
Unneeded size optimisation.
There's much better way to tackle this if it really is a problem.
Modified Paths:
--------------
trunk/blender/source/blender/include/transform.h
trunk/blender/source/blender/src/transform_conversions.c
trunk/blender/source/blender/src/transform_generics.c
Modified: trunk/blender/source/blender/include/transform.h
===================================================================
--- trunk/blender/source/blender/include/transform.h 2008-04-04 20:39:31 UTC (rev 14331)
+++ trunk/blender/source/blender/include/transform.h 2008-04-04 22:21:24 UTC (rev 14332)
@@ -160,11 +160,8 @@
struct bConstraint *con; /* for objects/bones, the first constraint in its constraint stack */
TransDataExtension *ext; /* for objects, poses. 1 single malloc per TransInfo! */
TransDataIpokey *tdi; /* for objects, ipo keys. per transdata a malloc */
- union {
- void *tdmir; /* mirrored element pointer, in editmode mesh to EditVert */
- TransDataCurveHandleFlags *hdata;
- } misc;
-
+ TransDataCurveHandleFlags *hdata; /* for curves, stores handle flags for modification/cancel */
+ void *tdmir; /* mirrored element pointer, in editmode mesh to EditVert */
short flag; /* Various flags */
short protectflag; /* If set, copy of Object or PoseChannel protection */
/*#ifdef WITH_VERSE*/
Modified: trunk/blender/source/blender/src/transform_conversions.c
===================================================================
--- trunk/blender/source/blender/src/transform_conversions.c 2008-04-04 20:39:31 UTC (rev 14331)
+++ trunk/blender/source/blender/src/transform_conversions.c 2008-04-04 22:21:24 UTC (rev 14332)
@@ -1239,7 +1239,7 @@
TransDataCurveHandleFlags *initTransDataCurveHandes(TransData *td, struct BezTriple *bezt) {
TransDataCurveHandleFlags *hdata;
td->flag |= TD_BEZTRIPLE;
- hdata = td->misc.hdata = MEM_mallocN(sizeof(TransDataCurveHandleFlags), "CuHandle Data");
+ hdata = td->hdata = MEM_mallocN(sizeof(TransDataCurveHandleFlags), "CuHandle Data");
hdata->ih1 = bezt->h1;
hdata->h1 = &bezt->h1;
hdata->ih2 = bezt->h2; /* incase the second is not selected */
@@ -1816,7 +1816,7 @@
td->ext = NULL;
td->tdi = NULL;
td->val = NULL;
- td->misc.tdmir= NULL;
+ td->tdmir = NULL;
if (BIF_GetTransInfo()->mode == TFM_BWEIGHT) {
td->val = &(eve->bweight);
td->ival = eve->bweight;
@@ -2169,7 +2169,7 @@
/* Mirror? */
if( (mirror>0 && tob->iloc[0]>0.0f) || (mirror<0 && tob->iloc[0]<0.0f)) {
EditVert *vmir= editmesh_get_x_mirror_vert(G.obedit, tob->iloc); /* initializes octree on first call */
- if(vmir!=eve) tob->misc.tdmir= vmir;
+ if(vmir != eve) tob->tdmir = vmir;
}
tob++;
}
Modified: trunk/blender/source/blender/src/transform_generics.c
===================================================================
--- trunk/blender/source/blender/src/transform_generics.c 2008-04-04 20:39:31 UTC (rev 14331)
+++ trunk/blender/source/blender/src/transform_generics.c 2008-04-04 22:21:24 UTC (rev 14332)
@@ -255,7 +255,7 @@
if (td->flag & TD_SKIP)
continue;
- eve= td->misc.tdmir;
+ eve = td->tdmir;
if(eve) {
eve->co[0]= -td->loc[0];
eve->co[1]= td->loc[1];
@@ -721,7 +721,7 @@
/* since ipokeys are optional on objects, we mallocced them per trans-data */
for(a=0, td= t->data; a<t->total; a++, td++) {
if(td->tdi) MEM_freeN(td->tdi);
- if (td->flag & TD_BEZTRIPLE) MEM_freeN(td->misc.hdata);
+ if (td->flag & TD_BEZTRIPLE) MEM_freeN(td->hdata);
}
MEM_freeN(t->data);
}
@@ -787,8 +787,8 @@
}
if (td->flag & TD_BEZTRIPLE) {
- *(td->misc.hdata->h1) = td->misc.hdata->ih1;
- *(td->misc.hdata->h2) = td->misc.hdata->ih2;
+ *(td->hdata->h1) = td->hdata->ih1;
+ *(td->hdata->h2) = td->hdata->ih2;
}
if(td->tdi) {
More information about the Bf-blender-cvs
mailing list