platform/core/graphics/tizenvg.git
4 years agocommon fill: added spread mode. 28/235928/1
Hermet Park [Thu, 11 Jun 2020 05:27:20 +0000 (14:27 +0900)]
common fill: added spread mode.

Change-Id: I95d47bc492d5a22326a745a591d243e56a26bae4

4 years agocommon gradient: implement linear/radial gradient interfaces. 53/235753/7
Hermet Park [Tue, 9 Jun 2020 06:40:13 +0000 (15:40 +0900)]
common gradient: implement linear/radial gradient interfaces.

Change-Id: Ica9c54e662e73592d3fddcabed09b1605b3a5a4f

4 years agocommon: code refacatoring. 66/235766/1
Hermet Park [Tue, 9 Jun 2020 11:43:38 +0000 (20:43 +0900)]
common: code refacatoring.

shorter prefix for better neat code.

it's just a preference.

Change-Id: I30998476a92bc971193e9a5b4436687e48e4d19a

4 years agocommon: ++optimization 64/235764/3
Hermet Park [Tue, 9 Jun 2020 11:17:39 +0000 (20:17 +0900)]
common: ++optimization

replace dynamic_cast to static_cast,

This can be a controversial choice between optmization and clean code.

Obviously we know the converting types,
try avoiding a bit heavier casting some cases.

Change-Id: Id763e6d1db449a229a492ab5b1a901a195936152

4 years agocommon interface: replace arguements size_t to uint32_t 26/235726/3
Hermet Park [Tue, 9 Jun 2020 06:22:33 +0000 (15:22 +0900)]
common interface: replace arguements size_t to uint32_t

We prefer to build up a tiny compact engine at memory rather than compatibility,
this engine is not considerd for end-users but designed for middle-level framework
and some low-level users.

Thus, we won't consider 64bits data size,
use explicit 32 bits data until coming next upgrade...

Change-Id: I0704d5f1e0eb909cccc10922bc5972e115fbbcc0

4 years agocommon interface: concrete return type. 04/235704/5
Hermet Park [Tue, 9 Jun 2020 05:18:58 +0000 (14:18 +0900)]
common interface: concrete return type.

Introduce Result type for notifying caller more detailed info.

We should implement the result values for each apis, with practical values.

Change-Id: Ia47abcb56a8efca7094ac3eed0178aeac8aa2910

4 years agosw_engine: grow cell memory buffer up to allow larger shapes 85/235685/1
Hermet Park [Tue, 9 Jun 2020 02:02:51 +0000 (11:02 +0900)]
sw_engine: grow cell memory buffer up to allow larger shapes

Change-Id: I7a8feaa11d3dad81dd1004782e07a8ac4a768d91

4 years agosw_engine: support stroke dash feature 07/235307/10
Hermet Park [Wed, 3 Jun 2020 11:50:13 +0000 (20:50 +0900)]
sw_engine: support stroke dash feature

Change-Id: Ibed8bcb6a07952a059bb9a7355f7c43db97aa672

4 years agocommon: retyped the color value size_t -> uint8_t 10/235410/1
Hermet Park [Thu, 4 Jun 2020 08:49:10 +0000 (17:49 +0900)]
common: retyped the color value size_t -> uint8_t

since it's range is 0 - 255.

Change-Id: I16e0569341c4a94acab9488d076f235bf90ff4db

4 years agosw_engine shape: ++ comment for later optimization 95/235295/1
Hermet Park [Wed, 3 Jun 2020 10:16:44 +0000 (19:16 +0900)]
sw_engine shape: ++ comment for later optimization

Change-Id: Ie6cd622748b88e2bce0c9d9a79cc4528a95c9c5c

4 years agosw_engine stroke: stabilizing line drawing. 90/235290/2
Hermet Park [Wed, 3 Jun 2020 10:08:18 +0000 (19:08 +0900)]
sw_engine stroke: stabilizing line drawing.

Also added StrokeLine test

Change-Id: I91143039823d744bf9287534227927556a2f51e1

4 years agosw_engine: support stroke transformation properly. 94/235194/2
Hermet Park [Tue, 2 Jun 2020 12:00:50 +0000 (21:00 +0900)]
sw_engine: support stroke transformation properly.

also updated transform test cases.

Yet, this engine is not well optimized,
If they are too mch sluggish,
you can use ELM_FPS envrionment lowing down the fps
when you launch test cases...

