[GIS] Resize polygon along one axis

openlayers-2polygon

Using the following example I'm able to resize by scale and origin.

    polygonFeature.geometry.resize(scale, origin);
    vectorLayer.redraw();

But does anyone have any suggestions or sample code on how I would go about resizing a polygon on one of its axes?

For example: I would like to resize the orange polygon to something like the red polygon. So only the north and south edges move while the east west edges stay constant.

enter image description here

EDIT #1
Here's a use case and example data:
A user only wants a portion of the orange rectangle because he's only interested in the coastline and satellite vendors will charge him more for the entire image. User needs to specify what portion of the image they want to order.

Although, i don't need the entire solution with sizing handles all i need is the ability to resize the Height of the polygon.

enter image description here
enter image description here

enter image description here

EDIT #2: Maybe i'm going about this wrong. I need an openlayers javascript (browser) solution and cannot go back to the server for resizing. Maybe what i should be doing is interpolating points along east and west edges of the polygon geometry (black dots). Then create two lines (green lines) in which the user can drag but restricting movement(draging) to those interpolated points. When the user is "done" i get the remaining yellow polygon?

enter image description here