CDFAM Amsterdam 2025 · Amsterdam · 9–10 July 2025

Beyond Surfaces: Applying Intrinsic Geometry Processing in Design

Abstract

While computational tools have revolutionized design, many approaches focus on explicit modeling of form. This presentation delves deeper, exploring the creative application of intrinsic geometry processing properties – characteristics inherent to a surface regardless of its embedding in space. These techniques are typically confined to mathematics or specialized engineering domains, however looking this presentation will look at their practical use in art and design.

Key concepts such as the generation and application of smooth vector fields on complex meshes (illustrated through a personal jewelry design project), the use of the cotan Laplacian for simulating surface phenomena or achieving specific smoothing effects, and the deployment of reaction-diffusion systems to generate intricate, organic patterns directly on geometry will be examined.

This talk aims to illustrate these powerful methods and demonstrate how leveraging the inherent mathematical structure of shapes can unlock novel aesthetic possibilities, sophisticated surface treatments, and approaches for design expression beyond conventional digital craft. Attendees will gain insight into applying these advanced computational techniques to enhance their own creative explorations.

Transcript

From YouTube’s automatic captions, lightly cleaned; expect some errors. Each timestamp opens the video at that moment.

Read the full transcript · 2,603 words

All right. Welcome to my talk on intrinsic geometry. I’d like to start this by thanking Dan and his team for getting us all together here for this great event. To start my talk, I’m just going to quickly contextualize sort of my position in computational design in New Balance and how computational design in New Balance worked. So, we’re a relatively small team with owner gun who’s the dire director of compet.

0:25 The rest of us have a range of backgrounds including architecture, engineering and industrial design. My background is more in art and design with a heavy focus on computational design. This sort of specialism allows us to sort of focus on a wide range of problems across the company. Specifically, my role I look at developing custom computational design tools. These can be either to make data more accessible across the company to a wider range of colleagues or developing custom custom custom design tools for the for non-mputational designers within the company.

Through this platform I used to create this I use platforms various platforms including writing custom plugins for Grasshopper and then fully fledged C++ or JavaScript web tools. Okay. So, now into intrinsic geometry. So, quickly hopefully, yeah, we’re back. Okay. So, just to contextualize what intrinsic geometry is or what I mean by that term, I just wanted to run through basically quick sort of tutorial/definition. So, to define intrinsic geometry, I’m going to define it in contrast to what what or against what it is.

1:45 It is not. So I’m sure everyone here is pretty comfortable and familiar with explicit geometry or exttrinsic geometry. So this idea that you define shapes by points within space and these points are sort of defined as a distance in each axis from the origin. This is very very powerful technique for rapidly creating shapes. However, it does have its limitations in the fact that it doesn’t know a lot about the shape, the surface beyond that.

2:18 So, what what do I mean by this? If if you were to try and create a sort of a texture or surface treatment like the one seen on the screen above, you’d often find that it’s quite hard to get the from an purely explicit method, it’s very hard hard to get the the pattern to follow the surface. However, intrinsic geometry is kind of the opposite. It doesn’t care about where the shape is in space.

2:47 It really just cares about what the shape is and what information is stored in it. So, within this regard, it’s sort of like what the shape knows about itself. We’re probably all quite familiar with normals. This is one example of intrinsic geometry. However there’s a whole sort of range of of other features including like curvature as shown in the main image on the screen. Something like heat the heat kernel signature which is a shaped signature sort of a unique marker for every shape or geodisic distances.

3:20 So distances as the shortest distance is measured along the surface rather than within 3D space which would be a sort of straight line to sort of show an example of how this can be useful in the real world. I’ve put together this. So we have this simple formula for creating a pattern on the surface. And we have two cases. So this first case is the external or the extrinsic example.

3:46 Whereby every the the sort of X values that you put into this function are defined by the Z or Y component depending on your software choice. And you end up as a result with this sort of banded stripe pattern running up the bunny. In the intrinsic one, I chose to use the geodic distance from an arbitrary point on the mesh to every verticy. Instead, you get this sort of radiating pattern.

4:17 But noticeably, this is the only thing that’s changed. Exactly the same formula, exactly the same process. It’s just whether we which what data we use. The interesting side is when we start to rotate or move this object through space. The intrinsic geometry in the intrinsic we’re using an intrinsic property that the pattern stays exactly the same and doesn’t change. Whereas the pattern morphs or moves across the surface in the extrinsic case.

