Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2017-10-22 17:15:26 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-01-03 14:49:50 +0300
commit4a457d4f1e190d8c9b9f52acca6c98e79401cc0c (patch)
treed0086af281e3ef760bdd0d35def4b789b6628f98 /tests
parent1b6130533f38c1293e0b65204df0aa64b4b0b1d9 (diff)
Polyfill Beautify: half-edge optimization
Was using an edge hash for triangle -> edge lookups, updating triangle indices for each edge-rotation. Replace this with half-edge which can rotate edges much more simply, writing triangles back once the solution has been calculated. Gives ~33% speedup in own tests.
Diffstat (limited to 'tests')
-rw-r--r--tests/gtests/blenlib/BLI_polyfill2d_test.cc5
1 files changed, 1 insertions, 4 deletions
diff --git a/tests/gtests/blenlib/BLI_polyfill2d_test.cc b/tests/gtests/blenlib/BLI_polyfill2d_test.cc
index e887f12b6d0..ff6fe08eb25 100644
--- a/tests/gtests/blenlib/BLI_polyfill2d_test.cc
+++ b/tests/gtests/blenlib/BLI_polyfill2d_test.cc
@@ -13,7 +13,6 @@ extern "C" {
#include "BLI_array_utils.h"
#include "BLI_polyfill2d.h"
#include "BLI_math.h"
-#include "BLI_edgehash.h"
#include "MEM_guardedalloc.h"
#ifdef USE_OBJ_PREVIEW
@@ -195,17 +194,15 @@ static void test_polyfill_template(
{
MemArena *pf_arena = BLI_memarena_new(BLI_POLYFILL_ARENA_SIZE, __func__);
Heap *pf_heap = BLI_heap_new_ex(BLI_POLYFILL_ALLOC_NGON_RESERVE);
- EdgeHash *pf_ehash = BLI_edgehash_new_ex(__func__, BLI_POLYFILL_ALLOC_NGON_RESERVE);
BLI_polyfill_beautify(
poly, poly_tot, tris,
- pf_arena, pf_heap, pf_ehash);
+ pf_arena, pf_heap);
test_polyfill_template_check(id, is_degenerate, poly, poly_tot, tris, tris_tot);
BLI_memarena_free(pf_arena);
BLI_heap_free(pf_heap, NULL);
- BLI_edgehash_free(pf_ehash, NULL);
}
#endif
}