[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [35852] trunk/blender/source/blender/ editors/transform: transform: floats were being implicitly promoted to doubles, adjust to use floats.

Campbell Barton ideasman42 at gmail.com
Mon Mar 28 19:06:16 CEST 2011


Revision: 35852
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=35852
Author:   campbellbarton
Date:     2011-03-28 17:06:15 +0000 (Mon, 28 Mar 2011)
Log Message:
-----------
transform: floats were being implicitly promoted to doubles, adjust to use floats.
also use macros RAD2DEGF & DEG2RADF.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/transform/transform.c
    trunk/blender/source/blender/editors/transform/transform_constraints.c
    trunk/blender/source/blender/editors/transform/transform_conversions.c
    trunk/blender/source/blender/editors/transform/transform_input.c
    trunk/blender/source/blender/editors/transform/transform_manipulator.c
    trunk/blender/source/blender/editors/transform/transform_snap.c

Modified: trunk/blender/source/blender/editors/transform/transform.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform.c	2011-03-28 15:53:41 UTC (rev 35851)
+++ trunk/blender/source/blender/editors/transform/transform.c	2011-03-28 17:06:15 UTC (rev 35852)
@@ -1272,7 +1272,7 @@
 				glEnd();
 
 				glTranslatef(mval[0], mval[1], 0);
-				glRotatef(-180 / M_PI * atan2f(cent[0] - t->mval[0], cent[1] - t->mval[1]), 0, 0, 1);
+				glRotatef(-RAD2DEGF(atan2f(cent[0] - t->mval[0], cent[1] - t->mval[1])), 0, 0, 1);
 
 				setlinestyle(0);
 				glLineWidth(3.0);
@@ -1306,8 +1306,8 @@
 					float dx = t->mval[0] - cent[0], dy = t->mval[1] - cent[1];
 					float angle = atan2f(dy, dx);
 					float dist = sqrtf(dx*dx + dy*dy);
-					float delta_angle = MIN2(15 / dist, M_PI/4);
-					float spacing_angle = MIN2(5 / dist, M_PI/12);
+					float delta_angle = MIN2(15.0f / dist, (float)M_PI/4.0f);
+					float spacing_angle = MIN2(5.0f / dist, (float)M_PI/12.0f);
 					UI_ThemeColor(TH_WIRE);
 
 					setlinestyle(3);
@@ -1326,14 +1326,14 @@
 					glPushMatrix();
 
 					glTranslatef(cosf(angle - delta_angle) * dist, sinf(angle - delta_angle) * dist, 0);
-					glRotatef(180 / M_PI * (angle - delta_angle), 0, 0, 1);
+					glRotatef(RAD2DEGF(angle - delta_angle), 0, 0, 1);
 
 					drawArrowHead(DOWN, 5);
 
 					glPopMatrix();
 
 					glTranslatef(cosf(angle + delta_angle) * dist, sinf(angle + delta_angle) * dist, 0);
-					glRotatef(180 / M_PI * (angle + delta_angle), 0, 0, 1);
+					glRotatef(RAD2DEGF(angle + delta_angle), 0, 0, 1);
 
 					drawArrowHead(UP, 5);
 
@@ -1921,7 +1921,7 @@
 		eulO_to_axis_angle( axis, angle,eul, EULER_ORDER_DEFAULT);
 		
 		/* when converting to axis-angle, we need a special exception for the case when there is no axis */
-		if (IS_EQ(axis[0], axis[1]) && IS_EQ(axis[1], axis[2])) {
+		if (IS_EQF(axis[0], axis[1]) && IS_EQF(axis[1], axis[2])) {
 			/* for now, rotate around y-axis then (so that it simply becomes the roll) */
 			axis[1]= 1.0f;
 		}
@@ -2237,8 +2237,8 @@
 	t->idx_max = 0;
 	t->num.idx_max = 0;
 	t->snap[0] = 0.0f;
-	t->snap[1] = 5.0f / 180 * M_PI;
-	t->snap[2] = 1.0f / 180 * M_PI;
+	t->snap[1] = 5.0f / 180.0f * (float)M_PI;
+	t->snap[2] = 1.0f / 180.0f * (float)M_PI;
 	
 	t->num.increment = 1.0f;
 
@@ -2261,7 +2261,7 @@
 
 	mid_v3_v3v3(t->center, min, max);
 
-	if (max[0] == min[0]) max[0] += 0.1; /* not optimal, but flipping is better than invalid garbage (i.e. division by zero!) */
+	if (max[0] == min[0]) max[0] += 0.1f; /* not optimal, but flipping is better than invalid garbage (i.e. division by zero!) */
 	t->val= (max[0]-min[0])/2.0f; /* t->val is X dimension projected boundbox */
 }
 
@@ -2325,11 +2325,11 @@
 		
 		sprintf(str, "Warp: %s", c);
 
-		circumfac = circumfac / 180 * M_PI;
+		circumfac = DEG2RADF(circumfac);
 	}
 	else {
 		/* default header print */
-		sprintf(str, "Warp: %.3f", circumfac * 180 / M_PI);
+		sprintf(str, "Warp: %.3f", RAD2DEGF(circumfac));
 	}
 	
 	t->values[0] = circumfac;
