Karl,

I don't think that I understand your request.

What I think I hear is that you want an implementation (with unknown inputs
and outputs) that encodes a Voronoi tesselation using boundary vertices
instead of centroids.

Is that correct?

If so, it is relatively easy to go from centroid form to boundary vertex
form.  Boundary edges are segments of the equidistant lines between
centroids that form a minimal convex hull around the centroids.  The
intersections of adjacent boundary edge segments are the vertices.

Going back is also relatively easy.  Centroids are the intersection of
perpindicular bisectors of the boundary edges.

As far as concrete implementations go, I have found the tripack library in
R quite useful.  For example, I generated the image at
https://dl.dropbox.com/u/36863361/k-means-3.png by using the following R
code:

png("k-means-3.png", width=600, height=600)
plot(voronoi.mosaic(c$centers[,1], c$centers[,2],duplicate="remove"),
main="", xlab="", sub="")
points(x[,1], x[,2], cex=0.5, col='red', type='p')
points(c$centers[,1], c$centers[,2])
points(c$centers[,1], c$centers[,2], cex=0.5)
points(c$centers[,1], c$centers[,2], cex=0.2)
dev.off()




On Wed, Aug 29, 2012 at 8:10 AM, Karl Wettin <karl.wet...@gmail.com> wrote:

>
> 29 aug 2012 kl. 11:54 skrev Karl Wettin:
>
> > I'm searching for a Voronoi-implementation where the nodes/sites are
> represented by a polygon rather than a point. Anyone seen such a thing?
>
> I suppose one solution would be to use each point in the polygon as a site
> and then merge all clusters created from the points from the same polygon.
> Is that the only solution?
>
>
>                         karl

Reply via email to