Mam CAShapeLayer, który zawiera CGPath. Korzystając z wbudowanej animacji systemu iOS, można łatwo przekształcić tę ścieżkę w inną za pomocą animacji:Tweening/Interpolacja między dwoma CGPaths/UIBeziers
CABasicAnimation *morph = [CABasicAnimation animationWithKeyPath:@"path"];
morph.fromValue = (id)myLayer.path;
mayLayer.path = [self getNewPath];
morph.toValue = (id)myLayer.path;
morph.duration = 0.3;
[myLayer addAnimation:morph forKey:nil];
To działa idealnie.
Chciałbym jednak stopniowo zmieniać się między tymi ścieżkami podczas operacji przeciągania. Aby to zrobić, muszę mieć możliwość pobrania interpolowanej ścieżki w dowolnym momencie przeciągania. Czy istnieje sposób, aby poprosić o to system iOS?
W nietrywialnych przypadków, wybudowany w morfingu ścieżek staje się bezużyteczny dość szybko. Zobacz problem i wyjaśnienia opisane tutaj: http://stackoverflow.com/a/17864445/438982 – ipmcc
To prawda, ale w moim przypadku przemiana wygląda dobrze ... – tarmes