All Downloads are FREE. Search and download functionalities are using the official Maven repository.

gov.nasa.worldwind.animation.Animator Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (C) 2012 United States Government as represented by the Administrator of the
 * National Aeronautics and Space Administration.
 * All Rights Reserved.
 */
package gov.nasa.worldwind.animation;

/**
 * @author jym
 * @version $Id: Animator.java 1171 2013-02-11 21:45:02Z dcollins $
 */

/**
 * The Animator interface provides a way to iterate through a series of values.  It can be used with
 * a simple interpolation function, or something more elaborate.  The PropertyAccessor class and its
 * interfaces can be used to agnostically attach to data members of any class.
*/
public interface Animator
{
    /**
     * Iterates to the next value.  The implementation is expected to apply that next value to the property
     * it is attached to.
     */
    void next();

    /**
     * Starts the Animator.  The implemenation should return true from hasNext
     */
    void start();

    /**
     * Stops the Animator.  The implmenentation should return false from hasNext
     */
    void stop();

    /**
     * Returns true if the Animator has more elements.
     *
     * @return true if the Animator has more elements.
     */
    boolean hasNext();

    /**
     * Set the value of the attached property to the value associated with this interpolant value.
     * @param interpolant A value between 0 and 1.
     */
    void set(double interpolant);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy