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