MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Polygon with holes

  • To: mathgroup at smc.vnet.net
  • Subject: [mg97330] Re: Polygon with holes
  • From: ragfield <ragfield at gmail.com>
  • Date: Wed, 11 Mar 2009 04:22:27 -0500 (EST)
  • References: <gp5fn9$9mc$1@smc.vnet.net>

On Mar 10, 5:34 am, Harrie Kraai <hakr... at xs4all.nl> wrote:
> Does anyone know of a facility for Polygons (graphics) with holes inside?
> I guess there is no such thing as an oriented polygon in Mathematica?
> Or a polygon consisting of disjoint lines (inner and outer contours,
> clockwise and counterclockwise)?
>
> I can see that it is possible to connect outer and inner contours using
> a dummy line, but that is not so easy to program in a generic way.

This is currently the only way to achieve the desired affect.

MultiContourPolygon[polys_List] := Module[
  {contours = Append[#, First[#]] & /@ polys},
  {
   Polygon@Join[Join @@ contours, Reverse[First /@ contours]],
   Line[contours]
   }
  ]

Graphics@MultiContourPolygon[{{{0, 0}, {0, 1}, {1, 1}, {1,
     0}}, {{.25, .25}, {.75, .25}, {.75, .75}, {.25, .75}}, {{.4, \
.4}, {.6, .4}, {.6, .6}, {.4, .6}}}]

> Solutions such as creating an artificial hole by another Polygon in the
> background colour are not really acceptable.
>
> Polygon's with holes would be very useful for maps etc.

Agreed.

-Rob


  • Prev by Date: Palettes Remembering Their Positions
  • Next by Date: Re: Unexpected zoom when rotating Plot3D
  • Previous by thread: Re: Polygon with holes
  • Next by thread: Re: Polygon with holes