diff options
author | Hermet Park <hermetpark@gmail.com> | 2019-06-05 16:42:15 +0900 |
---|---|---|
committer | Hermet Park <hermetpark@gmail.com> | 2019-06-21 17:43:23 +0900 |
commit | 270c61dbb74f8f6e4f800f78b054a9da8cb84848 (patch) | |
tree | 0e31f32c69e062076850a2226651529212b2866a | |
parent | 431b5e817c5652d39560fc2a416f87b948cc8d64 (diff) | |
download | efl-270c61dbb74f8f6e4f800f78b054a9da8cb84848.tar.gz |
canvas vg: optmize lottie vector tree.
Skip invisible stroke nodes as possible.
-rw-r--r-- | src/static_libs/vg_common/vg_common_json.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/static_libs/vg_common/vg_common_json.c b/src/static_libs/vg_common/vg_common_json.c index c97bfeaa08..3d00bbb842 100644 --- a/src/static_libs/vg_common/vg_common_json.c +++ b/src/static_libs/vg_common/vg_common_json.c @@ -42,6 +42,15 @@ _construct_drawable_nodes(Efl_Canvas_Vg_Container *parent, const LOTLayerNode *l LOTNode *node = layer->mNodeList.ptr[i]; if (!node) continue; + //Skip Invisible Stroke? + if (node->mStroke.enable && node->mStroke.width == 0) + { + char *key = _get_key_val(node); + Efl_Canvas_Vg_Shape *shape = efl_key_data_get(parent, key); + if (shape) efl_gfx_entity_visible_set(shape, EINA_FALSE); + continue; + } + const float *data = node->mPath.ptPtr; if (!data) continue; |