Commit graph

21 commits

Author SHA1 Message Date
Hermet Park
c923d881aa test: added testUpdate
this shows a moving shape:

how to update canvas every frames.

Change-Id: I373e39757f4511d4e676f36d76e468d03b185a0c
2020-05-02 10:55:33 +09:00
Hermet Park
74d2f275e7 sw_engine: support color blending
this contains testBlending as well

Change-Id: Ia0aadea804a973cfe8ec981ed1b21c1b44512ef2
2020-05-01 14:45:16 +09:00
Hermet Park
2f174560eb test: rename testPath to testPathCopy
Change-Id: I8cf2a26437a804d2cd061d61d3a99b3c6f3aa0e6
2020-05-01 12:46:54 +09:00
Hermet Park
14efeb4f0b test: updated comments
Change-Id: I92fccb5a9de088f837a768a2f1d60ac94eac9410
2020-04-30 23:40:35 +09:00
Hermet Park
700a44c623 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
2020-04-30 23:36:28 +09:00
Hermet Park
9b8ab42e54 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
2020-04-30 18:33:01 +09:00
Hermet Park
e0ecd680a0 sw_engine: fix crash at merge shape test
increased spare cell memory for rasterizing.

Change-Id: I391dfbfae0ef028d213c55fe1ceca023e272e676
2020-04-30 15:43:13 +09:00
Hermet Park
46ba3352a8 sw_engine: case cover out of surface boundary.
Also added surface boundary test code.

Change-Id: Ib4c327d12ce52d506f1b8a566ffa48e5b5b8c03e
2020-04-30 15:19:46 +09:00
Hermet Park
809dfd8644 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
2020-04-27 01:52:44 +09:00
Hermet Park
6be53b0779 test: close the window at exit button
Change-Id: Idf46d7132ae97356637816e54dc6c267be7122e6
2020-04-26 18:47:34 +09:00
Hermet Park
dc87a59d53 test: add merge shapes
Change-Id: I2dc91d3514aed1cbb1bd3490ea5d91debeab662a
2020-04-26 18:44:41 +09:00
Hermet Park
1e96cc2b10 common shape: support ellipse
Now, you can pass separate width radius and height radius in circle.

Change-Id: Ie1e2b58fbb399d8ef74d55d83ec48d8f4323f21e
2020-04-26 18:18:52 +09:00
Hermet Park
e655471e09 common shape: support rounded rectangle.
Also remove arcTo implementation since curveTo could covers it.

Change-Id: Icc63eca55e51622fc80b57672f308f25f2301f85
2020-04-26 16:18:25 +09:00
Hermet Park
fe9c2c9162 common shape: implement appendCircle body.
Change-Id: Ib8507366f84532db3119f04c8d55e0d4e8206f9f
2020-04-26 11:38:06 +09:00
Hermet Park
37d34eeb19 sw_engine: concrete shape rendering sequence.
Succeed first sw backend screen up!

Change-Id: I882fb1726ed1f45e92e73fbc36170e93645dfbd2
2020-04-19 18:28:01 +09:00
Hermet Park
69f2fb4965 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
2020-04-19 12:17:48 +09:00
Hermet Park
2a39617527 implement rle path parts.
Change-Id: I7200d80320404d6e7fb722042b8f330961bee76d
2020-04-15 21:55:53 +09:00
Hermet Park
02b2d812e4 implement basic interfaces
major functions are added for Path specification.
added backend engine infra skeleton.

Change-Id: Ia923b02649cff545fa768ab8538ad7187195826f
2020-04-02 17:24:38 +09:00
Hermet Park
bf05660666 Update sample prototypes.
This is still a hard work and under the intensive settle up stage.

Change-Id: Ibfbeaabe8a51dc5edeeccf8fe75e65e60b91f703
2020-03-30 20:51:44 +09:00
Hermet Park
df94be1d9d build up base infra code for prototype.
Change-Id: I117a798caf4d9fedfe5c467471dee2f0150c2630
2020-03-30 16:36:13 +09:00
Hermet Park
c20274aaf8 + Initial draft
Introduce project skeleton such as build envrionment and interfaces
to build up code further cooperatively.

Change-Id: Ie9ac38991f609d33637283134906d7cc3f2ac19e
2020-03-25 11:53:03 +09:00