UIViewAnimationCurveLinear를 사용하여 두 점 사이의 뷰에 애니메이션을 적용하므로이 애니메이션의 속도를 알 수 있습니다. 특정 상황에서 UIViewAnimationCurveEaseOut을 추가하여보기를 더디게 멈추게하려고합니다. 이 효과를 원활하게하려면 손쉬운 애니메이션은 이전의 선형 애니메이션과 같은 속도로 시작해야합니다. 이 완화가 발생하기를 원하는 고정 된 거리가 주어지면이 시작 속도를 달성하는 데 필요한 지속 시간을 어떻게 계산할 수 있습니까?시작 속도와 거리를 알고있는 UIViewAnimationCurveEaseOut 애니메이션의 지속 시간을 어떻게 계산합니까?
예를 들어, x = 0에서 x = 100까지 10 초 동안 내보기에 애니메이션을 적용한다고합시다. 따라서 속도는 10 픽셀/초입니다. UIViewAnimationCurveEaseOut 애니메이션을 사용하여 x = 100에서 x = 120까지보기가 감속되기를 바랍니다. 이 애니메이션은 10 픽셀/초에서 시작되도록하기 위해 어떤 지속 시간을 사용해야합니까?
Core Animation의 CAMediaTimingFunction은 큐브 베 지어 곡선을 사용하여 애니메이션 페이싱을 제어합니다. 두 번째 및 세 번째 제어점이 곡선의 모양을 지정합니다. 나는 UIViewAnimationCurve 여유 함수가 3 차 베 지어 곡선이라고 가정합니다. 이 함수들이 사용하는 기본 컨트롤 포인트를 알고 있다면 속도와 거리가 지정된 지속 시간을 계산하는 공식을 계산할 수 있어야하지만 어디에서나 이러한 기본 컨트롤 포인트를 찾을 수는 없습니다.
전체 애니메이션에 걸쳐 EaseOut을 사용하지 않는 이유는 무엇입니까? –