SourceTermAnalysisSystem_vue/node_modules/@antv/x6-geometry/src/angle.ts
2026-05-15 10:22:44 +08:00

27 lines
658 B
TypeScript

export namespace Angle {
/**
* Converts radian angle to degree angle.
* @param rad The radians to convert.
*/
export function toDeg(rad: number) {
return ((180 * rad) / Math.PI) % 360
}
/**
* Converts degree angle to radian angle.
* @param deg The degree angle to convert.
* @param over360
*/
export const toRad = function (deg: number, over360 = false) {
const d = over360 ? deg : deg % 360
return (d * Math.PI) / 180
}
/**
* Returns the angle in degrees and clamps its value between `0` and `360`.
*/
export function normalize(angle: number) {
return (angle % 360) + (angle < 0 ? 360 : 0)
}
}