Hi @DanielPiker,

It would be very cool if it were possible with Kangaroo to apply different goal regarding some specific geometric characteristic.

For example, if I’m working with a torus-like form, I can get an inflated-found form with applying a `Pressure` goal and a quite *flexible* `Edges Length` goal.

But if I somehow want to stick a bit more to the original geometry, the positive double curvature areas trying to get bigger would stay in a membrane equilibrium, but the negative double curvature areas trying to get smaller would start to form some folds.

For this basic form, a simple workaround it to differentiate the input mesh and apply the *flexible* `Edges Length` goal only to the inside part of the torus.

Torus Kangaroo.gh (157.8 KB)

But if I work on more complex forms, it can soon become a difficult setup. I think It could be possible to script a `Custom Goal` to adopt this behaviour, but the tricky part is ofc the interpretation of gaussian curvature in Kangaroo. I’ve looked through some articles (like this one, this one, or this one describing how to translate gaussian curvature in a discrete mesh, but I don’t really understand how I could implement this in a `Custom Goal` component.

Would you have hints for an implementation of discrete gaussian curvature in Kangaroo ?

Thanks a lot.

Best,

Félix