Eu tenho vários objetos Spline2D no meu código, cada um deles com um método Position, Velocity e Acceleration que retorna um vetor da quantidade especificada em um determinado momento. Eu tenho usado esses vetores para construir geometria para criar traços de gradiente para as curvas, mas estou tendo problemas com auto-interseções em curvas íngremes. Como exemplo, aqui está uma curva em que estou fazendo isso ocorrer:
Wireframe: http://twitpic.com/2zplw1/full
Preenchido: http://twitpic.com/2zpmnt/full
Como você pode ver, na segunda curva, a parte interna se cruza, o que causa esse artefato feio. Existe um bom algoritmo / método para traçar curvas sem causar essa auto-interseção?
EDIT : exemplos mais extremos, além de uma maquete do que eu gostaria de alcançar:
Wireframe: http://twitpic.com/2ztwzi/full
Preenchido: http://twitpic.com/2ztwkt/full
Resultado ideal (mock-up): http://twitpic.com/2ztxa8/full