| /* | |
| * Copyright 2022 Rive | |
| */ | |
| #include "rive/renderer/rive_render_factory.hpp" | |
| #include "gradient.hpp" | |
| #include "rive_render_paint.hpp" | |
| #include "rive_render_path.hpp" | |
| #include "rive/renderer/rive_renderer.hpp" | |
| namespace rive | |
| { | |
| rcp<RenderShader> RiveRenderFactory::makeLinearGradient( | |
| float sx, | |
| float sy, | |
| float ex, | |
| float ey, | |
| const ColorInt colors[], // [count] | |
| const float stops[], // [count] | |
| size_t count) | |
| { | |
| return gpu::Gradient::MakeLinear(sx, sy, ex, ey, colors, stops, count); | |
| } | |
| rcp<RenderShader> RiveRenderFactory::makeRadialGradient( | |
| float cx, | |
| float cy, | |
| float radius, | |
| const ColorInt colors[], // [count] | |
| const float stops[], // [count] | |
| size_t count) | |
| { | |
| return gpu::Gradient::MakeRadial(cx, cy, radius, colors, stops, count); | |
| } | |
| rcp<RenderPath> RiveRenderFactory::makeRenderPath(RawPath& rawPath, | |
| FillRule fillRule) | |
| { | |
| return make_rcp<RiveRenderPath>(fillRule, rawPath); | |
| } | |
| rcp<RenderPath> RiveRenderFactory::makeEmptyRenderPath() | |
| { | |
| return make_rcp<RiveRenderPath>(); | |
| } | |
| rcp<RenderPaint> RiveRenderFactory::makeRenderPaint() | |
| { | |
| return make_rcp<RiveRenderPaint>(); | |
| } | |
| } // namespace rive |