public ParametricIcon(DPOW.Reader.Icon OriginalIcon)
 {
     position = new ParametricPoint(OriginalIcon.Position);
     size     = new ParametricPoint(OriginalIcon.Position);
     alpha    = OriginalIcon.Alpha.ToString();
     wtf      = OriginalIcon.WTF;
     visible  = OriginalIcon.Visible;
     shadow   = OriginalIcon.ShadowType;
     unk1     = OriginalIcon.Unknown1;
     unk2     = OriginalIcon.Unknown2;
     uns1     = OriginalIcon.UnknownS1;
 }
        public void ApplyToIcon(DPOW.Reader.Icon destIcon, float t)
        {
            position.ApplyToPoint(destIcon.Position, t);
            size.ApplyToPoint(destIcon.Size, t);
            destIcon.WTF        = wtf;
            destIcon.Visible    = visible;
            destIcon.ShadowType = shadow;
            destIcon.Unknown1   = unk1;
            destIcon.Unknown2   = unk2;
            destIcon.UnknownS1  = uns1;

            Ciloci.Flee.ExpressionContext c = new Ciloci.Flee.ExpressionContext();
            c.Imports.AddType(typeof(Math));
            c.Variables["t"] = t;
            if (alpha != "")
            {
                destIcon.Alpha = (byte)c.CompileGeneric <double>(alpha).Evaluate();
            }
        }