| 
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -9,21 +9,24 @@ | 
															
														
														
													
														
															
																 | 
																 | 
																*                                           // This requires lots of memory on system. | 
																 | 
																 | 
																*                                           // This requires lots of memory on system. | 
															
														
														
													
														
															
																 | 
																 | 
																*   How to use: | 
																 | 
																 | 
																*   How to use: | 
															
														
														
													
														
															
																 | 
																 | 
																*   The four inputs t,b,c,d are defined as follows: | 
																 | 
																 | 
																*   The four inputs t,b,c,d are defined as follows: | 
															
														
														
													
														
															
																 | 
																 | 
																*   t = current time n">in milliseconds | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   b = starting position in only one dimension [X || Y || Z] your choice | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   t = current time p">(in any unit measure, but same unit as duration) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   b = starting value to interpolate | 
															
														
														
													
														
															
																 | 
																 | 
																*   c = the total change in value of b that needs to occur | 
																 | 
																 | 
																*   c = the total change in value of b that needs to occur | 
															
														
														
													
														
															
																 | 
																 | 
																*   d = total time it should take to complete | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   d = total time it should take to complete (duration) | 
															
														
														
													
														
															
																 | 
																 | 
																* | 
																 | 
																 | 
																* | 
															
														
														
													
														
															
																 | 
																 | 
																*   Example: | 
																 | 
																 | 
																*   Example: | 
															
														
														
													
														
															
																 | 
																 | 
																*   float speed = 1.f; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   float currentTime = 0.f; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   float currentPos[2] = {0,0}; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   float finalPos[2] = {1,1}; | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   float startPosition[2] = currentPos;//x,y positions | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*   while(currentPos[0] < finalPos[0]) | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*       currentPos[0] = EaseSineIn(currentTime, startPosition[0], startPosition[0]-finalPos[0], speed); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*       currentPos[1] = EaseSineIn(currentTime, startPosition[1], startPosition[1]-finalPos[0], speed); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																*       currentTime += diffTime(); | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																* | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   int currentTime = 0; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   int duration = 100; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   float startPositionX = 0.0f; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   float finalPositionX = 30.0f; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   float currentPositionX = startPositionX; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																* | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   while (currentPositionX < finalPositionX) | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   { | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*       currentPositionX = EaseSineIn(currentTime, startPositionX, finalPositionX - startPositionX, duration); | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*       currentTime++; | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																*   } | 
															
														
														
													
														
															
																 | 
																 | 
																* | 
																 | 
																 | 
																* | 
															
														
														
													
														
															
																 | 
																 | 
																*   A port of Robert Penner's easing equations to C (http://robertpenner.com/easing/) | 
																 | 
																 | 
																*   A port of Robert Penner's easing equations to C (http://robertpenner.com/easing/) | 
															
														
														
													
														
															
																 | 
																 | 
																* | 
																 | 
																 | 
																* | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																		
																			
																		
																	
																	
																 | 
																@ -87,7 +90,7 @@ | 
															
														
														
													
														
															
																 | 
																 | 
																    #define EASEDEF extern | 
																 | 
																 | 
																    #define EASEDEF extern | 
															
														
														
													
														
															
																 | 
																 | 
																#endif | 
																 | 
																 | 
																#endif | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																#include <math.h> | 
																 | 
																 | 
																 | 
															
														
														
													
														
															
																 | 
																 | 
																 | 
																 | 
																 | 
																#include <math.h>       // Required for: sin(), cos(), sqrt(), pow() | 
															
														
														
													
														
															
																 | 
																 | 
																
 | 
																 | 
																 | 
																
 | 
															
														
														
													
														
															
																 | 
																 | 
																#ifdef __cplusplus | 
																 | 
																 | 
																#ifdef __cplusplus | 
															
														
														
													
														
															
																 | 
																 | 
																extern "C" {            // Prevents name mangling of functions | 
																 | 
																 | 
																extern "C" {            // Prevents name mangling of functions | 
															
														
														
													
												
													
														
															
																| 
																	
																		
																			
																		
																	
																	
																	
																 | 
																
 |