/// <summary>
 /// Initializes a new instance of the <see cref="PointToPointAnimation"/> class.
 /// </summary>
 /// <param name="startX">the starting X coordinate</param>
 /// <param name="startY">the starting Y coordinate</param>
 /// <param name="endX">the ending X coordinate</param>
 /// <param name="endY">the ending Y coordinate</param>
 /// <param name="configuration">the animation configuration</param>
 public PointToPointAnimation(double startX, double startY, double endX, double endY, AnimationConfiguration configuration)
     : base(configuration)
 {
     this.StartX = startX;
     this.StartY = startY;
     this.EndX = endX;
     this.EndY = endY;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="PathFollowerAnimation"/> class.
        /// </summary>
        /// <param name="pathGeometry">The path Geometry.</param>
        /// <param name="configuration">The configuration to use.</param>
        public PathFollowerAnimation(string pathGeometry, AnimationConfiguration configuration)
            : base(configuration)
        {
            if (string.IsNullOrWhiteSpace(pathGeometry))
            {
                throw new ArgumentException(@"pathGeometry must not be null or empty.", "pathGeometry");
            }

            this.PathGeometry = pathGeometry;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="AnimationBase"/> class.
 /// </summary>
 /// <param name="configuration">The configuration to use.</param>
 protected AnimationBase(AnimationConfiguration configuration)
 {
     this.CurrentAnimationState = AnimationState.Stopped;
     this.AnimationConfiguration = configuration;
 }