Unity3d Rotate around a specific point over time
<p>I'm writing a function that slowly turns exactly 90 degreees over the course of a period of time.  So far everything is working fine,  I just need to figure out how to make it rotate around a point instead of rotation around the transforms center.</p>

<pre><code>protected bool _isRotating = false;
public IEnumerator RotateWithEasing(GameHelper.Axis axis, Vector3 isolatedAxisPoint, float inTime)
{
    if(_isRotating)
    {
        yield break;
    }

    _isRotating = true;

    var degrees = this.GetDegreesFromAxis(axis);

    Quaternion fromAngle = transform.rotation;
    Quaternion toAngle = Quaternion.Euler(transform.eulerAngles + degrees);
    for (float t = 0f; t &lt; 1f; t += Time.deltaTime / inTime)
    {
        transform.rotation = Quaternion.Lerp(fromAngle, toAngle, t);
        yield return null;
    }

    _isRotating = false;
}
</code></pre>

<p>Can anyone help point me in the right direction,  How can I modify this so it rotates around the specified isolatedAxisPoint?</p>