creator/app/src/drawers/ellipse.ts
enricobuehler 8523e44029 add staggered text
rename box to rect
refactor rust
2023-05-23 10:27:45 +02:00

29 lines
710 B
TypeScript

import { convertToFloat } from "@tempblade/common";
import { Canvas, CanvasKit } from "canvaskit-wasm";
import { EllipseEntity } from "primitives/Entities";
import { z } from "zod";
import { buildPaintStyle } from "./paint";
export default function drawEllipse(
CanvasKit: CanvasKit,
canvas: Canvas,
entity: z.infer<typeof EllipseEntity>
) {
const paint = new CanvasKit.Paint();
buildPaintStyle(CanvasKit, paint, entity.paint);
const mappedPosition = entity.position.map(
(val, index) => val - entity.radius[index] * 0.5
);
const rect = CanvasKit.XYWHRect(
mappedPosition[0],
mappedPosition[1],
entity.radius[0],
entity.radius[1]
);
canvas.drawOval(rect, paint);
}