Programmer for 25 years. Only time I have ever used math more complicated than simple multiply/divide was… actually never.
That one time when I copy/pasted a formula for linear interpolation, was still just multiplication and division. And I still have no idea how it works.
I’ve even done OpenGL and graphics programming and still haven’t needed any algebra/trig/etc, although I don’t do complex 3D rendering or physics or anything like that.
I wish I knew how to do cool programming stuff like draw circles and waves and stuff though, but I’ve never seen a tutorial that didn’t go WAY over my head immediately.
Drawing a circle is actually pretty simple! Say we want to draw one with:
radius r=5
center C=(0,0)
1000 points
The logic would be:
for (let i = 0; i < 1000; i++) {
// full circle is made up of 2 * PI angles -> calculate current loop angleconst angle = (2 * Math.PI) * (i / 1000)
const x = r * Math.cos(angle)
const y = r * Math.sin(angle)
drawPixel(x, y)
}
The circle starts being drawn at (5, 0). As y approaches -5, x gets smaller until it hits 0. Then x approaches -5 and y approaches 0, and so on.
It’s just meant to be a simple example. If someone says other tutorials quickly go over their head, it’s not a good idea to introduce unnecessary concepts to start with.
There is at least one smbc for everything
Case in point, there are two!
Sauce
Never really understood people who say they don’t use algebra. I use it very regularly.
Programmer for 25 years. Only time I have ever used math more complicated than simple multiply/divide was… actually never.
That one time when I copy/pasted a formula for linear interpolation, was still just multiplication and division. And I still have no idea how it works.
I’ve even done OpenGL and graphics programming and still haven’t needed any algebra/trig/etc, although I don’t do complex 3D rendering or physics or anything like that.
I wish I knew how to do cool programming stuff like draw circles and waves and stuff though, but I’ve never seen a tutorial that didn’t go WAY over my head immediately.
Drawing a circle is actually pretty simple! Say we want to draw one with:
The logic would be:
for (let i = 0; i < 1000; i++) { // full circle is made up of 2 * PI angles -> calculate current loop angle const angle = (2 * Math.PI) * (i / 1000) const x = r * Math.cos(angle) const y = r * Math.sin(angle) drawPixel(x, y) }
The circle starts being drawn at (5, 0). As y approaches -5, x gets smaller until it hits 0. Then x approaches -5 and y approaches 0, and so on.
That won’t work well ;-) it will draw 1000 pixels whatever the circumference!
A good start though, for sure.
It’s just meant to be a simple example. If someone says other tutorials quickly go over their head, it’s not a good idea to introduce unnecessary concepts to start with.