# Polygon Equal Edge Offsetting?

If I have a random polygon of any complexity, be it a square or an irregular 20 sided polygon, how can I scale this up?

I know the coordinates of each point on the polygon, but that is all.

Another requirement is that as the polygon is scaled up, each side must be an equal distance from its original smaller counterpart. Unlike if you were to directly upscale a rectangle for example, where two sides would be more distant than the other two.

Any help would be greatly appreciated, thanks.

EDIT:

You can see in the demonstration image below, the top rectangles are directly scaled, 1:1. I want to achieve the bottom rectangle scaling, keeping equal distance. How might it be possible to calculate the new x,y coords of the scaled up polygon?

EDIT 2:

I have been corrected, I should be referring to Polygon Offsetting (not scaling!).

• Thanks @Minestrone. I've thrown on some more tags, if only my knowledge of mathematical terminology was better! At least I'm learning. – Josh Kahane Jan 26 '16 at 22:12
• Do you have a picture of an example of what you have in mind? The bit about the rectangle is making me wonder what your version of a scaled up rectangle would even look like... – pjs36 Jan 26 '16 at 22:13
• It sounds like what you want is impossible unless the polygon is regular or otherwise very symmetric. For a generic non-regular polygon (such as a rectangle that's not a square) it will be impossible to place a (non-trivially) scaled version of the polygon such that all sides are displaced by the same distance! – Henning Makholm Jan 26 '16 at 22:14
• Hmmm, I understand your point regarding the symmetry. I have added a sample to demonstrate what I mean. – Josh Kahane Jan 26 '16 at 22:20
• (Correction -- the criterion for being scalable-with-a-common-displacement is that the polygon has an inscribed circle. It doesn't need to be particularly symmetric for that, though. In particular it is always possible for a triangle). – Henning Makholm Jan 26 '16 at 22:20