ex) $ELM_FPS=30 ./testSceneTransform

Change-Id: I1871d5bedee010d5d6a3d877d95e257120796e8b

4 years agotest scene: remove duplicated engine initialization.
Hermet Park [Wed, 3 Jun 2020 02:41:40 +0000 (11:41 +0900)]
test scene: remove duplicated engine initialization.

Change-Id: I5a2f972544e47578552b0c49367749ce2d01c5f2

4 years agotest stroke: remove duplicated engine initialize call.
Hermet Park [Wed, 3 Jun 2020 02:35:03 +0000 (11:35 +0900)]
test stroke: remove duplicated engine initialize call.

Change-Id: Ia592a45581eae4fd5c85e6ba4d9d0eef835b14c1

4 years agosw_engine: fix a missing of variable initializing.
Hermet Park [Wed, 3 Jun 2020 02:27:34 +0000 (11:27 +0900)]
sw_engine: fix a missing of variable initializing.

Change-Id: I6451b07709fbc56441363e8f0ee0f4647404ae10

4 years agosw_engine: fix mistached c style alloc/free 24/235224/1
Hermet Park [Wed, 3 Jun 2020 02:15:40 +0000 (11:15 +0900)]
sw_engine: fix mistached c style alloc/free

these are allocated by c style mem alloc.
Thus, they should be freed with free()

Change-Id: I320fff4d5a5bce2374ace6495a9f96c3e1034cfc

4 years agocommon stroke: retype the stroke width from size_t to float 93/235193/1
Hermet Park [Tue, 2 Jun 2020 11:58:50 +0000 (20:58 +0900)]
common stroke: retype the stroke width from size_t to float

Change-Id: I812d06d2037d66408c41d50f7c1ff7ba605558bd

4 years agosw_engine: fix stroke join round result. 90/235190/1
Hermet Park [Tue, 2 Jun 2020 11:25:54 +0000 (20:25 +0900)]
sw_engine: fix stroke join round result.

a trivial reversed value was returned that
brought the inverted arc drawing...

Change-Id: I928f05b3400772a367d1653496d385354032cbad

4 years agotest: revise stroke example 83/235183/4
Hermet Park [Tue, 2 Jun 2020 11:04:44 +0000 (20:04 +0900)]
test: revise stroke example

Change-Id: I92a40e905544fd8fb41df88810eabce7429b1b7f

4 years agosw_engine: implement stroke rle part 02/235002/9
Hermet Park [Mon, 1 Jun 2020 11:27:43 +0000 (20:27 +0900)]
sw_engine: implement stroke rle part

Current stroke fails to merged shapes case...

you can test with testStroke example

Change-Id: I488af728949cba1d01b88723eb1dc4c49bac6c9b

4 years agosw_engine: implement stroke cubicto, arcto, lineto 07/234807/9
Hermet Park [Fri, 29 May 2020 02:47:55 +0000 (11:47 +0900)]
sw_engine: implement stroke cubicto, arcto, lineto

Change-Id: I59e95b1031ebfaf54e966cab334e045613ca3830

4 years agosw_engine: Fix build error (no match type) 16/234816/2
JunsuChoi [Fri, 29 May 2020 04:33:46 +0000 (13:33 +0900)]
sw_engine: Fix build error (no match type)

../src/lib/sw_engine/tvgSwStroke.cpp:282:72: error: no match for ‘operator<’ (operand types are ‘long int’ and ‘const SwPoint’)
         if (border->ptsCnt > 0 && abs(diff.x) < EPSILON && abs(diff.y) < EPSILON) return;

Change-Id: I426f8980ba718e3dc908dc32a62fb897b5b5fbbf

4 years agotest: recover sample build.
Hermet Park [Thu, 28 May 2020 11:37:25 +0000 (20:37 +0900)]
test: recover sample build.

introduced by mistake.

Change-Id: I8fd88054da1e86cace02931791a646a182ab6721

4 years agosw_engine: implment basic stroke functions. 47/234247/8
Hermet Park [Sat, 23 May 2020 11:06:40 +0000 (20:06 +0900)]
sw_engine: implment basic stroke functions.

Change-Id: Ib9203b4d133ce7ffd80b40d7ad0cac3519b5273d

4 years agoupdated AUTHORS
Hermet Park [Wed, 27 May 2020 02:03:07 +0000 (11:03 +0900)]
updated AUTHORS

