[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