Negative perspective values now swap direction

Previously, they expanded the image instead of contracting it, but that
left no way to shrink the opposite direction.  Rather than add
additional controls to the project, I added a little extra math.  This
is a more elegant way to cover all directions.