Change-Id: Id756d25e475e8f8cb8379577032e5b41e772b88e

4 years agoMerge "gl_engine: gl infrastructure interfaces" into tizen
Hermet Park [Wed, 27 May 2020 02:01:26 +0000 (02:01 +0000)]
Merge "gl_engine: gl infrastructure interfaces" into tizen

4 years agogl_engine: gl infrastructure interfaces 05/233105/7
Prudhvi Raj Vasireddi [Mon, 11 May 2020 21:39:08 +0000 (17:39 -0400)]
gl_engine: gl infrastructure interfaces

Change-Id: Ie1a9d1b6632433413098282c1cfaf4cf8e1cf9b9
Signed-off-by: Prudhvi Raj Vasireddi <prudhvi.raj@samsung.com>
4 years agocommon shape: introduce stroke cap and join styles. 46/234246/1
Hermet Park [Sat, 23 May 2020 04:32:28 +0000 (13:32 +0900)]
common shape: introduce stroke cap and join styles.

+ revise the getter functions for avoiding invalid overloading.

Change-Id: Ie8b0cbe57435253d75871e864c7cd263a14d6df3

4 years agocommon paint: revise bounds interface. 51/234151/2
Hermet Park [Fri, 22 May 2020 07:30:13 +0000 (16:30 +0900)]
common paint: revise bounds interface.

we don't use the reference style for user interfaces.

Change-Id: Id70682bf8c2d8ea9ffab2ea6fb567eaa8639da60

4 years agocommon stroke: implement stroke interfaces. 46/234146/1
Hermet Park [Fri, 22 May 2020 07:18:32 +0000 (16:18 +0900)]
common stroke: implement stroke interfaces.

Change-Id: I28fe5d5df4cde6640b143e67e241c6afc9c6b1fe

4 years agocommon scene: complete scene tranfsormation feature. 18/233618/3
Hermet Park [Sun, 17 May 2020 12:33:56 +0000 (21:33 +0900)]
common scene: complete scene tranfsormation feature.

Each scene could conserve its own transformation,
the origin could be the parent Paint (if they were beloned to)

Thus, you can compose the multi-tranformed scene group which
simultenoulsly working in own spaces.

See testTransform and testSceneTransform, how they work.

Change-Id: I51deb4d66f8fcd024f8dc7a1e1af57c398a9d7fe

4 years agotest: update samples 17/233617/1
Hermet Park [Sun, 17 May 2020 11:52:58 +0000 (20:52 +0900)]
test: update samples

fix some broken test code.

Change-Id: I42b0dd8b4c599ea59e0860a40b828936dca1e54d

4 years agotest: update transform sample 16/233616/2
Hermet Park [Sun, 17 May 2020 11:34:58 +0000 (20:34 +0900)]
test: update transform sample

Change-Id: I7f1416d9e32b241e50b7e2132764cac28d590a93

4 years agocommon: support Scene Transform 14/233614/2
Hermet Park [Sun, 17 May 2020 07:50:19 +0000 (16:50 +0900)]
common: support Scene Transform

this contains testSceneTransform example

Change-Id: I460b05dc8bc4a842e26e950c800c5c35f8d3da7f

4 years agocommon shape: revise RenderTransform for Scene Transformation 12/233612/4
Hermet Park [Sun, 17 May 2020 05:54:55 +0000 (14:54 +0900)]
common shape: revise RenderTransform for Scene Transformation

This RenderTransform takes over all transform information.

Change-Id: I21b6a55de05feca56c40f3ff402d18445417463c

4 years agofix wrong flag operation.
Hermet Park [Wed, 6 May 2020 02:56:17 +0000 (11:56 +0900)]
fix wrong flag operation.

just correct mistakes.

Change-Id: I8de0fe68cd298cacf3bdc951f67657095c5fa5fe

4 years agocommon shape: introduce transformation matrix 64/232464/2
Hermet Park [Tue, 5 May 2020 16:37:50 +0000 (01:37 +0900)]
common shape: introduce transformation matrix

Paint supports translate, rotate, scale functions for transformation

The origin of these transformation is center of the paint,
thus you have to consider the center-aligned vertices if you'd like to use
these transformation functions.

This policy has been considered for scene transformation.

Change-Id: I78b63d7965faec0ec5b9a98a7776993744534b54

