[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40147] trunk/blender/source/blender: replace VECCOPY -> copy_v3_v3, added copy_v*_v*_short too for typesafe copying, some parts of the code are copying float -> short normals without scaling.

Campbell Barton ideasman42 at gmail.com
Mon Sep 12 06:14:16 CEST 2011


Revision: 40147
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40147
Author:   campbellbarton
Date:     2011-09-12 04:14:12 +0000 (Mon, 12 Sep 2011)
Log Message:
-----------
replace VECCOPY -> copy_v3_v3, added copy_v*_v*_short too for typesafe copying, some parts of the code are copying float -> short normals without scaling. fix coming next.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/boids.c
    trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
    trunk/blender/source/blender/blenkernel/intern/collision.c
    trunk/blender/source/blender/blenkernel/intern/effect.c
    trunk/blender/source/blender/blenkernel/intern/particle.c
    trunk/blender/source/blender/blenkernel/intern/sketch.c
    trunk/blender/source/blender/blenlib/BLI_math_vector.h
    trunk/blender/source/blender/blenlib/intern/graph.c
    trunk/blender/source/blender/blenlib/intern/math_vector_inline.c
    trunk/blender/source/blender/editors/armature/editarmature_sketch.c
    trunk/blender/source/blender/editors/mesh/editmesh.c
    trunk/blender/source/blender/editors/mesh/editmesh_lib.c
    trunk/blender/source/blender/editors/mesh/editmesh_tools.c
    trunk/blender/source/blender/editors/sculpt_paint/sculpt.c
    trunk/blender/source/blender/editors/sculpt_paint/sculpt_undo.c
    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_generics.c
    trunk/blender/source/blender/editors/transform/transform_manipulator.c
    trunk/blender/source/blender/editors/transform/transform_orientations.c
    trunk/blender/source/blender/editors/transform/transform_snap.c
    trunk/blender/source/blender/modifiers/intern/MOD_weightvgproximity.c
    trunk/blender/source/blender/nodes/shader/nodes/node_shader_geom.c
    trunk/blender/source/blender/nodes/shader/nodes/node_shader_material.c
    trunk/blender/source/blender/render/intern/source/occlusion.c
    trunk/blender/source/blender/render/intern/source/render_texture.c
    trunk/blender/source/blender/render/intern/source/renderdatabase.c
    trunk/blender/source/blender/render/intern/source/shadeinput.c
    trunk/blender/source/blender/render/intern/source/shadeoutput.c

