@thi.ng/geom
Version:
Functional, polymorphic API for 2D geometry types & SVG generation
44 lines • 1.15 kB
TypeScript
import type { MultiFn2 } from "@thi.ng/defmulti";
import type { IShape2 } from "./api.js";
import type { Arc } from "./api/arc.js";
import type { Ellipse } from "./api/ellipse.js";
import type { Path } from "./api/path.js";
import type { Polygon } from "./api/polygon.js";
import type { Rect } from "./api/rect.js";
export type RotateFn = {
(shape: Arc, theta: number): Path;
(shape: Ellipse, theta: number): Path;
(shape: Rect, theta: number): Polygon;
<T extends IShape2>(shape: T, theta: number): T;
} & MultiFn2<IShape2, number, IShape2>;
/**
* Rotates given 2D shape by `theta` (in radians).
*
* @remarks
* Currently implemented for:
*
* - {@link Arc}
* - {@link BPatch}
* - {@link Circle}
* - {@link ComplexPolygon}
* - {@link Cubic}
* - {@link Ellipse}
* - {@link Extra}
* - {@link Group}
* - {@link Line}
* - {@link Path}
* - {@link Points}
* - {@link Polygon}
* - {@link Polyline}
* - {@link Quad}
* - {@link Quadratic}
* - {@link Ray}
* - {@link Rect}
* - {@link Text}
* - {@link Triangle}
*
* @param shape
* @param theta
*/
export declare const rotate: RotateFn;
//# sourceMappingURL=rotate.d.ts.map