private void FindBasePoints(Contour contour, FingerPoint fingerPoint)
{
var fingerPointIndex = FindIndex(fingerPoint.Fingertip, contour);
var distanceAdjustedOffset = (int)(offsetDistance * indexOffset / fingerPoint.Fingertip.Z);
fingerPoint.BaseLeft = contour.GetPointAt(Rollover(fingerPointIndex - distanceAdjustedOffset, contour.Count));
fingerPoint.BaseRight = contour.GetPointAt(Rollover(fingerPointIndex + distanceAdjustedOffset, contour.Count));
var baseCenter = Point.Center(fingerPoint.BaseLeft, fingerPoint.BaseRight);
fingerPoint.DirectionVector = Point.Subtract(fingerPoint.Fingertip, baseCenter).GetNormalizedVector();
}