Modified: trunk/blender/source/blender/blenkernel/intern/boids.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/boids.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/boids.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -156,8 +156,8 @@
 		if(rule->type == eBoidRuleType_Goal && boids->options & BOID_ALLOW_CLIMB && surface!=0.0f) {
 			if(!bbd->goal_ob || bbd->goal_priority < priority) {
 				bbd->goal_ob = eob;
-				VECCOPY(bbd->goal_co, efd.loc);
-				VECCOPY(bbd->goal_nor, efd.nor);
+				copy_v3_v3(bbd->goal_co, efd.loc);
+				copy_v3_v3(bbd->goal_nor, efd.nor);
 			}
 		}
 		else if(rule->type == eBoidRuleType_Avoid && bpa->data.mode == eBoidMode_Climbing &&
@@ -869,7 +869,7 @@
 {
 	BoidParticle *bpa = pa->boid;
 	float nor[3], vel[3];
-	VECCOPY(nor, surface_nor);
+	copy_v3_v3(nor, surface_nor);
 
 	/* gather apparent gravity */
 	VECADDFAC(bpa->gravity, bpa->gravity, surface_nor, -1.0f);
@@ -1345,7 +1345,7 @@
 		{
 			boid_climb(boids, pa, ground_co, ground_nor);
 			//float nor[3];
-			//VECCOPY(nor, ground_nor);
+			//copy_v3_v3(nor, ground_nor);
 
 			///* gather apparent gravity to r_ve */
 			//VECADDFAC(pa->r_ve, pa->r_ve, ground_nor, -1.0);

Modified: trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/cdderivedmesh.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -1853,7 +1853,7 @@
 	cddm->mvert = vert;
 
 	for(i = 0; i < dm->numVertData; ++i, ++vert)
-		VECCOPY(vert->no, vertNormals[i]);
+		copy_v3_v3_short(vert->no, vertNormals[i]);
 }
 
 void CDDM_calc_normals(DerivedMesh *dm)

Modified: trunk/blender/source/blender/blenkernel/intern/collision.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/collision.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/collision.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -104,11 +104,11 @@
 	// fill tree
 	for ( i = 0; i < numfaces; i++, tface++ )
 	{
-		VECCOPY ( &co[0*3], x[tface->v1].co );
-		VECCOPY ( &co[1*3], x[tface->v2].co );
-		VECCOPY ( &co[2*3], x[tface->v3].co );
+		copy_v3_v3 ( &co[0*3], x[tface->v1].co );
+		copy_v3_v3 ( &co[1*3], x[tface->v2].co );
+		copy_v3_v3 ( &co[2*3], x[tface->v3].co );
 		if ( tface->v4 )
-			VECCOPY ( &co[3*3], x[tface->v4].co );
+			copy_v3_v3 ( &co[3*3], x[tface->v4].co );
 
 		BLI_bvhtree_insert ( tree, i, co, ( mfaces->v4 ? 4 : 3 ) );
 	}
@@ -133,21 +133,21 @@
 	{
 		for ( i = 0; i < numfaces; i++, mfaces++ )
 		{
-			VECCOPY ( &co[0*3], x[mfaces->v1].co );
-			VECCOPY ( &co[1*3], x[mfaces->v2].co );
-			VECCOPY ( &co[2*3], x[mfaces->v3].co );
+			copy_v3_v3 ( &co[0*3], x[mfaces->v1].co );
+			copy_v3_v3 ( &co[1*3], x[mfaces->v2].co );
+			copy_v3_v3 ( &co[2*3], x[mfaces->v3].co );
 			if ( mfaces->v4 )
-				VECCOPY ( &co[3*3], x[mfaces->v4].co );
+				copy_v3_v3 ( &co[3*3], x[mfaces->v4].co );
 
 			// copy new locations into array
 			if ( moving && xnew )
 			{
 				// update moving positions
-				VECCOPY ( &co_moving[0*3], xnew[mfaces->v1].co );
-				VECCOPY ( &co_moving[1*3], xnew[mfaces->v2].co );
-				VECCOPY ( &co_moving[2*3], xnew[mfaces->v3].co );
+				copy_v3_v3 ( &co_moving[0*3], xnew[mfaces->v1].co );
+				copy_v3_v3 ( &co_moving[1*3], xnew[mfaces->v2].co );
+				copy_v3_v3 ( &co_moving[2*3], xnew[mfaces->v3].co );
 				if ( mfaces->v4 )
-					VECCOPY ( &co_moving[3*3], xnew[mfaces->v4].co );
+					copy_v3_v3 ( &co_moving[3*3], xnew[mfaces->v4].co );
 
 				ret = BLI_bvhtree_update_node ( bvhtree, i, co, co_moving, ( mfaces->v4 ? 4 : 3 ) );
 			}
@@ -550,7 +550,7 @@
 			float temp[3], spf;
 
 			// calculate tangential velocity
-			VECCOPY ( temp, collpair->normal );
+			copy_v3_v3 ( temp, collpair->normal );
 			mul_v3_fl( temp, magrelVel );
 			VECSUB ( vrel_t_pre, relativeVelocity, temp );
 
@@ -2346,7 +2346,7 @@
 					if ( verts[i].impulse_count )
 					{
 						VECADDMUL ( verts[i].tv, verts[i].impulse, 1.0f / verts[i].impulse_count );
-						VECCOPY ( verts[i].impulse, tnull );
+						copy_v3_v3 ( verts[i].impulse, tnull );
 						verts[i].impulse_count = 0;
 
 						ret++;

Modified: trunk/blender/source/blender/blenkernel/intern/effect.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/effect.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/effect.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -590,16 +590,16 @@
 	BLI_bvhtree_find_nearest(surmd->bvhtree->tree, co, &nearest, surmd->bvhtree->nearest_callback, surmd->bvhtree);
 
 	if(nearest.index != -1) {
-		VECCOPY(surface_co, nearest.co);
+		copy_v3_v3(surface_co, nearest.co);
 
 		if(surface_nor) {
-			VECCOPY(surface_nor, nearest.no);
+			copy_v3_v3(surface_nor, nearest.no);
 		}
 
 		if(surface_vel) {
 			MFace *mface = CDDM_get_face(surmd->dm, nearest.index);
 			
-			VECCOPY(surface_vel, surmd->v[mface->v1].co);
+			copy_v3_v3(surface_vel, surmd->v[mface->v1].co);
 			add_v3_v3(surface_vel, surmd->v[mface->v2].co);
 			add_v3_v3(surface_vel, surmd->v[mface->v3].co);
 			if(mface->v4)
@@ -705,7 +705,7 @@
 				sub_v3_v3v3(efd->loc, point->loc, translate);
 		}
 		else {
-			VECCOPY(efd->loc, ob->obmat[3]);
+			copy_v3_v3(efd->loc, ob->obmat[3]);
 		}
 
 		if(real_velocity)
@@ -727,8 +727,8 @@
 			mul_v3_fl(efd->vec_to_point, (efd->distance-eff->pd->f_size)/efd->distance);
 
 		if(eff->flag & PE_USE_NORMAL_DATA) {
-			VECCOPY(efd->vec_to_point2, efd->vec_to_point);
-			VECCOPY(efd->nor2, efd->nor);
+			copy_v3_v3(efd->vec_to_point2, efd->vec_to_point);
+			copy_v3_v3(efd->nor2, efd->nor);
 		}
 		else {
 			/* for some effectors we need the object center every time */
@@ -800,7 +800,7 @@
 
 	strength= eff->pd->f_strength * efd->falloff;
 
-	VECCOPY(tex_co,point->loc);
+	copy_v3_v3(tex_co,point->loc);
 
 	if(eff->pd->flag & PFIELD_TEX_2D) {
 		float fac=-dot_v3v3(tex_co, efd->nor);
@@ -878,11 +878,11 @@
 			damp += wind_func(rng, noise_factor);
 	}
 
-	VECCOPY(force, efd->vec_to_point);
+	copy_v3_v3(force, efd->vec_to_point);
 
 	switch(pd->forcefield){
 		case PFIELD_WIND:
-			VECCOPY(force, efd->nor);
+			copy_v3_v3(force, efd->nor);
 			mul_v3_fl(force, strength * efd->falloff);
 			break;
 		case PFIELD_FORCE:
@@ -944,7 +944,7 @@
 			return;
 		case PFIELD_TURBULENCE:
 			if(pd->flag & PFIELD_GLOBAL_CO) {
-				VECCOPY(temp, point->loc);
+				copy_v3_v3(temp, point->loc);
 			}
 			else {
 				VECADD(temp, efd->vec_to_point2, efd->nor2);
@@ -955,7 +955,7 @@
 			mul_v3_fl(force, strength * efd->falloff);
 			break;
 		case PFIELD_DRAG:
-			VECCOPY(force, point->vel);
+			copy_v3_v3(force, point->vel);
 			fac = normalize_v3(force) * point->vel_to_sec;
 
 			strength = MIN2(strength, 2.0f);
@@ -1039,7 +1039,7 @@
 					do_texture_effector(eff, &efd, point, force);
 				else {
 					float temp1[3]={0,0,0}, temp2[3];
-					VECCOPY(temp1, force);
+					copy_v3_v3(temp1, force);
 
 					do_physical_effector(eff, &efd, point, force);
 					

Modified: trunk/blender/source/blender/blenkernel/intern/particle.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/particle.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/particle.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -2090,10 +2090,10 @@
 			data = eff->guide_data + p;
 
 			VECSUB(efd.vec_to_point, state.co, eff->guide_loc);
-			VECCOPY(efd.nor, eff->guide_dir);
+			copy_v3_v3(efd.nor, eff->guide_dir);
 			efd.distance = len_v3(efd.vec_to_point);
 
-			VECCOPY(data->vec_to_point, efd.vec_to_point);
+			copy_v3_v3(data->vec_to_point, efd.vec_to_point);
 			data->strength = effector_falloff(eff, &efd, &point, weights);
 		}
 	}

Modified: trunk/blender/source/blender/blenkernel/intern/sketch.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/sketch.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenkernel/intern/sketch.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -245,13 +245,13 @@
 	prev = stk->points + start;
 	next = stk->points + end;
 
-	VECCOPY(pt1.p, p_start);
-	VECCOPY(pt1.no, prev->no);
+	copy_v3_v3(pt1.p, p_start);
+	copy_v3_v3(pt1.no, prev->no);
 	pt1.mode = prev->mode;
 	pt1.type = prev->type;
 
-	VECCOPY(pt2.p, p_end);
-	VECCOPY(pt2.no, next->no);
+	copy_v3_v3(pt2.p, p_end);
+	copy_v3_v3(pt2.no, next->no);
 	pt2.mode = next->mode;
 	pt2.type = next->type;
 
@@ -323,7 +323,7 @@
 
 	total = end - start + 1;
 
-	VECCOPY(normal, stk->points[start].no);
+	copy_v3_v3(normal, stk->points[start].no);
 
 	sub_v3_v3v3(distance, stk->points[end].p, stk->points[start].p);
 	project_v3_v3v3(normal, distance, normal);

Modified: trunk/blender/source/blender/blenlib/BLI_math_vector.h
===================================================================
--- trunk/blender/source/blender/blenlib/BLI_math_vector.h	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenlib/BLI_math_vector.h	2011-09-12 04:14:12 UTC (rev 40147)
@@ -56,6 +56,12 @@
 MINLINE void swap_v3_v3(float a[3], float b[3]);
 MINLINE void swap_v4_v4(float a[4], float b[4]);
 
+/* short */
+MINLINE void copy_v2_v2_short(short r[2], const short a[2]);
+MINLINE void copy_v3_v3_short(short r[3], const short a[3]);
+MINLINE void copy_v4_v4_short(short r[4], const short a[4]);
+
+
 /********************************* Arithmetic ********************************/
 
 MINLINE void add_v3_fl(float r[3], float f);

Modified: trunk/blender/source/blender/blenlib/intern/graph.c
===================================================================
--- trunk/blender/source/blender/blenlib/intern/graph.c	2011-09-12 02:44:17 UTC (rev 40146)
+++ trunk/blender/source/blender/blenlib/intern/graph.c	2011-09-12 04:14:12 UTC (rev 40147)
@@ -591,7 +591,7 @@
 		node1 = BLI_otherNode(ring[i].arc, root_node);
 		node2 = BLI_otherNode(ring[j].arc, root_node);
 
-		VECCOPY(p, node2->p);
+		copy_v3_v3(p, node2->p);
 		BLI_mirrorAlongAxis(p, root_node->p, normal);
 		
 		/* check if it's within limit before continuing */
@@ -605,7 +605,7 @@
 	if (symmetric)
 	{
 		/* mark node as symmetric physically */
-		VECCOPY(root_node->symmetry_axis, axis);

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list