@@ -3180,16 +3180,16 @@
 		sprintf(str, "Rot: %s %s %s", &c[0], t->con.text, t->proptext);
 		
 		/* Clamp between -180 and 180 */
-		while (final >= 180.0)
-			final -= 360.0;
+		while (final >= 180.0f)
+			final -= 360.0f;
 		
-		while (final <= -180.0)
-			final += 360.0;
-		
-		final *= (float)(M_PI / 180.0);
+		while (final <= -180.0f)
+			final += 360.0f;
+
+		final = DEG2RADF(final);
 	}
 	else {
-		sprintf(str, "Rot: %.2f%s %s", 180.0*final/M_PI, t->con.text, t->proptext);
+		sprintf(str, "Rot: %.2f%s %s", RAD2DEGF(final), t->con.text, t->proptext);
 	}
 	
 	if (t->flag & (T_PROP_EDIT|T_PROP_CONNECTED))
@@ -3289,11 +3289,11 @@
 
 		sprintf(str, "Trackball: %s %s %s", &c[0], &c[20], t->proptext);
 
-		phi[0] *= (float)(M_PI / 180.0);
-		phi[1] *= (float)(M_PI / 180.0);
+		phi[0] = DEG2RADF(phi[0]);
+		phi[1] = DEG2RADF(phi[1]);
 	}
 	else {
-		sprintf(str, "Trackball: %.2f %.2f %s", 180.0*phi[0]/M_PI, 180.0*phi[1]/M_PI, t->proptext);
+		sprintf(str, "Trackball: %.2f %.2f %s", RAD2DEGF(phi[0]), RAD2DEGF(phi[1]), t->proptext);
 	}
 
 	vec_rot_to_mat3( smat,axis1, phi[0]);
@@ -3382,7 +3382,7 @@
 
 	if(!(t->flag & T_2D_EDIT) && t->scene->unit.system)
 		bUnit_AsString(distvec, sizeof(distvec), dist*t->scene->unit.scale_length, 4, t->scene->unit.system, B_UNIT_LENGTH, t->scene->unit.flag & USER_UNIT_OPT_SPLIT, 0);
-	else if( dist > 1e10 || dist < -1e10 )	/* prevent string buffer overflow */
+	else if( dist > 1e10f || dist < -1e10f )	/* prevent string buffer overflow */
 		sprintf(distvec, "%.4e", dist);
 	else
 		sprintf(distvec, "%.4f", dist);
@@ -3648,10 +3648,10 @@
 
 		sprintf(str, "Tilt: %s %s", &c[0], t->proptext);
 
