Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

197
Views
Creating a class out of small 10print program

I wanted to take this little 10print program (credit to codingtrain) and turn into a class but ran into this weird problem: the OOP version is not working, while the non OOP is going all the way down.

It's the same code so why is it not working, this is a real mystery to me? All of the variables are encapsulated in the class and refrenced with the "this." keyword so why it is acting differently?

let xx = 0;
let yy = 0;
let spacing = 20;

function setup() {
  createCanvas(400, 400);
  background(0);
}

function draw() {
  stroke(255);
  if (random(1) < 0.5) {
    fill(2, 24, 242)
    line(xx, yy, xx + spacing, yy + spacing);
  } else {
    line(xx, yy + spacing, xx + spacing, yy);
  }
  xx = xx + spacing;
  if (xx > width) {
    xx = 0;
    yy = yy + spacing;
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/p5.js"></script>

let tenPrint;

function setup() {
  createCanvas(500, 500);
  tenPrint = new Tenprint();
}

function draw() {
  tenPrint.drawit();
}

class Tenprint {
  constructor() {
    this.xx = 0;
    this.yy = 0;
    this.spacing = 20;
  }
  drawit() {
    stroke(55);
    if (random(1) < 0.5) {
      fill(2, 24, 242)
      line(this.xx, this.yy, this.xx + this.spacing, this.yy + this.spacing);
    } else {
      line(this.xx, this.yy + this.spacing, this.xx + this.spacing, this.yy);
    }
    this.xx = this.xx + this.spacing;
    if (this.xx > this.width) {
      this.xx = 0;
      this.yy = this.yy + this.spacing;
    }
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/p5.js"></script>

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!