Results 93 comments of Buck

What you want is not implemented in this C++ repository, but you can get the part you want using the Rust library (function [here](https://github.com/jbuckmccready/cavalier_contours/blob/master/cavalier_contours/src/polyline/traits.rs#L1385)). The boolean operation in the Rust...

It's a known limitation right now in the simultaneous/island offsetting where overlapping/coincident offset segments are not removed. I had planned to look into it more when I implement the simultaneous...

Initial pass at C API is done, not all tests are fully implemented. Plan is to wrap C API in another .NET project to verify the API is clean/not cumbersome...

You can compile this library (and other c++) using [Emscripten](https://emscripten.org/). I compiled the full [CavalierContoursDev](https://github.com/jbuckmccready/CavalierContoursDev) Qt app for the web demo. I haven't worked on making this library available directly...

I do not quite follow what you mean by a "smooth offset contour, with at best only tangential connections" (I'm curious to see an example picture). For every polyline segment...

It may be easiest to just have a second step in processing after performing the offset you could walk the segments and perform the "smoothing" operation you intend.

So from the picture it looks like whenever the segments intersect you want to form an arc join between them rather than trim to the intersect point? I think that...

I think that would be fairly easy to implement based on how the algorithm works. I don't have an exact time line for this but I'll maybe take a look....

I'll fix any major bugs and accept pull requests for fixes/improvements. I don't know yet how much I will build out the API/features in C++. If I get frustrated/disillusioned with...

For your particular request you could implement that behavior by finding the intersects between the open polyline and closed polyline, slice the open polyline at the intersect points and keep/discard...