package com.airbnb.lottie; import android.graphics.PointF; import org.json.JSONObject; import java.util.List; class AnimatablePointValue extends BaseAnimatableValue<PointF, PointF> { private AnimatablePointValue(List<Keyframe<PointF>> keyframes, PointF initialValue) { super(keyframes, initialValue); } @Override public KeyframeAnimation<PointF> createAnimation() { if (!hasAnimation()) { return new StaticKeyframeAnimation<>(initialValue); } else { return new PointKeyframeAnimation(keyframes); } } static final class Factory { private Factory() { } static AnimatablePointValue newInstance(JSONObject json, LottieComposition composition) { AnimatableValueParser.Result<PointF> result = AnimatableValueParser .newInstance(json, composition.getDpScale(), composition, PointFFactory.INSTANCE) .parseJson(); return new AnimatablePointValue(result.keyframes, result.initialValue); } } }