I have a 3D triangular mesh representing cortical surface of a brain. I also have one vertex of interest. I would like to unfold a neighborhood of this vertex in such a way that both the angles (their ratios) and distances of paths from this vertex are preserved as much as possible.

I read some reviews on mesh parameterization techniques (eg. this one by Scheffer et al.). My understanding is that all the algorithms try to preserve a certain property (angle, distance, area) or a combination of those properties for all of the vertices or faces. In my case I need to preserve angles and distance of paths going from only one point. My intuition tells me that what I need should be quite simple because I demand much less from the output than all those parameterization algorithms. Yet I cannot come up with the solution. Any help is greatly appreciated.

  • $\begingroup$ Are you looking to preserve the ratio between angles, to keep things in proportion, or to preserve the exact angle values? In general the angles cannot be preserved as angles around a point do not necessarily add up to 360 degrees in a non-planar surface. $\endgroup$ Commented Feb 13, 2017 at 16:42
  • $\begingroup$ The ratio. I will edit the post. Thank you for pointing this out. $\endgroup$
    – Evgenii
    Commented Feb 13, 2017 at 17:13
  • 1
    $\begingroup$ @trichoplax Angles around a point do add up to 360° as long as the surface is smooth (a small patch around the point looks like a plane). You might be thinking of the angles inside a polygon? For instance, the interior angles of a triangle don't add up to 180° on a curved surface in general. $\endgroup$ Commented Feb 13, 2017 at 22:20
  • $\begingroup$ Please see Nathan's comment which explains my misunderstanding (thanks Nathan - that is indeed what I was confusing it with) $\endgroup$ Commented Feb 14, 2017 at 14:45
  • $\begingroup$ @NathanReed I'm doubting myself now, but I think my error was in terminology (talking about surface instead of mesh), and that the intended point stands. Although the smooth surface that is being approximated by a triangle mesh is locally planar, the mesh itself, as a polyhedron, does not have angles around each vertex that sum to 360°. So an angle preserving projection can be made from a surface to a plane, but the angles are dependent on which surface was chosen to fit to the vertices of the mesh prior to projection (unless the original surface is known). Is this relevant here? $\endgroup$ Commented Feb 14, 2017 at 16:09

1 Answer 1


I ended up using the LOS-Dijkstra algorithm for "near-isometric flattening of brain surfaces" described here. The code is available in this repository but:

  1. It is mixed with a lot of irrelevant code.
  2. It is poorly commented.
  3. It is in Matlab.

If someone stumbles onto this question in the future and would to use the code, I would be happy to help fix the issues above.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.