void InterpolationHelper::interpolate(){ //make sure we're not waiting for something that isn't going to happen if (!bInterpolateMatrix) bFinishedMatrix=true; if (!bInterpolateTransform) bFinishedTransform=true; //as long as there's work to do... if (!bFinished){ //this gets called from interpolate node - moves one actor to another actor! if (bInterpolateActor) interpolateActor(); if (keyFrames.size()>1){ //bone rotations if (bInterpolateMatrix && !bFinishedMatrix) interpolateMatrix(); //location/rotation of underlying actor if (bInterpolateTransform && !bFinishedTransform) interpolateTransform(); //only if both are finished can we be destroyed! if (bFinishedMatrix && bFinishedTransform) bFinished=true; } } }
void t12(void){ double temp[8*8*8]; printf("\n*** Interpolate matrix\n"); printMatrix(4,4,4,a); interpolateMatrix(2,2,2,1,a,temp); printMatrix(4,4,4,temp); }