4 years agocommon scene: support bounds() method 59/232459/1
Hermet Park [Tue, 5 May 2020 11:38:26 +0000 (20:38 +0900)]
common scene: support bounds() method

this method returns boundary of a scene.

Change-Id: I1a32c8e034f53822008048f1d8ae7062fb72cca3

4 years agocommon scene: implement basic scene behaviors and testScene sample. 44/232444/4
Hermet Park [Tue, 5 May 2020 01:20:50 +0000 (10:20 +0900)]
common scene: implement basic scene behaviors and testScene sample.

Scene is a group(list) of paints.

This class is designed for vector data set which is prepared before canvas.
If a set of vector data is loaded from other resources such as files,
they can construct these data set using Scene.
This then can be pushed into canvas as one completed image.

Scene is supposed to be used in svg loading and storing to tvg specific data format(tvg)

Change-Id: Ie2ffebf74e79c59d99a77880630a54b6baad7eec

4 years agocommon canvas: hide engine() interface 28/232428/2
Hermet Park [Mon, 4 May 2020 12:23:42 +0000 (21:23 +0900)]
common canvas: hide engine() interface

this engine() is not necessary by users,
we can hide this by moving out CanvasImpl class.

Change-Id: Iaf47dbd3c523e96d6af0bd1fd4caa11a7fd3778a

4 years agocommon shape: refactored interfaces. 27/232427/2
Hermet Park [Mon, 4 May 2020 12:10:04 +0000 (21:10 +0900)]
common shape: refactored interfaces.

hide engine() interface of shape that's not friendly one by users.
instead canvas would access shape internal data to update/draw it.

Now Paint cannot update itself but has to request to Canvas for it.

Change-Id: Ibafd0864a65c3c33238789d1a3e06c49c4378349

4 years agotest: updated test samples. 69/232369/1
Hermet Park [Sun, 3 May 2020 06:14:01 +0000 (15:14 +0900)]
test: updated test samples.

1. added testTransform
2. replaced testShape with testMergeShapes

Change-Id: I1f7b25a1d2f62ac682f7a19e75fc3a44db7c52f0

4 years agocommon shape: revise scale/rotate approach. 66/232366/8
Hermet Park [Sat, 2 May 2020 17:02:43 +0000 (02:02 +0900)]
common shape: revise scale/rotate approach.

Come to think of it, this optimized method is not so useful,
it could just bring the user misunderstanding and
not to efficient as I expected in the most cases.

So, changed policy for transformation behaviors.
it keeps the properties as others but leaves it to the backend implementation.

Plus, this change contains the correct RenderUpdateFlag.
You can refer the flag in the backend to figure out which kinds of properites has been updated

Change-Id: Ibe0494712598a8161950b9ae2e22ac45bed1c47b

4 years agocommon shape: support scale/rotate transform 64/232364/4
Hermet Park [Sat, 2 May 2020 13:30:48 +0000 (22:30 +0900)]
common shape: support scale/rotate transform

rotate(), scale() won't be retained.
When you call reset() for the shape, these values will be reset as well.

These are working in fire & forget method,
it actually modify the path data for avoiding compuatation every frames.

Thus user needs to keep the last values to understand the final accumulated values.

Change-Id: I41f260271cdefc977eea01a778d49632440c777f

4 years agocommon: redesigned interfaces 63/232363/3
Hermet Park [Sat, 2 May 2020 09:16:45 +0000 (18:16 +0900)]
common: redesigned interfaces

PaintNode -> Paint
ShapeNode -> Shape
SceneNode -> Scene

We can keep clean and neat shorter names.

Change-Id: Ic8521d456d947985e5fbe1ba2bde06faa1f52469

4 years agocommon shape: renamed the method clear() to reset() 62/232362/2
Hermet Park [Sat, 2 May 2020 09:06:06 +0000 (18:06 +0900)]
common shape: renamed the method clear() to reset()

Also, added one more showcase how to update only necessary properties of a shape
while retaining other properties...

Change-Id: If165bc7f8147cad0437e3ca2f7c007614c256248

4 years agosw_engine: code refactoring. 61/232361/1
Hermet Park [Sat, 2 May 2020 08:44:49 +0000 (17:44 +0900)]
sw_engine: code refactoring.

renamed internal variables for better readibility.

Change-Id: I1ba7938401e8b7249c8bcc396be1ba3c109716cd

