[Bf-blender-cvs] [ae689123643] temp-lineart-contained: LineArt: Bounding area duplicated code removal.
YimingWu
noreply at git.blender.org
Fri Mar 12 02:47:08 CET 2021
Commit: ae6891236438e2644b8b32d71ac76cb7cc89ebde
Author: YimingWu
Date: Fri Mar 12 09:14:05 2021 +0800
Branches: temp-lineart-contained
https://developer.blender.org/rBae6891236438e2644b8b32d71ac76cb7cc89ebde
LineArt: Bounding area duplicated code removal.
===================================================================
M source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
===================================================================
diff --git a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
index 1b5074532c2..478bb0170a6 100644
--- a/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
+++ b/source/blender/gpencil_modifiers/intern/lineart/lineart_cpu.c
@@ -3167,32 +3167,7 @@ LineartBoundingArea *ED_lineart_get_point_bounding_area_rb(LineartRenderBuffer *
return &rb->initial_bounding_areas[row * 4 + col];
}
-static LineartBoundingArea *lineart_get_point_bounding_area_recursive(LineartBoundingArea *ba,
- double x,
- double y)
-{
- if (ba->child == NULL) {
- return ba;
- }
-#define IN_BOUND(i, x, y) \
- ba->child[i].l <= x && ba->child[i].r >= x && ba->child[i].b <= y && ba->child[i].u >= y
-
- if (IN_BOUND(0, x, y)) {
- return lineart_get_point_bounding_area_recursive(&ba->child[0], x, y);
- }
- if (IN_BOUND(1, x, y)) {
- return lineart_get_point_bounding_area_recursive(&ba->child[1], x, y);
- }
- if (IN_BOUND(2, x, y)) {
- return lineart_get_point_bounding_area_recursive(&ba->child[2], x, y);
- }
- if (IN_BOUND(3, x, y)) {
- return lineart_get_point_bounding_area_recursive(&ba->child[3], x, y);
- }
-
- return NULL;
-#undef IN_BOUND
-}
+static LineartBoundingArea *lineart_get_bounding_area(LineartRenderBuffer *rb, double x, double y);
/* Wrapper for more convenience. */
LineartBoundingArea *ED_lineart_get_point_bounding_area_recursive_rb(LineartRenderBuffer *rb,
@@ -3201,7 +3176,7 @@ LineartBoundingArea *ED_lineart_get_point_bounding_area_recursive_rb(LineartRend
{
LineartBoundingArea *ba;
if ((ba = ED_lineart_get_point_bounding_area_rb(rb, x, y)) != NULL) {
- return lineart_get_point_bounding_area_recursive(ba, x, y);
+ return lineart_get_bounding_area(rb, x, y);
}
return NULL;
}
More information about the Bf-blender-cvs
mailing list