Revision: 46592
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46592
Author:   campbellbarton
Date:     2012-05-12 22:34:20 +0000 (Sat, 12 May 2012)
Log Message:
-----------
code cleanup: missed some min/max use of float[3], also found case of 
DO_MIN/MAX re-reading same value from array 4 times when it can do once (use 
minf rather then MIN2, same for maxf)

Modified Paths:
--------------
    trunk/blender/source/blender/editors/include/ED_sculpt.h
    trunk/blender/source/blender/editors/sculpt_paint/sculpt.c
    trunk/blender/source/blender/editors/space_view3d/drawvolume.c
    trunk/blender/source/blender/editors/space_view3d/view3d_edit.c
    trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
    trunk/blender/source/blender/editors/space_view3d/view3d_snap.c
    trunk/blender/source/blender/editors/uvedit/uvedit_parametrizer.c
    trunk/blender/source/blender/render/intern/include/strand.h
    trunk/blender/source/blender/render/intern/raytrace/bvh.h
    trunk/blender/source/blender/render/intern/raytrace/rayobject_blibvh.cpp
    trunk/blender/source/blender/render/intern/raytrace/svbvh.h
    trunk/blender/source/blender/render/intern/source/strand.c

Modified: trunk/blender/source/blender/editors/include/ED_sculpt.h
===================================================================
--- trunk/blender/source/blender/editors/include/ED_sculpt.h    2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/include/ED_sculpt.h    2012-05-12 
22:34:20 UTC (rev 46592)
@@ -44,7 +44,7 @@
                               struct RegionView3D *rv3d, struct Object *ob);
 void ED_sculpt_force_update(struct bContext *C);
 float *ED_sculpt_get_last_stroke(struct Object *ob);
-int ED_sculpt_minmax(struct bContext *C, float *min, float *max);
+int ED_sculpt_minmax(struct bContext *C, float min[3], float max[3]);
 void ED_sculpt_mask_layers_ensure(struct Object *ob,
                                   struct MultiresModifierData *mmd);
 

Modified: trunk/blender/source/blender/editors/sculpt_paint/sculpt.c
===================================================================
--- trunk/blender/source/blender/editors/sculpt_paint/sculpt.c  2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/sculpt_paint/sculpt.c  2012-05-12 
22:34:20 UTC (rev 46592)
@@ -107,7 +107,7 @@
        return (ob && ob->sculpt && ob->sculpt->last_stroke_valid) ? 
ob->sculpt->last_stroke : NULL;
 }
 
-int ED_sculpt_minmax(bContext *C, float *min, float *max)
+int ED_sculpt_minmax(bContext *C, float min[3], float max[3])
 {
        Object *ob = CTX_data_active_object(C);
 

Modified: trunk/blender/source/blender/editors/space_view3d/drawvolume.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawvolume.c      
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/space_view3d/drawvolume.c      
2012-05-12 22:34:20 UTC (rev 46592)
@@ -156,7 +156,7 @@
        return dot_v3v3(up, tmp) >= 0;
 }
 