-		final *= (float)(M_PI / 180.0);
+		final = DEG2RADF(final);
 	}
 	else {
-		sprintf(str, "Tilt: %.2f %s", 180.0*final/M_PI, t->proptext);
+		sprintf(str, "Tilt: %.2f %s", RAD2DEGF(final), t->proptext);
 	}
 
 	for(i = 0 ; i < t->total; i++, td++) {
@@ -4639,7 +4639,7 @@
 	}
 
 	add_v3_v3(start, end);
-	mul_v3_fl(start, 0.5*(1.0/totvec));
+	mul_v3_fl(start, 0.5f*(1.0f/totvec));
 	VECCOPY(vec, start);
 	start[0] = t->mval[0];
 	start[1] = t->mval[1];
@@ -4923,8 +4923,8 @@
 			tempsv = BLI_ghash_lookup(vertgh,ev);
 			edgelen = len_v3v3(editedge_getOtherVert(tempsv->up,ev)->co,editedge_getOtherVert(tempsv->down,ev)->co);
 			newlen = (edgelen != 0.0f)? (len / edgelen): 0.0f;
-			if(newlen > 1.0) {newlen = 1.0;}
-			if(newlen < 0.0) {newlen = 0.0;}
+			if(newlen > 1.0f) {newlen = 1.0;}
+			if(newlen < 0.0f) {newlen = 0.0;}
 			if(flip == 0) {
 				interp_v3_v3v3(ev->co, editedge_getOtherVert(tempsv->down,ev)->co, editedge_getOtherVert(tempsv->up,ev)->co, fabs(newlen));
 				if (uvlay_tot) { // XXX scene->toolsettings->uvcalc_flag & UVCALC_TRANSFORM_CORRECT) {
@@ -5047,10 +5047,10 @@
 
 		sprintf(str, "Roll: %s", &c[0]);
 
-		final *= (float)(M_PI / 180.0);
+		final = DEG2RADF(final);
 	}
 	else {
-		sprintf(str, "Roll: %.2f", 180.0*final/M_PI);
+		sprintf(str, "Roll: %.2f", RAD2DEGF(final));
 	}
 
 	/* set roll values */
@@ -5358,8 +5358,8 @@
 		applyNumInput(&t->num, t->values);
 	}
 
-	t->values[0] = floor(t->values[0] + 0.5);
-	t->values[1] = floor(t->values[1] + 0.5);
+	t->values[0] = floor(t->values[0] + 0.5f);
+	t->values[1] = floor(t->values[1] + 0.5f);
 
 	headerSeqSlide(t, t->values, str);
 	applySeqSlide(t, t->values);
@@ -5781,7 +5781,7 @@
 	/* handle numeric-input stuff */
 	t->vec[0] = 2.0f*(cval[0]-sval[0]) / (maxx-minx);
 	applyNumInput(&t->num, &t->vec[0]);
-	t->values[0] = (maxx-minx) * t->vec[0] / 2.0 + sval[0];
+	t->values[0] = (maxx-minx) * t->vec[0] / 2.0f + sval[0];
 
 	headerTimeSlide(t, sval[0], str);
 	applyTimeSlide(t, sval[0]);

Modified: trunk/blender/source/blender/editors/transform/transform_constraints.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_constraints.c	2011-03-28 15:53:41 UTC (rev 35851)
+++ trunk/blender/source/blender/editors/transform/transform_constraints.c	2011-03-28 17:06:15 UTC (rev 35852)
@@ -191,11 +191,11 @@
 	if(in[0]==0.0f && in[1]==0.0f && in[2]==0.0f)
 		return;
 
