# 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. Commented Jan 26, 2016 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... Commented Jan 26, 2016 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! Commented Jan 26, 2016 at 22:14
• Hmmm, I understand your point regarding the symmetry. I have added a sample to demonstrate what I mean. Commented Jan 26, 2016 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). Commented Jan 26, 2016 at 22:20