The Rope Was Hiding in the Arc
Situation
Enning was building a 3D pulley system in p5.js WEBGL. The table was there. The wheel was there. But how could she model the rope?
She first thought about using a cylinder. That sounded reasonable β until she encountered the part of the rope that wrapped around the wheel. A straight cylinder couldn't simply bend around a quarter-circle.
So we started asking a different question.
βIf we make a line thicker, do we get a thicker 3D line, or just a wider band?β
βA band,β Enning guessed.
βLet's give it a try. Make a circle first.β
Turning Point
The circle showed promise.
We tried an arc covering an angle of Ο/2 β a quarter-circle. Then we used noFill() so that only the arc's outline remained.
Suddenly, the curve could represent exactly the part of the rope that wrapped around the wheel.
But the first attempt wasn't enough. The arc needed to belong to the pulley, not float independently in the scene.
Emergence
In the next class, Enning moved the center of the arc to the center of the wheel's axis.
She adjusted its position and angles, connecting the abstract curve to the actual geometry of the pulley.
arc(
wheelOffsetX,
wheelOffsetY,
50 * 2,
50 * 2,
PI / 2 + PI,
PI + PI
);
The numbers were no longer arbitrary drawing instructions.
The center coordinates positioned the arc relative to the wheel. The diameter determined its size. The angles selected the quarter-circle she needed.
A small arc had become part of a larger mechanical model.
Learning
Enning's experiment touched several important ideas:
Representation: A physical rope does not have to begin as a complicated 3D object. A curve can capture the essential shape of the rope's path.
Geometry: A quarter-circle is an angular interval of Ο/2 radians.
Coordinate systems: Objects become easier to align when their positions are defined relative to shared geometric references.
Iterative modeling: Instead of solving the entire pulley at once, Enning tested a circle, then an arc, then its position and orientation.
The important discovery wasn't a clever line of code. It was learning how to turn a physical problem into a sequence of experiments.
A Door to More Questions
What does it mean to give a line thickness in three dimensions? How can a simple curve help us model a complicated physical object? And when several parts must fit together, how do we describe their positions so that they move as one coherent system?
Enning didn't need to answer all these questions at once.
She had a pulley to build, and the next piece of the puzzle was already taking shape.