Exemplo n.º 1
0
            internal static PolystarShape NewInstance(JsonObject json, LottieComposition composition)
            {
                var name             = json.GetNamedString("nm");
                var type             = (Type)(int)json.GetNamedNumber("sy");
                var points           = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("pt"), composition, false);
                var position         = AnimatablePathValue.CreateAnimatablePathOrSplitDimensionPath(json.GetNamedObject("p"), composition);
                var rotation         = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("r"), composition, false);
                var outerRadius      = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("or"), composition);
                var outerRoundedness = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("os"), composition, false);
                AnimatableFloatValue innerRadius;
                AnimatableFloatValue innerRoundedness;

                if (type == Type.Star)
                {
                    innerRadius      = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("ir"), composition);
                    innerRoundedness = AnimatableFloatValue.Factory.NewInstance(json.GetNamedObject("is"), composition, false);
                }
                else
                {
                    innerRadius      = null;
                    innerRoundedness = null;
                }
                return(new PolystarShape(name, type, points, position, rotation, innerRadius, outerRadius, innerRoundedness, outerRoundedness));
            }
Exemplo n.º 2
0
 internal static CircleShape NewInstance(JsonObject json, LottieComposition composition)
 {
     return new CircleShape(json.GetNamedString("nm"), AnimatablePathValue.CreateAnimatablePathOrSplitDimensionPath(json.GetNamedObject("p"), composition), AnimatablePointValue.Factory.NewInstance(json.GetNamedObject("s"), composition));
 }