Pathfinding.AstarSplines.CatmullRomOLD C# (CSharp) Method

CatmullRomOLD() public static method

public static CatmullRomOLD ( Vector3 previous, Vector3 start, Vector3 end, Vector3 next, float elapsedTime ) : Vector3
previous Vector3
start Vector3
end Vector3
next Vector3
elapsedTime float
return Vector3
		public static Vector3 CatmullRomOLD (Vector3 previous,Vector3 start, Vector3 end, Vector3 next, float elapsedTime) {
			// References used:
			// p.266 GemsV1
			//
			// tension is often set to 0.5 but you can use any reasonable value:
			// http://www.cs.cmu.edu/~462/projects/assn2/assn2/catmullRom.pdf
			//
			// bias and tension controls:
			// http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/interpolation/
		
			float percentComplete = elapsedTime;
			float percentCompleteSquared = percentComplete * percentComplete;
			float percentCompleteCubed = percentCompleteSquared * percentComplete;
		
			return previous * (-0.5F*percentCompleteCubed +
							 percentCompleteSquared -
							 0.5F*percentComplete) +
			start * (1.5F*percentCompleteCubed +
					 -2.5F*percentCompleteSquared + 1.0F) +
			end * (-1.5F*percentCompleteCubed +
					 2.0F*percentCompleteSquared +
					 0.5F*percentComplete) +
			next * (0.5F*percentCompleteCubed -
					0.5F*percentCompleteSquared);
		}
	}