| 
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -205,7 +205,7 @@ void DrawCircle(int centerX, int centerY, float radius, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Draw a piece of a circle | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawCircleSector(Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawCircleSector(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (radius <= 0.0f) radius = 0.1f;  // Avoid div by zero | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -213,7 +213,7 @@ void DrawCircleSector(Vector2 center, float radius, int startAngle, int endAngle | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (endAngle < startAngle) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        // Swap values | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        int tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        startAngle = endAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endAngle = tmp; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -227,8 +227,8 @@ void DrawCircleSector(Vector2 center, float radius, int startAngle, int endAngle | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if (segments <= 0) segments = 4; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (kt">float)(endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = p">(float)startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#if defined(SUPPORT_QUADS_DRAW_MODE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (rlCheckBufferLimit(4*segments/2)) rlglDraw(); | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -294,7 +294,7 @@ void DrawCircleSector(Vector2 center, float radius, int startAngle, int endAngle | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawCircleSectorLines(Vector2 center, float radius, int startAngle, int endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawCircleSectorLines(Vector2 center, float radius, float startAngle, float endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (radius <= 0.0f) radius = 0.1f;  // Avoid div by zero issue | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -302,7 +302,7 @@ void DrawCircleSectorLines(Vector2 center, float radius, int startAngle, int end | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (endAngle < startAngle) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        // Swap values | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        int tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        startAngle = endAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endAngle = tmp; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -316,13 +316,13 @@ void DrawCircleSectorLines(Vector2 center, float radius, int startAngle, int end | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        if (segments <= 0) segments = 4; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (kt">float)(endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = p">(float)startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    // Hide the cap lines when the circle is full | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    bool showCapLines = true; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    int limit = 2*(segments + 2); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if ((endAngle - startAngle)%360 == 0) { limit = 2*segments; showCapLines = false; } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if ((kt">int)(endAngle - startAngle)%360 == 0) { limit = 2*segments; showCapLines = false; } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (rlCheckBufferLimit(limit)) rlglDraw(); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -427,7 +427,7 @@ void DrawEllipseLines(int centerX, int centerY, float radiusH, float radiusV, Co | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    rlEnd(); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawRing(Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawRing(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (startAngle == endAngle) return; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -445,7 +445,7 @@ void DrawRing(Vector2 center, float innerRadius, float outerRadius, int startAng | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (endAngle < startAngle) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        // Swap values | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        int tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        startAngle = endAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endAngle = tmp; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -466,8 +466,8 @@ void DrawRing(Vector2 center, float innerRadius, float outerRadius, int startAng | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        return; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (kt">float)(endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = p">(float)startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#if defined(SUPPORT_QUADS_DRAW_MODE) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (rlCheckBufferLimit(4*segments)) rlglDraw(); | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -518,7 +518,7 @@ void DrawRing(Vector2 center, float innerRadius, float outerRadius, int startAng | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			#endif | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, int startAngle, int endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, float startAngle, float endAngle, int segments, Color color) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (startAngle == endAngle) return; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -536,7 +536,7 @@ void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, int sta | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (endAngle < startAngle) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    { | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        // Swap values | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        int tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        float tmp = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        startAngle = endAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        endAngle = tmp; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
	
		
			
				| 
				
				
				
					
						
					
				
				 | 
			
			 | 
			
			@ -556,12 +556,12 @@ void DrawRingLines(Vector2 center, float innerRadius, float outerRadius, int sta | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			        return; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (kt">float)(endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = p">(float)startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float stepLength = (endAngle - startAngle)/(float)segments; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    float angle = startAngle; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    bool showCapLines = true; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    int limit = 4*(segments + 1); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if ((endAngle - startAngle)%360 == 0) { limit = 4*segments; showCapLines = false; } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if ((kt">int)(endAngle - startAngle)%360 == 0) { limit = 4*segments; showCapLines = false; } | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    if (rlCheckBufferLimit(limit)) rlglDraw(); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |