PointSet::setInitialVertexPositions doesn't set m_vertexPositions
SetInitialVertexPositions is in the public interface, but using it seems to require SetVertexPositions as well, as it only sets the m_initialVertexPositions member variable, when creating a surface mesh for example this means ComputeVertexNeighborTriangles fails as it asumes m_vertextPositions to be correctly set. Either the SetInitialVertexPositions should be not be in the public interface or it needs to do the right with with regards to m_vertexPositions