What's the nicest way to draw a shape with many "holes"?

We can use the principle of repulsion to explore this question: each point of the shape behaves like a charged particle, trying to repel all others. Surface tension prevents everything from shooting off to infinity. 1/n
For millennia people have been drawn to the question: what are the "nicest" possible shapes that exist?

This is really a basic question about nature: these shapes exist outside space and time; the same shapes can be discovered by civilizations anywhere in the universe. 2/n
"Nicest" could mean the most symmetric—for instance, the ancient Greeks discovered there were five so-called Platonic solids where every face and every vertex looks the same: the tetrahedron, cube, octahedron, dodecahedron, and icosahedron. 3/n
Or, "nicest" could mean smoothest.

For instance, according to one criterion (minimum total bending) the smoothest shape with no holes is a round sphere; the smoothest shape with one hole is a perfectly round donut with a certain ratio of inner/outer radii ("Clifford torus"). 4/n
In fact, this principle of least bending even shows up inside the human body. For instance, the shape of red blood cells is extremely well-predicted by minimizing bending among all shapes with a given volume (due to fluid pressure) and surface area (due to surface tension). 5/n
However, shapes that minimize total bending—formally known as "Willmore energy"—don't look as nice if you start adding more holes.

The conjectured minimizers, called "Lawson surfaces," feel pretty asymmetrical compared to how one might imagine an "ideal" shape with holes. 6/n
The reason is that Willmore energy doesn't look for shapes that are nice & symmetrical in the ordinary 3-dimensional space where we live (Euclidean space).

Instead, it considers symmetry relative to the "3-sphere": the set of all points unit distance from the origin in 4D. 7/n
So to get nicer shapes with holes, we can take a different approach.

We look for shapes that minimize the so-called "tangent-point energy," which tries to keep all pairs of points far away from each other—much like the repulsive Coulomb forces exerted by electrons. 8/n
Of course, in the absence of any other forces, two electrons will just shoot off to infinity.

Likewise, to keep our shape from exploding, we need additional forces to hold it together—like the force of surface tension which gives water droplets their nice round shapes. 9/n
Starting with several donuts glued together along a straight line, we then make small changes that gradually reduce tangent-point energy. The final shapes tend to look a lot more "natural" than the Lawson surfaces—often exhibiting the same symmetries as the Platonic solids! 10/n
These shapes were found using the algorithm described in

Yu, Brakensiek, Schumacher, Crane
"Repulsive Surfaces"
cs.cmu.edu/~kmcrane/Proje…

We're hopeful these tools (like KnotPlot & SurfaceEvolver) will help people find more beautiful and natural shapes in the years to come! n/n
If you're interested in finding out more about the technical details behind this movie, you can also check out the talk here:

There's also a higher-quality version of the movie here:

Enjoy!

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Keenan Crane

Keenan Crane Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @keenanisalive

8 Dec
Suppose you have a pair of handcuffs linked together. Can you pull them apart without unlocking or breaking them, or letting them pass through themselves? With real handcuffs, definitely not! But if they're made of stretchy rubber, it turns out to be possible—as shown here. 1/9
This motion provides a surprising example of what is known in mathematics as an "ambient isotopy" of two surfaces: a continuous motion where the surface is not ripped, cut, pinched, or allowed to pass through itself. 2/9
A more classic example is the "unknot problem": given a loop of string, can it be untangled into a circle without cutting? Even this simple question turns out to be very hard to answer in general. And only gets harder when you start thinking about surfaces rather than curves. 3/9
Read 10 tweets
7 Dec
Excited to share *two* papers appearing at #SIGGRAPHAsia2021, on "Repulsive Curves" and "Repulsive Surfaces."

Tons of graphics algorithms find nice distributions of points by minimizing a "repulsive" energy.

But what if you need to nicely distribute curves or surfaces? (1/14)
We take a deep dive into this question, building fast algorithms for optimizing the recently developed "tangent-point energy" from surface theory.

Talk video:

Repulsive Curves: cs.cmu.edu/~kmcrane/Proje…
Repulsive Surfaces: cs.cmu.edu/~kmcrane/Proje…

(2/14)
The basic problem? Given a collection of points, curves, or surfaces in space, find a well-distributed arrangement that avoids (self-)intersection.

To make things interesting, you also usually have some constraints—like: the geometry is contained inside a bunny!
(3/14)
Read 14 tweets
2 Aug
Think knots are easy to untangle?

As a companion to our recent paper on "Repulsive Curves," we're releasing a dataset of hundreds of *extremely* difficult knots: cs.cmu.edu/~kmcrane/Proje…

In each case, a knotted & canonical embedding is given. Can you recover the right knot? 1/5
We've already tried a few dozen methods—from classics like "KnotPlot", to baselines like L-BFGS, to bleeding-edge algorithms like AQP, BCQN, etc.

For many knots, most these methods get "stuck," and don't reach a nice embedding.

Even our method doesn't hit 100%—but is close! 2/5
But this is a pretty unique problem relative to "standard" energies in geometry processing

For one thing, it considers all O(n²) pairs of points rather than just neighbors in a mesh

For another, you can't just *avoid* collisions—you have to maximize your distance from them. 3/5
Read 6 tweets
2 Aug
New paper with Chris Yu & Henrik Schumacher: cs.cmu.edu/~kmcrane/Proje…

We model 2D & 3D curves while avoiding self-intersection—a natural requirement in graphics, simulation & visualization.

Our scheme also does an *amazingly* good job of unknotting highly-tangled curves!

[1/n]
[2/n] Here's a short movie that summarizes some of what we do:

And if you don't care *how* it works, here's the code!
github.com/icethrush/repu…

Otherwise, read on to find out more!
[3/n] A classic problem is deciding if a curve is an "unknot": can it be untangled into a circle, without passing through itself?

We don't solve this problem conclusively—but can use untangling as a stress test for our method

Typically, we can untangle crazy knots, crazy fast!
Read 43 tweets
28 Jul
A powerful idea in math (that nobody teaches you directly…):

If you don't know how to map between two "things," you can often map each of them to the same "canonical thing."

Then you can just go from the 1st thing to the canonical thing, and back to the 2nd thing. [1/n] Image
This idea shows up all over the place.

I'll give a few examples—but would love to hear about more of them, that show up your neck of the woods.
🌴🌳🌲🐇

[2/n]
One basic question is: how do I express a change of basis between two arbitrary bases (u1,u2) and (v1,v2)?

Answer: the matrix U with columns u1, u2 takes you from the standard basis e1=(1,0), e2=(0,1) to the basis u1,u2. (Just try hitting e1 and e2 with U!)

Then compose…[3/n] Image
Read 6 tweets
14 Jun
Uniform edge lengths are a reasonable proxy for mesh quality, since equilateral triangles have good angles. But if you have more specific criteria, you can usually do better. "Hodge-Optimized Triangulations" provides a nice discussion of this perspective: geometry.caltech.edu/pubs/MMdGD11.p…
A popular approach in graphics is something like Botsch & Kobbelt, "Remeshing for Multiresolution Modeling" (Sec. 4): graphics.rwth-aachen.de/media/papers/r…

Basic idea: iteratively move vertices to equalize areas, split long edges, collapse short edges, & flip edges to improve vertex valence.
In this class of algorithms, I really like Chen & Holst, "Efficient mesh optimization schemes based on Optimal Delaunay Triangulations": math.uci.edu/~chenlong/Pape…

Here there's a clear notion of optimality, & an efficient preconditioner. For surfaces: restrict to tangential motions
Read 12 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(