From ccf7a503c118dd2f95ad2fea3d33d0f3153fb55f Mon Sep 17 00:00:00 2001 From: Grant Sanderson Date: Mon, 9 Jan 2023 10:52:12 -0800 Subject: [PATCH] Add ANGLE_THRESHOLD constant --- manimlib/shaders/quadratic_bezier_stroke/geom.glsl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/manimlib/shaders/quadratic_bezier_stroke/geom.glsl b/manimlib/shaders/quadratic_bezier_stroke/geom.glsl index c51de81f..f1116b1e 100644 --- a/manimlib/shaders/quadratic_bezier_stroke/geom.glsl +++ b/manimlib/shaders/quadratic_bezier_stroke/geom.glsl @@ -42,8 +42,10 @@ const float AUTO_JOINT = 0; const float ROUND_JOINT = 1; const float BEVEL_JOINT = 2; const float MITER_JOINT = 3; + const float PI = 3.141592653; const float DISJOINT_CONST = 404.0; +const float ANGLE_THRESHOLD = 1e-3; #INSERT quadratic_bezier_geometry_functions.glsl @@ -56,7 +58,7 @@ void create_joint(float angle, vec2 unit_tan, float buff, vec2 static_c0, out vec2 changing_c0, vec2 static_c1, out vec2 changing_c1){ float shift; - if(abs(angle) < 1e-3){ + if(abs(angle) < ANGLE_THRESHOLD){ // No joint shift = 0; }else if(joint_type == MITER_JOINT){ @@ -131,7 +133,7 @@ int get_corners( void main() { if (distance(verts[0], verts[1]) == 0 && distance(verts[1], verts[2]) == 0) return; - bezier_degree = (abs(v_joint_angle[1]) < 1e-3) ? 1.0 : 2.0; + bezier_degree = (abs(v_joint_angle[1]) < ANGLE_THRESHOLD) ? 1.0 : 2.0; vec3 unit_normal = get_unit_normal(vec3[3](verts[0], verts[1], verts[2])); // Adjust stroke width based on distance from the camera