Skip to content

Tag Archives: voronoi

Towards medial-axis pocketing

Update: some work on connecting MICs together with bi-tangent line-segments, as well as a sequence of lead-out, rapid, lead-in, between successive MIC-slices: It gets quite confusing with all cutting and non-cutting moves drawn in one image. The path starts with an Archimedean spiral (pink) that clears the initial largest MIC. We then proceed to "scoop" [...]

V-carving test

A first try at v-carving, with toolpaths produced by the ttt2medial python script.

VD for polylines and polygons

I've been hacking away at openvoronoi, adding support for polylines and polygons. The code I had in November works with individual non-intersecting line segments, like this: Note how each vertex in the figure above is of degree three, i.e. there are three edges incident on each vertex. There's something about the number three, or triangles, [...]

Poisson Voronoi diagram statistics

On g+, John Baez linked to work by Henk Hilhorst on the probability of finding voronoi cells with n sides in a poisson voronoi diagram. A poisson voronoi diagram has point sites randomly and uniformly distributed, like this: Here's the distribution I came up with, after counting the edges for each voronoi cell from 200 [...]

Random line-segment voronoi diagram

Update3: version 11.10-148 now goes to 16k line-sites without errors or warnings: Update2: This diagram with 8k vertices clearly has errors: Update: Version 11.10-141 now copes with 4k random segments. But I don't know of any smart way to check the diagram for correctness.. Constructing the vd for random (non-crossing) line-segments is a reasonable stress-test [...]

Voronoi diagram algorithm animations

I've made some more progress with my voronoi diagram code. I described the topology-oriented incremental algorithm earlier here (point sites) and here (line segments). When we want to add a new site (a point or a line-segment) to the diagram we should find a tree of to-be-deleted vertices/edges (red), create new (green) vertices on all [...]

Line-segment vd animation

This shows the voronoi-diagram of a single line-segment together with an increasing number of point-sites. (watch it in 1080p on youtube!)

Line-segment voronoi diagram progress.

I've made some progress with my voronoi diagram code: Sites/generators in yellow. Line-edges in cyan, parabolic edges in red. Note that the parabolic edges are split at their apex, i.e. the closest point to the adjacent site. Some problems with hooking up the half-edges of the two new faces that are associated with a new [...]

vd benchmark

Tuesday update: A few optimizations has shaved about half off the constant, to . This was mainly (a) choosing boost::vecS as the out-edge container for the BGL-graph, and (b) choosing std::vector instead of std::set for a temporary variable in the grid-search for the closest facet. I suspect the runtime is dominated by that grid-search. Profiling [...]

Line-segment voronoi diagram notes

The next step for the opencamlib voronoi-diagram (vd) algorithm is to be able to add line-segment generators. Some notes and ideas on that then (this turned into a rather long post...) First let's recall (from February) how the point-generator vd-algorithm works: In (A) we want to insert a new point-generator (yellow). First we need to [...]