J'expérimente l'animation des chemins de CAShapeLayer avec CASpringAnimation. Le résultat attendu est un "morphing" entre les formes qui agit comme un ressort.
J'ai un exemple de code de base entre un cercle et une trajectoire carrée comme ci-dessous, mais le résultat final est une animation de ressort qui ne dépasse pas la trajectoire carrée finale, plus grande, ce qui est le comportement attendu.
Mon code est :
let springAnimation = CASpringAnimation(keyPath: "path")
springAnimation.damping = 1
springAnimation.duration = springAnimation.settlingDuration
springAnimation.fromValue = standardCirclePath().cgPath
springAnimation.toValue = standardSquarePath().cgPath
circleLayer.add(springAnimation, forKey: nil) // Where circleLayer (red background) is a sublayer of a basic UIView in the frame (blue background)
J'ai mes chemins à partir de cette réponse .
Existe-t-il un moyen de réaliser cela avec CASpringAnimation pour une transformation de trajectoire CAShapeLayer ? Sinon, quelles sont les alternatives ?