You have already received good Perl answers. I nevertheless want to flag about the potential complexity of this issue. Think about what do you mean exactly by "combine polygons", since there are several different ways to "combine" polygons (see, for example, this link). As you already noted, these operations can soon get very complicated for non regular shapes.

Reinventing the wheel is surely educative and I believe it is always worth the effort. However, if you are in a hurry and need to get job done, I would recommend exploring any of the solutions that are extensively available in Geographic Information Systems.

There are a lot of good free and open source GIS packages out there, some more advanced than others. See, for example: GRASS, QGIS, and, if you like operating on databases: Spatialite or, on a PostgreSQL database, PostGIS.

All these apply the underlying engine for spatial operations implemented in GEOS, which in turn implements specifications by Open Geospatial Consortium

Good luck!


In reply to Re: combine(merge) polygons by hda
in thread combine(merge) polygons by dideod.yang

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.