-void draw_volume(ARegion *ar, GPUTexture *tex, float *min, float *max, int 
res[3], float dx, GPUTexture *tex_shadow)
+void draw_volume(ARegion *ar, GPUTexture *tex, float min[3], float max[3], int 
res[3], float dx, GPUTexture *tex_shadow)
 {
        RegionView3D *rv3d = ar->regiondata;
 

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_edit.c     
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_edit.c     
2012-05-12 22:34:20 UTC (rev 46592)
@@ -2175,7 +2175,7 @@
 
 
        if (obedit) {
-               ok = minmax_verts(obedit, min, max);    /* only selected */
+               ok = ED_view3d_minmax_verts(obedit, min, max);    /* only 
selected */
        }
        else if (ob && (ob->mode & OB_MODE_POSE)) {
                if (ob->pose) {

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_intern.h   
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_intern.h   
2012-05-12 22:34:20 UTC (rev 46592)
@@ -186,7 +186,7 @@
 void view3d_tool_props_register(struct ARegionType *art);
 
 /* view3d_snap.c */
-int minmax_verts(struct Object *obedit, float *min, float *max);
+int ED_view3d_minmax_verts(struct Object *obedit, float min[3], float max[3]);
 
 void VIEW3D_OT_snap_selected_to_grid(struct wmOperatorType *ot);
 void VIEW3D_OT_snap_selected_to_cursor(struct wmOperatorType *ot);
@@ -202,7 +202,7 @@
 extern const char *view3d_context_dir[]; /* doc access */
 
 /* draw_volume.c */
-void draw_volume(struct ARegion *ar, struct GPUTexture *tex, float *min, float 
*max, int res[3], float dx, struct GPUTexture *tex_shadow);
+void draw_volume(struct ARegion *ar, struct GPUTexture *tex, float min[3], 
float max[3], int res[3], float dx, struct GPUTexture *tex_shadow);
 
 /* workaround for trivial but noticeable camera bug caused by imprecision
  * between view border calculation in 2D/3D space, workaround for bug [#28037].

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_snap.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_snap.c     
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_snap.c     
2012-05-12 22:34:20 UTC (rev 46592)
@@ -211,7 +211,7 @@
 /* mode flags: */
 #define TM_ALL_JOINTS       1 /* all joints (for bones only) */
 #define TM_SKIP_HANDLES     2 /* skip handles when control point is selected 
(for curves only) */
-static void make_trans_verts(Object *obedit, float *min, float *max, int mode)
+static void make_trans_verts(Object *obedit, float min[3], float max[3], int 
mode)
 {
        Nurb *nu;
        BezTriple *bezt;
@@ -1062,7 +1062,7 @@
 /* **************************************************** */
 
 
-int minmax_verts(Object *obedit, float *min, float *max)
+int ED_view3d_minmax_verts(Object *obedit, float min[3], float max[3])
 {
        TransVert *tv;
        float centroid[3], vec[3], bmat[3][3];

Modified: trunk/blender/source/blender/editors/uvedit/uvedit_parametrizer.c
===================================================================
--- trunk/blender/source/blender/editors/uvedit/uvedit_parametrizer.c   
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/editors/uvedit/uvedit_parametrizer.c   
2012-05-12 22:34:20 UTC (rev 46592)
@@ -444,7 +444,7 @@
        return sqrt(d[0] * d[0] + d[1] * d[1]);
 }
 
-static void p_chart_uv_bbox(PChart *chart, float *minv, float *maxv)
+static void p_chart_uv_bbox(PChart *chart, float minv[2], float maxv[2])
 {
        PVert *v;
 

Modified: trunk/blender/source/blender/render/intern/include/strand.h
===================================================================
--- trunk/blender/source/blender/render/intern/include/strand.h 2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/render/intern/include/strand.h 2012-05-12 
22:34:20 UTC (rev 46592)
@@ -93,7 +93,7 @@
 
 void strand_eval_point(StrandSegment *sseg, StrandPoint *spoint);
 void render_strand_segment(struct Render *re, float winmat[][4], struct 
StrandPart *spart, struct ZSpan *zspan, int totzspan, StrandSegment *sseg);
-void strand_minmax(struct StrandRen *strand, float *min, float *max, float 
width);
+void strand_minmax(struct StrandRen *strand, float min[3], float max[3], const 
float width);
 
 struct StrandSurface *cache_strand_surface(struct Render *re, struct ObjectRen 
*obr, struct DerivedMesh *dm, float mat[][4], int timeoffset);
 void free_strand_surface(struct Render *re);

Modified: trunk/blender/source/blender/render/intern/raytrace/bvh.h
===================================================================
--- trunk/blender/source/blender/render/intern/raytrace/bvh.h   2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/render/intern/raytrace/bvh.h   2012-05-12 
22:34:20 UTC (rev 46592)
@@ -147,14 +147,14 @@
 
 
 template<class Node>
-static inline void bvh_node_merge_bb(Node *node, float *min, float *max)
+static inline void bvh_node_merge_bb(Node *node, float min[3], float max[3])
 {
        if (is_leaf(node)) {
                RE_rayobject_merge_bb((RayObject *)node, min, max);
        }
        else {
-               DO_MIN(node->bb,   min);
-               DO_MAX(node->bb+3, max);
+               DO_MIN(node->bb,     min);
+               DO_MAX(node->bb + 3, max);
        }
 }
 

Modified: 
trunk/blender/source/blender/render/intern/raytrace/rayobject_blibvh.cpp
===================================================================
--- trunk/blender/source/blender/render/intern/raytrace/rayobject_blibvh.cpp    
2012-05-12 22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/render/intern/raytrace/rayobject_blibvh.cpp    
2012-05-12 22:34:20 UTC (rev 46592)
@@ -44,7 +44,7 @@
 static void RE_rayobject_blibvh_add(RayObject *o, RayObject *ob);
 static void RE_rayobject_blibvh_done(RayObject *o);
 static void RE_rayobject_blibvh_free(RayObject *o);
-static void RE_rayobject_blibvh_bb(RayObject *o, float *min, float *max);
+static void RE_rayobject_blibvh_bb(RayObject *o, float min[3], float max[3]);
 
 static float RE_rayobject_blibvh_cost(RayObject *UNUSED(o))
 {
@@ -162,7 +162,7 @@
        MEM_freeN(obj);
 }
 
-static void RE_rayobject_blibvh_bb(RayObject *o, float *min, float *max)
+static void RE_rayobject_blibvh_bb(RayObject *o, float min[3], float max[3])
 {
        BVHObject *obj = (BVHObject*)o;
        DO_MIN(obj->bb[0], min);

Modified: trunk/blender/source/blender/render/intern/raytrace/svbvh.h
===================================================================
--- trunk/blender/source/blender/render/intern/raytrace/svbvh.h 2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/render/intern/raytrace/svbvh.h 2012-05-12 
22:34:20 UTC (rev 46592)
@@ -157,29 +157,27 @@
 
 
 template<>
-inline void bvh_node_merge_bb<SVBVHNode>(SVBVHNode *node, float *min, float 
*max)
+inline void bvh_node_merge_bb<SVBVHNode>(SVBVHNode *node, float min[3], float 
max[3])
 {
        if (is_leaf(node)) {
                RE_rayobject_merge_bb((RayObject*)node, min, max);
        }
        else {
-               int i=0;
-               while (i+4 <= node->nchilds) {
-                       float *res = node->child_bb + 6*i;
+               int i;
+               for (i = 0; i + 4 <= node->nchilds; i += 4) {
+                       float *res = node->child_bb + 6 * i;
                        for (int j = 0; j < 3; j++) {
-                               min[j] = MIN2(min[j], res[4*j+0]);
-                               min[j] = MIN2(min[j], res[4*j+1]);
-                               min[j] = MIN2(min[j], res[4*j+2]);
-                               min[j] = MIN2(min[j], res[4*j+3]);
+                               min[j] = minf(res[4 * j + 0],
+                                        minf(res[4 * j + 1],
+                                        minf(res[4 * j + 2],
+                                        minf(res[4 * j + 3], min[j]))));
                        }
                        for (int j = 0; j < 3; j++) {
-                               max[j] = MAX2(max[j], res[4*(j+3)+0]);
-                               max[j] = MAX2(max[j], res[4*(j+3)+1]);
-                               max[j] = MAX2(max[j], res[4*(j+3)+2]);
-                               max[j] = MAX2(max[j], res[4*(j+3)+3]);
+                               max[j] = maxf(res[4 * (j + 3) + 0],
+                                        maxf(res[4 * (j + 3) + 1],
+                                        maxf(res[4 * (j + 3) + 2],
+                                        maxf(res[4 * (j + 3) + 3], max[j]))));
                        }
-                       
-                       i += 4;
                }
 
                for ( ; i < node->nchilds; i++) {

Modified: trunk/blender/source/blender/render/intern/source/strand.c
===================================================================
--- trunk/blender/source/blender/render/intern/source/strand.c  2012-05-12 
22:13:38 UTC (rev 46591)
+++ trunk/blender/source/blender/render/intern/source/strand.c  2012-05-12 
22:34:20 UTC (rev 46592)
@@ -1060,7 +1060,7 @@
        BLI_freelistN(&re->strandsurface);
 }
 
-void strand_minmax(StrandRen *strand, float *min, float *max, float width)

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to