4 years agocanvas: migrate render target clear call into draw(); 60/232360/3
Hermet Park [Sat, 2 May 2020 08:28:18 +0000 (17:28 +0900)]
canvas: migrate render target clear call into draw();

Obivously, we need to clear target before drawing.

Thus canvas request to renderers to clear buffer.

the implementation is upto backend engines.

Change-Id: Ib80da7f2260b021bcfed9fa13fb91c20218f9da0

4 years agocanvas: code refactoring 59/232359/2
Hermet Park [Sat, 2 May 2020 02:14:14 +0000 (11:14 +0900)]
canvas: code refactoring

accept an extra argument in the clear() to clear paints node

and clear buffer selectively.

Change-Id: I83721e74358f546f325bb03fd1f36c7565174dd7

4 years agotest: added testUpdate 58/232358/1
Hermet Park [Sat, 2 May 2020 01:55:33 +0000 (10:55 +0900)]
test: added testUpdate

this shows a moving shape:

how to update canvas every frames.

Change-Id: I373e39757f4511d4e676f36d76e468d03b185a0c

4 years agosw_engine: support anti-aliasing 40/232340/5
Hermet Park [Fri, 1 May 2020 08:15:31 +0000 (17:15 +0900)]
sw_engine: support anti-aliasing

Change-Id: I9b79c8b4022ddf2ae4fe980f480ba3ec140750d3

4 years agosw_engine: support color blending 26/232326/4
Hermet Park [Fri, 1 May 2020 04:59:02 +0000 (13:59 +0900)]
sw_engine: support color blending

this contains testBlending as well

Change-Id: Ia0aadea804a973cfe8ec981ed1b21c1b44512ef2

4 years agotest: rename testPath to testPathCopy 24/232324/1
Hermet Park [Fri, 1 May 2020 03:46:54 +0000 (12:46 +0900)]
test: rename testPath to testPathCopy

Change-Id: I8cf2a26437a804d2cd061d61d3a99b3c6f3aa0e6

4 years agotest: updated comments
Hermet Park [Thu, 30 Apr 2020 14:40:35 +0000 (23:40 +0900)]
test: updated comments

Change-Id: I92fccb5a9de088f837a768a2f1d60ac94eac9410

4 years agocommon shape: added path commands interfaces for user convenient. 08/232308/2
Hermet Park [Thu, 30 Apr 2020 10:11:04 +0000 (19:11 +0900)]
common shape: added path commands interfaces for user convenient.

+lineTo()
+moveTo()
+cubicTo()
+close()

These interfaces might not perfect optmizied,
but you can build path commands easier than manual data set.

Change-Id: Icb934ca256d3107ca0c938d28015d767fb93355e

4 years agocommon shape: remove unnecessary log
Hermet Park [Thu, 30 Apr 2020 09:38:34 +0000 (18:38 +0900)]
common shape: remove unnecessary log

Change-Id: Ie85153afdc01270ed282d9ff87607ee1a882be31

4 years agocommon shape: support path appending 05/232305/2
Hermet Park [Thu, 30 Apr 2020 09:31:51 +0000 (18:31 +0900)]
common shape: support path appending

it's usage may require a little handy but
The path data is very low manipulated, its usage may require a little handy,
but appedingPath() is designed for performance.

Also added testPath.

Change-Id: Ifd929d48506926e3f529198c0b40ee8f922835d4

4 years agosw_engine: fix crash at merge shape test
Hermet Park [Thu, 30 Apr 2020 06:41:16 +0000 (15:41 +0900)]
sw_engine: fix crash at merge shape test

increased spare cell memory for rasterizing.

Change-Id: I391dfbfae0ef028d213c55fe1ceca023e272e676

4 years agosw_engine: case cover out of surface boundary. 85/232285/2
Hermet Park [Wed, 29 Apr 2020 15:54:41 +0000 (00:54 +0900)]
sw_engine: case cover out of surface boundary.

Also added surface boundary test code.

Change-Id: Ib4c327d12ce52d506f1b8a566ffa48e5b5b8c03e

4 years agocanvas: correct convention
Hermet Park [Sun, 26 Apr 2020 17:00:38 +0000 (02:00 +0900)]
canvas: correct convention

add missing noexcept option.

Change-Id: I14eacb0fdb2c9bd40e365bf81bb5cc0b73239ffe

