EricL - Further optimized by moving all calculations out of drawRect. Also only drawing what needs to be drawn for the shadow.