Last modified: 2025-03-30 22:36:26
< 2025-03-29 2025-03-31 >Comparing this to some other flywheel car toys she has, I actually think it would be better off with a higher gear ratio and less weight on the flywheel.
So the plan is to put the old gears back on, but remove most of the bolts from the flywheel.
Update: no, it's worse.
I think there is too much friction in the geartrain. Maybe I ought to try again with 1 less gear in the train (so 2 stages of reduction instead of 3), and either soak the bearings in alcohol to get the grease out, or use 2mm pivot steel in plain bearings.
Keenan Crane Discrete Differential Geometry course
I've started watching https://www.youtube.com/watch?v=8JCR6z3GLVI&list=PL9_jI1bdZmz0hIrNCMQW1YmZysAiIYSSS&index=2
At about 31m30s in lecture 1, we get the definition of the curvature of a curve as the dot product of the normal of the curve and the second derivative.
Isoform's edge detection is based on finding a large second derivative. That corresponds to regions of high curvature.
The first thought that occurred is that I should actually be looking for a large third derivative, i.e. regions where the rate of change of curvature is large.
And the second thing is: why does he take the dot product of the normal with the second derivative, instead of just the length of the second derivative?
Apparently the reason is that it lets you "retain the information" of whether it is bending towards the left or the right, and not just the tightness.
Could be useful for distinguishing between "inside corner" edges and "outside corner" edges? Maybe?
Annoyingly, my edge detection wants to highlight edges that have 0 size, which means I really need to ask "is there a high curvature anywhere within a 3-pixel screen-space radius?" or something along those lines.
Or, really, a high rate of change of curvature.
Automatic differentiation in Peptide
The way to do this is to have each node also be able to return its first derivative.
So alongside evaluate()
, we add derivative()
or something,
that returns a Peptide expression for the first derivative. And then
for free we can do that multiple times to get the nth derivative.