4 years agoupdate gitignore file
Hermet Park [Sun, 26 Apr 2020 16:59:49 +0000 (01:59 +0900)]
update gitignore file

Change-Id: I0b245f1177e3df04ddc6f345213bbb1207d3e950

4 years agocanvas: add reserve() method. 24/231924/1
Hermet Park [Sun, 26 Apr 2020 16:52:44 +0000 (01:52 +0900)]
canvas: add reserve() method.

This allocates nodes slots in advance to avoid memory grow & copy.

it will be benefit if you know how many shapes will be used in your canvas.

Change-Id: I7d93d166c9c054078bd86593d3471a2ade3671ee

4 years agocommon: code refactoring. 23/231923/2
Hermet Park [Sun, 26 Apr 2020 16:45:52 +0000 (01:45 +0900)]
common: code refactoring.

introduce Canvas class to replace the CanvasBase.
now, SwCanvas, GlCanvas inherits this Canvas for polymorphism
and remove duplicated interfaces.

Change-Id: I65a87e3aa2289d04997930a54aeccd14f57dd73a

4 years agotest: close the window at exit button 15/231915/1
Hermet Park [Sun, 26 Apr 2020 09:47:34 +0000 (18:47 +0900)]
test: close the window at exit button

Change-Id: Idf46d7132ae97356637816e54dc6c267be7122e6

4 years agotest: add merge shapes 14/231914/2
Hermet Park [Sun, 26 Apr 2020 09:41:27 +0000 (18:41 +0900)]
test: add merge shapes

Change-Id: I2dc91d3514aed1cbb1bd3490ea5d91debeab662a

4 years agocommon shape: support ellipse 13/231913/1
Hermet Park [Sun, 26 Apr 2020 09:18:52 +0000 (18:18 +0900)]
common shape: support ellipse

Now, you can pass separate width radius and height radius in circle.

Change-Id: Ie1e2b58fbb399d8ef74d55d83ec48d8f4323f21e

4 years agocommon shape: support rounded rectangle. 07/231907/3
Hermet Park [Sun, 26 Apr 2020 06:00:29 +0000 (15:00 +0900)]
common shape: support rounded rectangle.

Also remove arcTo implementation since curveTo could covers it.

Change-Id: Icc63eca55e51622fc80b57672f308f25f2301f85

4 years agosw_engine: fix wrong comparison that brings broken shapes.
Hermet Park [Sun, 26 Apr 2020 05:57:14 +0000 (14:57 +0900)]
sw_engine: fix wrong comparison that brings broken shapes.

These implementation is still at hot coding,
we still need to improve a lot.

Change-Id: I61398bff75395ff5e692ca48f4d62243f74bed85

4 years agocommon shape: implement appendCircle body. 04/231904/6
Hermet Park [Sat, 25 Apr 2020 12:40:40 +0000 (21:40 +0900)]
common shape: implement appendCircle body.

Change-Id: Ib8507366f84532db3119f04c8d55e0d4e8206f9f

4 years agosw_engine: concrete shape rendering sequence. 70/231170/6
Hermet Park [Sun, 19 Apr 2020 04:13:27 +0000 (13:13 +0900)]
sw_engine: concrete shape rendering sequence.

Succeed first sw backend screen up!

Change-Id: I882fb1726ed1f45e92e73fbc36170e93645dfbd2

4 years agotest: update test code for the first showcase.
Hermet Park [Sun, 19 Apr 2020 03:17:48 +0000 (12:17 +0900)]
test: update test code for the first showcase.

To show the result, we use efl library.

Most linux distribution supports efl library from their package repo,
you can easily install efl from its package repo:

Ubuntu:
$ apt-get install libelementary-dev

Or, please visit efl site to install EFL libarary manually:
https://www.enlightenment.org/download

Change-Id: I696ac72e4ec7ea3258161a15b58171d74c16830d

4 years agosw_engine: tag one optimization point for future work.
Hermet Park [Sun, 19 Apr 2020 02:55:19 +0000 (11:55 +0900)]
sw_engine: tag one optimization point for future work.

Change-Id: Ib41b18c097d24636efbba633972e1c8b7f9a63ef

4 years agosw_engine: optimization++
Hermet Park [Sun, 19 Apr 2020 02:13:28 +0000 (11:13 +0900)]
sw_engine: optimization++

