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
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2014-02-04 22:22:21 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-02-04 22:27:01 +0400
commit6c17d2141bf596672f6916d8d5897bcd53d3537d (patch)
tree7768401057f87d19f810407966dee2ab35ea15d5 /source/blender/blenkernel/intern
parentdb749684023176d00d7b1bdfe7f56527b72549e3 (diff)
Scanfill: optimize filling curves, text, masks - skip calculating holes
Support for tagging polygon numbers when adding scanfill data, saves having to calculate connectivity afterwards (which can take approx half overall scanfill time for complex curves).
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/displist.c3
-rw-r--r--source/blender/blenkernel/intern/mask_rasterize.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/displist.c b/source/blender/blenkernel/intern/displist.c
index 88791930e0e..e2c87e08b54 100644
--- a/source/blender/blenkernel/intern/displist.c
+++ b/source/blender/blenkernel/intern/displist.c
@@ -481,6 +481,9 @@ void BKE_displist_fill(ListBase *dispbase, ListBase *to, const float normal_proj
cont = 1;
else if (charidx == dl->charidx) { /* character with needed index */
if (colnr == dl->col) {
+
+ sf_ctx.poly_nr++;
+
/* make editverts and edges */
f1 = dl->verts;
a = dl->nr;
diff --git a/source/blender/blenkernel/intern/mask_rasterize.c b/source/blender/blenkernel/intern/mask_rasterize.c
index 6c46b9c7c5b..e1e310f3d3c 100644
--- a/source/blender/blenkernel/intern/mask_rasterize.c
+++ b/source/blender/blenkernel/intern/mask_rasterize.c
@@ -647,6 +647,8 @@ void BKE_maskrasterize_handle_init(MaskRasterHandle *mr_handle, struct Mask *mas
float co[3];
co[2] = 0.0f;
+ sf_ctx.poly_nr++;
+
if (do_aspect_correct) {
if (width != height) {
float *fp;