Просмотр исходного кода

perf: Simplify normalizeRadians function (#9572)

Co-authored-by: Mark Tolmacs <[email protected]>
Muhammad Khuzaima Umair 3 месяцев назад
Родитель
Сommit
7cad3645a0
1 измененных файлов с 4 добавлено и 10 удалено
  1. 4 10
      packages/math/src/angle.ts

+ 4 - 10
packages/math/src/angle.ts

@@ -8,16 +8,10 @@ import type {
   Radians,
 } from "./types";
 
-// TODO: Simplify with modulo and fix for angles beyond 4*Math.PI and - 4*Math.PI
-export const normalizeRadians = (angle: Radians): Radians => {
-  if (angle < 0) {
-    return (angle + 2 * Math.PI) as Radians;
-  }
-  if (angle >= 2 * Math.PI) {
-    return (angle - 2 * Math.PI) as Radians;
-  }
-  return angle;
-};
+export const normalizeRadians = (angle: Radians): Radians =>
+  angle < 0
+    ? (((angle % (2 * Math.PI)) + 2 * Math.PI) as Radians)
+    : ((angle % (2 * Math.PI)) as Radians);
 
 /**
  * Return the polar coordinates for the given cartesian point represented by