USE OFFSET

This commit is contained in:
Schluffe
2026-04-05 11:39:53 +02:00
parent f574804f68
commit f9b7e16376
11 changed files with 179 additions and 133 deletions
+7 -7
View File
@@ -1,13 +1,9 @@
import type { Vector } from "#/engine/Vector.ts";
export type Circle = {
position: Vector;
radius: number;
};
export function createCircle(position: Vector, radius: number): Circle {
export function createCircle(radius: number): Circle {
return {
position,
radius,
};
}
@@ -15,6 +11,8 @@ export function createCircle(position: Vector, radius: number): Circle {
export function strokeCircle(
ctx: CanvasRenderingContext2D,
circle: Circle,
x: number,
y: number,
color: string = "#fff",
alpha: number = 1.0,
lineWidth: number = 1,
@@ -24,7 +22,7 @@ export function strokeCircle(
ctx.globalAlpha = alpha;
ctx.lineWidth = lineWidth;
ctx.beginPath();
ctx.arc(circle.position.x, circle.position.y, circle.radius, 0, 2 * Math.PI);
ctx.arc(x, y, circle.radius, 0, 2 * Math.PI);
ctx.stroke();
ctx.restore();
}
@@ -32,6 +30,8 @@ export function strokeCircle(
export function fillCircle(
ctx: CanvasRenderingContext2D,
circle: Circle,
x: number,
y: number,
color: string = "#fff",
alpha: number = 1.0,
): void {
@@ -39,7 +39,7 @@ export function fillCircle(
ctx.fillStyle = color;
ctx.globalAlpha = alpha;
ctx.beginPath();
ctx.arc(circle.position.x, circle.position.y, circle.radius, 0, 2 * Math.PI);
ctx.arc(x, y, circle.radius, 0, 2 * Math.PI);
ctx.fill();
ctx.restore();
}