Skip to content

Commit

Permalink
Merge branch 'fractal-class-refactor'
Browse files Browse the repository at this point in the history
  • Loading branch information
blechdom committed Oct 30, 2023
2 parents e89e803 + 029522d commit bf65dd6
Showing 1 changed file with 11 additions and 10 deletions.
21 changes: 11 additions & 10 deletions src/utils/Fractalizer.ts
Original file line number Diff line number Diff line change
@@ -1,20 +1,22 @@
export default class Fractalizer {
public canvas: HTMLCanvasElement;
public context: CanvasRenderingContext2D;
public context: CanvasRenderingContext2D | null;
private paint: boolean = false;

private clickX: number[] = [];
private clickY: number[] = [];
private clickDrag: boolean[] = [];

constructor(newCanvas: HTMLCanvasElement) {
let context = newCanvas.getContext("2d");
let canvas = newCanvas;
this.canvas = canvas;
this.context = context;
this.createCanvas();
}

public createCanvas(): void {
this.context = this.canvas.getContext("2d");
// this.context = this.canvas.getContext("2d");
if (this.context) {
this.context.lineCap = 'round';
this.context.lineJoin = 'round';
Expand Down Expand Up @@ -46,17 +48,17 @@ export default class Fractalizer {
let clickDrag = this.clickDrag;
let clickY = this.clickY;
for (let i = 0; i < clickX.length; ++i) {
context.beginPath();
context?.beginPath();
if (clickDrag[i] && i) {
context.moveTo(clickX[i - 1], clickY[i - 1]);
context?.moveTo(clickX[i - 1], clickY[i - 1]);
} else {
context.moveTo(clickX[i] - 1, clickY[i]);
context?.moveTo(clickX[i] - 1, clickY[i]);
}

context.lineTo(clickX[i], clickY[i]);
context.stroke();
context?.lineTo(clickX[i], clickY[i]);
context?.stroke();
}
context.closePath();
context?.closePath();
}

private addClick(x: number, y: number, dragging: boolean) {
Expand All @@ -66,8 +68,7 @@ export default class Fractalizer {
}

private clearCanvas() {
this.context
.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.context?.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.clickX = [];
this.clickY = [];
this.clickDrag = [];
Expand Down

0 comments on commit bf65dd6

Please sign in to comment.