Hello Jon Petter,

On the surface of it, an uncombine function doesn't seem complicated, but
from experience I know there are several things that complicate the
solution.

MB provides an easy way of extracting the Nth polygon from a region using
the ExtractNodes() function. If the begin_node and end_node arguments are
both 1, you get the Nth whole polygon. So, this will give you a way of
extracting individual polygons, then using the area() function you can
perform your "threshold" test.

The difficult part comes with determining whether a polygon is an "include"
or "exclude". For example, a donut would be 2 polygons, 1 include and 1
exclude. However, not all 2 polygon regions are donuts - you can quite
easily have 2 disjoint includes. Also, you can nest inclusion and exclusion
zones to create more complex regions. Finally, the first polygon in a region
is not guaranteed to be an include. So, even with a simple donut, the hole
may be expressed as the first polygon.

Regards,
Warren Vick
Europa Technologies Ltd, U.K.
http://www.europa-tech.com


> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED]]On Behalf Of Jon Petter Nielsen
> Sent: Monday, December 20, 1999 3:01 PM
> To: '[EMAIL PROTECTED]'
> Subject: MI Help for MapInfo "Uncombine" ?
>
>
> Hi
> I am trying to develop a function to perform "uncombine" on
> multi-polygon regions. Then classify them based on area values ("Remove
> all smaller than ...")
> - Anyone programmed this in MapBasic ?
> - Am I able to perform this by looping the polygons using data from
> ObjectInfo ?
> - How, in general, to detect which polygons are islands and which are
> not ? Example : Donut region = 2 polygons.
>
> Jon Petter Nielsen
> InfoWiz AS, Oslo Norway,
> [EMAIL PROTECTED]
> +47 2296 1563
> ----------------------------------------------------------------------
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]
>

----------------------------------------------------------------------
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

Reply via email to