4:43 This can be thought of as because when we’re working intrinsically we’re defining the pattern on the surface whereas in the exttrinsic we’re projecting. This is particularly useful in New Balance as we often deal with sort of geometry from the wild so to speak. So things like foot scans are can be can we we can’t necessarily orientate we can’t sorry we can’t guarantee that when we get the models they’re going to be in the same orientation scale or even position.

5:14 As a result, when wanting to work on something, if we can define it, when we’re wanting to process something, if we define it within the intrinsic world, we don’t have to worry about these things and we don’t have to perform expensive computational techniques like shape registration. So, very quickly, I thought this quote was particularly apt for how it feels when you start looking at the intrinsic world, intrinsic shapes.

So this idea that there’s a world of grass aware world and a grain of sand there’s a whole world of properties when you start looking intrinsically that can be used as a design tools. So for the rest of my presentation I’m just going to quickly I’m just going to go through two other intrinsic properties I think are really useful and have been useful within my work. So the first of these is smooth vector fields.

6:08 Vector fields generally aren’t inherently intrinsic. They can be entirely arbitrary. However, smooth vector fields very much are as they are defined in the tangent tangent to the surface. They’re also there’s also another aspect that sort of makes them intrinsic. And this was sort of proven by the mathemat mathematician Henry Poner Poneri I don’t know I can’t pronounce very well so sorry about that in 1885 who proved what I think is the best named mathematical theorem in the world ever the hairy ball theorem simply put this states that if you have a ball that’s covered in hair and try and comb it smooth you will it will never be fully smooth there will always be hairs sticking up at one point this idea that every shape has this hidden sort of smoothest way of moving around it is super interesting to me and I think but it’s also more than just a vaguely interesting esoteric area maths.

7:09 It has pretty established roots with things like creating flow field flow lines. Used for like texture mapping and aligning textures to sort of reduce things like seams. And also for aligning objects on top of surfaces in a smooth way so then it all flows as shown on the right hand side. So this is my a personal project I worked on a while ago. This isn’t a new balance thing.

7:40 We haven’t broken into jewelry yet, but and it’s my one and only nod to the add additive manufacturing side of CDFAM. This I was interested this was inspired by the Omri and care thing stuff and also I was interested in what was the minimal amount of components we could use to create an interesting and complex design. Excuse me. So the process for this will simply start off with two two inputs.

8:12 You have a single a curve that you’ve defined on a surface and the surface itself. You first create the smooth vector field on the surface and then also sample the curve at various points and get the tangent at that point and then propagate that across the mesh using parallel transport. After this you just have a weight to control how much those tangent tangental directions affect the original smoothest curve.

8:41 This was added so then there was a sort of design element and you weren’t just working with this pure smooth vector field. And then finally you very simply populate it random the surface randomly with points and move or advect the points through the vector fields using oiler integration in order to create these sort of dynamic and sort of interesting I think geometries. I think the important thing was that this sort of felt like the minimal thing you could do at all.

9:14 Was like providing just two pieces of geometry to create this. And also was incredibly quick. Right. So the second property I want to talk about is the kotan lelassian. So simply put the kan leasslassian is a surface operator which acts like diffusion on a surface. A bit more complex way of talking about it is that it also is a matrix, a square matrix that encodes both connectivity and curvature of our shape.

9:43 The animation you can see on the screen shows an example of this diffusion running. So if you imagine the initial state is with this like very hot this point being heated in the center of the mesh then over time as you apply the llassian to the mesh you find that it spreads out. Many people will have here will have come across this inadvertently through mesh smoothing in softwares like Blender.

10:08 But I think it’s a useful tool for design. I don’t want to get too much into math. People can talk to me about this afterwards if they want. But the notable thing about the kanlashian for my work is the fact that it’s very sparse. What I mean by this is it’s mostly filled with zeros and u as such is this is because values are calculated on edges.

10:29 And if a point two points don’t share an edge, then there’s no value there. And in a mesh, most most points aren’t connected. This is important because computers are very very efficient at dealing with my matrices and particularly sparse matrices. So, what can we do with this? When we look at I figured when thinking of an example of how to use this, I figured the obvious one was reaction diffusion.

10:57 Given the fact that I said this was a diffusion layer. As you can see, this is reaction diffusion running on a relatively heavy mesh in in sort of real time and it has user input. The user can paint chemicals onto the surface. This is a real example of how the code timer can be incredibly quick. Allowing for this real-time stuff. You might, some of you who are particularly New Balance fans might be like, well, we’ve seen New Balance use reaction diffusion before.

