с полным автоматическим восстановлением всё сложно
но вот взять тот пример, что выше.
можно же алгоритмически построить «вписанный», «описанный» и «средний» сплайн. примерно. и дать юзеру выбор какой ему больше нравится.
если никакой — то пусть сам лепит
или даже это уже сложно?