Adjust rle span generation size to reduce memory allocation.
This span growing is experimentally increased, undeterministic.
Thus We need too increase them every requests, if we increase their
size x 4, we can avoid a lot of memory copy in advance.

Change-Id: Idd24024204a69fa3b6857728b95aa63a3ac26c5e

4 years agocode refactoring.
Hermet Park [Sat, 18 Apr 2020 14:21:22 +0000 (23:21 +0900)]
code refactoring.

separate Renderer interfaces to RenderCommon.

Change-Id: I682b20db6cc8a058efee7dd4f519277d86306153

4 years agocode refactoring.
Hermet Park [Sat, 18 Apr 2020 14:07:15 +0000 (23:07 +0900)]
code refactoring.

revise internal class & variable names for better code readibility.

Change-Id: I7f1b4474f3129c3be04444350496485f000afd15

4 years agorename class names.
Hermet Park [Sat, 18 Apr 2020 13:59:27 +0000 (22:59 +0900)]
rename class names.

RasterMethod -> RenderMethod
SwEngine -> SwRenderer
GlEngine -> GlRenderer

Change-Id: Ic2ded698e49c4373fe21fe31fa34baca01bf43a2

4 years agosw_engine: implement line and curve raster 67/231167/6
Hermet Park [Sat, 18 Apr 2020 04:48:37 +0000 (13:48 +0900)]
sw_engine: implement line and curve raster

Change-Id: I22a77892544cd510cfe646aee60093cebb848806

4 years agoreplace backend class names.
Hermet Park [Sat, 18 Apr 2020 03:43:30 +0000 (12:43 +0900)]
replace backend class names.

SwRaster to SwEngine
GlRaster to GlEngine

Change-Id: I3cf70e168b78c64754807a62c221e13c11b95c35

4 years agoimplement rle path parts. 48/230848/5
Hermet Park [Tue, 14 Apr 2020 17:11:18 +0000 (02:11 +0900)]
implement rle path parts.

Change-Id: I7200d80320404d6e7fb722042b8f330961bee76d

4 years agoimplement rle raster. 67/230567/7
Hermet Park [Sat, 11 Apr 2020 06:23:37 +0000 (15:23 +0900)]
implement rle raster.

Change-Id: Ie21dfbf0ff1aed43bfa750eeef3b8c033a986416

4 years agoimplement shape basics sw engine. 06/229806/5
Hermet Park [Fri, 3 Apr 2020 16:14:11 +0000 (01:14 +0900)]
implement shape basics sw engine.

Change-Id: I93788f40f7c4f59bcc9ab4dff9127bcb4e6c1466

4 years agoimplement sw engine basic sequence. 95/229795/2
Hermet Park [Fri, 3 Apr 2020 07:09:09 +0000 (16:09 +0900)]
implement sw engine basic sequence.

Change-Id: Ide27c9b191088109f95e03fcd1c80ad3ecc058cd

4 years agoimplement basic interfaces 20/229520/4
Hermet Park [Wed, 1 Apr 2020 10:48:37 +0000 (19:48 +0900)]
implement basic interfaces

major functions are added for Path specification.
added backend engine infra skeleton.

Change-Id: Ia923b02649cff545fa768ab8538ad7187195826f

4 years agoUpdate sample prototypes. 35/229235/2
Hermet Park [Mon, 30 Mar 2020 11:51:26 +0000 (20:51 +0900)]
Update sample prototypes.

This is still a hard work and under the intensive settle up stage.

Change-Id: Ibfbeaabe8a51dc5edeeccf8fe75e65e60b91f703

4 years agobuild up base infra code for prototype. 15/228715/7
Hermet Park [Wed, 25 Mar 2020 04:54:29 +0000 (13:54 +0900)]
build up base infra code for prototype.

Change-Id: I117a798caf4d9fedfe5c467471dee2f0150c2630

4 years ago+ Initial draft 02/228602/7
Hermet Park [Tue, 24 Mar 2020 06:07:51 +0000 (15:07 +0900)]
+ Initial draft

Introduce project skeleton such as build envrionment and interfaces
to build up code further cooperatively.

Change-Id: Ie9ac38991f609d33637283134906d7cc3f2ac19e

4 years agoInitial empty repository master
Tizen Infrastructure [Tue, 24 Mar 2020 02:52:35 +0000 (02:52 +0000)]
Initial empty repository