UNPKG

@technobuddha/library

Version:
19 lines 1.39 kB
import { toAngle } from "./to-angle.js"; /** * Convert polar coordinates to cartesian * @param point - radius, angle in radians (zero points in +X direction). * @param options - see {@link UnitOptions} * @returns Object containing the X and Y-distance for the angle and radius. * @example * ```typescript * toCartesian({ r: 1, φ: Math.PI / 4 }); // { x: √2/2, y: √2/2 } * toCartesian({ r: 1, φ: 90 }, 'degrees'); // { x: 0, y: 1 } * ``` * @group Geometry * @category Coordinates */ export function toCartesian(point, { unit = 'radians' } = {}) { const angle = toAngle(point.φ, unit, 'radians'); return { x: point.r * Math.cos(angle), y: point.r * Math.sin(angle) }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG8tY2FydGVzaWFuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RvLWNhcnRlc2lhbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhDOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBWSxFQUFFLEVBQUUsSUFBSSxHQUFHLFNBQVMsS0FBa0IsRUFBRTtJQUM5RSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFFaEQsT0FBTyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0FBQ3hFLENBQUMifQ==