11:26 Which is true. We worked with Nervous System a few years ago to create a reaction diffusion tool. However, this tool ran in 2D and just created and created an image which would then be mapped up onto the surface of the mesh. There’s many benefits in this approach including it’s quite easy to implement. It runs very quick and you can get very high resolutions. However, there are also some big limitations.

11:53 So very quickly, one of the these tend to be that there’s distortion in the mesh in the in the geometry. This is because areas of the mesh get stretched when they’re flattened or they get compressed when they’re flattened. The other one is seams. This is not such a much of a problem if you’re using tileable textures, but when talking about patterns like reaction diffusion, it wouldn’t tend to be possible to tile them.

12:21 And then finally, it doesn’t react to the surface at all. It has no information about the surface. You can solve some of these problems. So, you could reduce distortion, but you’ll inevitably add more seams. So, trying to find a way that it runs purely in 3D is kind of super important. So when talking about how the shape can inform the reaction diffusion I figured I’d create an example of this.

12:43 So on the left hand side there’s an image where I’ve just run I’ve just got the shape index for each verticy. Basically the shaped index it tells me if a at that point the curvature is flat concave or convex with concave being black and convex being gold. You can’t really see the the flat area cuz it’s not very flat. And then on the right hand side you I use these values to alter how the reaction diffusion works in those depending on the value.

13:09 And as you can see different the concave areas get sort of this spotty print whereas the convex get more of a sort of like the traditional sort of maze like pattern. But this isn’t all you have oh there this isn’t like it’s not limited to reaction diffusion. You can run various other partial differential equations directly on the mesh this way. So on the left the wave equation which sort of simulates waves moving through a medium and on the right this is reaction diffusion but just not the gray scot model.

13:42 But there’s a whole world of PDS you could run. So very quickly I just figured I’d give a list of a few little resources if you’re interested in this. Lionfish you can download from free for rhino. It’s has various features including creating smooth vector fields and geodisic distances. It’s also a little plug because for myself cuz this was my plug-in. And then if you’re into the sort of coding side, I think geometry central and libig are great resources and they offer far more powerful features than I’ve managed to build yet into lime fish.

14:18 Just some takeaways. I’d say think intrinsically. Look at look into what your shape knows about itself beyond what you would initially expect. Once you do this, you might find that you’ve got sort of powerful tools for sort of making your design and controlling your designs more and sort of more sophisticated control of your designs. Smooth vector fields are fun. There’s all sorts of possibilities. They’re very quick and they can create sort of they can help massively with things like alignment on the surface in a smooth way in a natural way.

14:46 Coalian is very powerful. It can do more than just run things on. There’s whole I would look I recommend looking into it. There’s a whole world of stuff you can do with it. Also, if you combine smooth or tangental vector fields and cotton tunnel pling, you can probably run full fluid simulations on a mesh. Shape driven patterns allow the shape to drive what you put onto it.

15:09 Rather than just prescribing what should be on it. I think this can often lead to much more interesting and organic looking designs. Expand creative possibilities. Think with all of these things. I think you should hopefully be able to expand creative possibilities and explore the hidden world. I’ve gone through intrinsic geometry. I don’t think that this by any means is all. There’s whole areas of maths to geometry which are super interesting and under look at but yeah look look for the hidden stuff as I think as designers engineers and artists we should be largely trying to look for stuff that hasn’t been done rather than stuff that has been done before. Thank you. To learn more about the CDFAM computational design symposium series, to see the archives of previous presentations, and to learn about future events, visit CDFAM.com.

More from CDFAM Amsterdam 2025

Computational Design, Evolutions

Computational Design, Evolutions

Mathew Vola · ARUP

Injecting AM into shoes

Injecting AM into shoes

René Medel · Framas

Computational design and optimization of vascular stents

Computational design and optimization of vascular stents

Dario Carbonaro · Politecnico di Torino

Open Source CDFAM

Open Source CDFAM

Aaron Porterfield · F=F

Design for Viscosity, Not Gravity

Design for Viscosity, Not Gravity

Hamilton Forsythe · RLP

Manufacturing Driven Design

Manufacturing Driven Design

Rhushik Matroja · Cognitive Design Systems

Strategic Urban Foresight

Strategic Urban Foresight

Ben Dru; Julia Barashkov · Urban Futures Lab

Register for Updates and Discounts on CDFAM events.