Files
Graphite/website/other/bezier-rs-demos/src/utils/helpers.ts
T
Rob NadalandKeavon Chambers a220bfa759 Bezier-rs: Remove unused legacy drawing components and structs (#853)
* Removed unused legacy drawing components

* Removed Point abstraction from frontend code

* Code review fixes

* Helper lambdas to functions

Co-authored-by: Keavon Chambers <keavon@keavon.com>
2022-11-18 00:34:52 -08:00

28 lines
745 B
TypeScript

import { BezierCurveType, WasmBezierConstructorKey } from "@/utils/types";
export function getCurveType(numPoints: number): BezierCurveType {
switch (numPoints) {
case 2:
return BezierCurveType.Linear;
case 3:
return BezierCurveType.Quadratic;
case 4:
return BezierCurveType.Cubic;
default:
throw new Error("Invalid number of points for a bezier");
}
}
export function getConstructorKey(bezierCurveType: BezierCurveType): WasmBezierConstructorKey {
switch (bezierCurveType) {
case BezierCurveType.Linear:
return "new_linear";
case BezierCurveType.Quadratic:
return "new_quadratic";
case BezierCurveType.Cubic:
return "new_cubic";
default:
throw new Error("Invalid value for a BezierCurveType");
}
}