From: Jean-Philippe Bruyère Date: Sat, 20 Nov 2021 06:46:37 +0000 (+0100) Subject: _get_arc_steps = asinf (1.0f / radius) * 1.5f * sqrtf(radius) X-Git-Tag: v0.2.0~56 X-Git-Url: https://git.osiis.dedyn.io/?a=commitdiff_plain;h=7b1d631f64770b0a67cf9f3636c0fa78aa771ed9;p=jp%2Fvkvg.git _get_arc_steps = asinf (1.0f / radius) * 1.5f * sqrtf(radius) --- diff --git a/src/vkvg_context_internal.c b/src/vkvg_context_internal.c index e182a24..b813944 100644 --- a/src/vkvg_context_internal.c +++ b/src/vkvg_context_internal.c @@ -223,9 +223,9 @@ float _normalizeAngle(float a) return res; } float _get_arc_step (VkvgContext ctx, float radius) { - float dx = 1, dy = 1; - vkvg_matrix_transform_distance (&ctx->pushConsts.mat, &dx, &dy); - return M_PIF/sqrtf(radius)*0.35f/fmaxf(dx,dy); + if (radius < 3.0f) + return asinf (1.0f / radius) * 0.25f; + return asinf (1.0f / radius) * 1.5f * sqrtf(radius); } void _create_gradient_buff (VkvgContext ctx){ vkvg_buffer_create (ctx->pSurf->dev,