-	angle = fabs(angle_v3v3(axis, t->viewinv[2]));
-	if (angle > M_PI / 2) {
-		angle = M_PI - angle;
+	angle = fabsf(angle_v3v3(axis, t->viewinv[2]));
+	if (angle > (float)M_PI / 2.0f) {
+		angle = (float)M_PI - angle;
 	}
-	angle = 180.0f * angle / M_PI;
+	angle = RAD2DEGF(angle);
 
 	/* For when view is parallel to constraint... will cause NaNs otherwise
 	   So we take vertical motion in 3D space and apply it to the
@@ -228,12 +228,12 @@
 
 		/* give arbitrary large value if projection is impossible */
 		factor = dot_v3v3(axis, norm);
-		if (1 - fabs(factor) < 0.0002f) {
+		if (1.0f - fabsf(factor) < 0.0002f) {
 			VECCOPY(out, axis);
 			if (factor > 0) {
-				mul_v3_fl(out, 1000000000);
+				mul_v3_fl(out, 1000000000.0f);
 			} else {
-				mul_v3_fl(out, -1000000000);
+				mul_v3_fl(out, -1000000000.0f);
 			}
 		} else {
 			add_v3_v3v3(v2, t->con.center, axis);

Modified: trunk/blender/source/blender/editors/transform/transform_conversions.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_conversions.c	2011-03-28 15:53:41 UTC (rev 35851)
+++ trunk/blender/source/blender/editors/transform/transform_conversions.c	2011-03-28 17:06:15 UTC (rev 35852)
@@ -356,7 +356,7 @@
 	bConstraint *con= pchan->constraints.first;
 
 	for(;con; con= con->next) {
-		if(con->type==CONSTRAINT_TYPE_KINEMATIC && (con->enforce!=0.0)) {
+		if(con->type==CONSTRAINT_TYPE_KINEMATIC && (con->enforce!=0.0f)) {
 			bKinematicConstraint *data= con->data;
 
 			if(data->tar==NULL)
@@ -757,7 +757,7 @@
 
 	/* check if pchan has ik-constraint */
 	for (con= pchan->constraints.first; con; con= con->next) {
-		if (con->type == CONSTRAINT_TYPE_KINEMATIC && (con->enforce!=0.0)) {
+		if (con->type == CONSTRAINT_TYPE_KINEMATIC && (con->enforce!=0.0f)) {
 			bKinematicConstraint *data= con->data;
 			
 			/* only accept if a temporary one (for auto-ik) */
@@ -2802,7 +2802,7 @@
 			if (BEZSELECTED(bezt) == 0) {
 				/* check beztriple should be removed according to cache */
 				for (index= 0; index < len; index++) {
-					if (IS_EQ(bezt->vec[1][0], selcache[index])) {
+					if (IS_EQF(bezt->vec[1][0], selcache[index])) {
 						delete_fcurve_key(fcu, i, 0);
 						break;
 					}
@@ -2975,7 +2975,7 @@
 
 	/* flush data! */
 	for (i = 0; i < t->total; i++, tfd++) {
-		*(tfd->sdata)= (int)floor(tfd->val + 0.5);
+		*(tfd->sdata)= (int)floor(tfd->val + 0.5f);
 	}
 }
 
@@ -3358,8 +3358,8 @@
 		mul_v3_fl(mtx[1], yscale);
 		
 		/* smtx is global (i.e. view) to data conversion */
-		if (IS_EQ(xscale, 0.0f) == 0) mul_v3_fl(smtx[0], 1.0f/xscale);
-		if (IS_EQ(yscale, 0.0f) == 0) mul_v3_fl(smtx[1], 1.0f/yscale);
+		if (IS_EQF(xscale, 0.0f) == 0) mul_v3_fl(smtx[0], 1.0f/xscale);
+		if (IS_EQF(yscale, 0.0f) == 0) mul_v3_fl(smtx[1], 1.0f/yscale);
 	}
 	
 	/* loop 2: build transdata arrays */
@@ -4137,7 +4137,7 @@
 	if (list) {
 		for (con= list->first; con; con=con->next) {
 			/* only consider constraint if it is enabled, and has influence on result */
-			if ((con->flag & CONSTRAINT_DISABLE)==0 && (con->enforce!=0.0)) {
+			if ((con->flag & CONSTRAINT_DISABLE)==0 && (con->enforce!=0.0f)) {
 				/* (affirmative) returns for specific constraints here... */
 					/* constraints that require this regardless  */
 				if (con->type == CONSTRAINT_TYPE_CHILDOF) return 1;


@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list