CanvasRenderer: Add Gradient, LinearGradient, RadialGradient classes 17/261217/15
authorJunsuChoi <jsuya.choi@samsung.com>
Tue, 13 Jul 2021 06:12:31 +0000 (15:12 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Fri, 6 Aug 2021 06:49:05 +0000 (15:49 +0900)
Add Gradient, LinearGradient, and RadialGradient classes that
implement Linear and Radial Gradient features.
Each Gradient can be applied to Fill and Stroke of Shape after
setting Bounds and ColorStop suitable for style.

ex)
//Radial Gradient with Fill color
Dali::CanvasRenderer::RadialGradient radial = Dali::CanvasRenderer::RadialGradient::New();
Dali::Vector<Dali::CanvasRenderer::Gradient::ColorStop> stops;
stops.PushBack( {0.0f, Vector4(1.0f, 0.0f, 1.0f, 1.0f)} );
stops.PushBack( {1.0f, Vector4(0.5f, 1.0f, 0.0f, 1.0f)} );

radial.SetBounds(Vector2(110, 100), 50);
radial.SetColorStops(stops);
shape.SetFillGradient(radial);

//Linear Gradient with Stroke color
Dali::CanvasRenderer::LinearGradient linear = Dali::CanvasRenderer::LinearGradient::New();
Dali::Vector<Dali::CanvasRenderer::Gradient::ColorStop> stops;
stops.PushBack( {0.0f, Vector4(1.0f, 0.0f, 1.0f, 1.0f)} );
stops.PushBack( {1.0f, Vector4(0.5f, 1.0f, 0.0f, 1.0f)} );

linear.SetBounds(Vector2(10, 10), Vector2(100, 100));
linear.SetColorStops(stops);
shape.SetStrokeGradient(linear);

Change-Id: I747614bf1c6bcd59f30a74a23c4001cfdfe19d1a


No differences found