I merged initial experimental support into LibreCAD yesterday.

Some basic features of Offset still need to be implemented:

1, loop, self-intersection awareness;

2, Generate a spline fit, if the offset envelop is not in simple entities(straight line, arc, and ellipse);

3, More options to initiate Offset.

If you find a bug in LibreCAD, or simply want LibreCAD to do more, please file a feature request/bug report at our sourceforge trackers:

https://sourceforge.net/tracker/?group_id=342582

The LibreCAD team

Ciao,

If/when I get my voronoi-diagram code working it should allow for fast and robust offset-generation. If you do it segment-by-segment you need to check for intersections which, at least naively implemented, is an O(n^2) operation if you have n points/lines/arcs. The voronoi diagram approach is n*log(n) so should be way faster for complex input geometry.

Anders

Hi anders,

is your voronoi cell part based on fortune algorithm?

If you can license it to GPL2+ (version 2 or later), we would love to include it in LibreCAD. It would be a feature by itself (to generate voronoi cells), aside from a fast contour classifying algorithm.

To identify cells starting from points(vertices) is the definition of voronoi cells.

To identify cells starting from lines requires generating of the points (vertices) from lines, and the vertices can be generated by reflection of a point by the given lines.

Please tell me more about the arc part.

After this, we still get the problem of self-intersecting spline to handle.

Thanks,

Dongxu Li

My goal is something like this (from a 2009 paper by Held):

http://www.anderswallin.net/wp-content/uploads/2010/11/held2009_screenshot1.png

Right now I can calculate diagrams for point-sites and for line-sites. Like this:

http://www.anderswallin.net/wp-content/uploads/2011/11/100_linesites.jpg

(input line-segments in yellow, diagram in shades of blue)

Next I need to extend this code for polygons, and write a class that traverses the diagram and generates offset. Code is c++ with python bindings. https://github.com/aewallin/openvoronoi

gpl3 or gpl2 is OK with me.

This is great!

We definitely need this for line/arc.

I will see what I can do with your openvoronoi program.

Thanks,

Dongxu Li

这个”Offset”是我提的，没想到真的加了这个功能，很激动

并且我也提议在软件主页上添加“News”栏目，居然也加了，虽然只是链接到Blog，还是很让人感动的

当前只有最简单的Offset支持。接下来需要将Anders的算法添加到LibreCAD，Anders的算法能快速确定offset的拓朴结构。如果时间允许，我将协助Anders调试相关Voronoi算法。然后，添加Voronoi功能本身到LibreCAD。

除了内核部分，我们也需要来自各国的开发人员帮助翻译，编写说明文档，以及共享dxf绘图库等等。

谢谢！

很看好这个软件，也想帮助这个软件，但是不知道能做点什么

There are several things we can do together:

1, algorithm/engine level:

Offset, spline, hatch, and Voronoi cells. Most likely, in collaboration with Anders.

Also, feel free to propose other things we would like LibreCAD to do. Ries wants more 2.5D and CAM support, for example.

2, GUI/Qt

The GUI/painter/printer all need more work and cleanup.

have a look at our trackers at sf:

https://sourceforge.net/tracker/?group_id=342582

3, Translation/wiki

比如中文翻译，使用手册，等等。

如果您希望涉及计算几何/C++/Qt，或者用户支持等方面，我们非常友好的现有团队可以尽快让您熟悉做出高质量的软件工作。毕竟，作为自由软件的开发者，您最重要的目标可以是软件自身品质。

总之，我们很欢迎并且需要更多的开发人员。

我一直在OSchina.net上发布LibreCAD的更新信息，只是现在关注的人不是很多

希望1.0.0版本能尽快正式发布。同时我们将有2.0.0_apha1

I’ll right away snatch your rss as I can’t in finding your e-mail subscription hyperlink or newsletter service. Do you have any? Please allow me know in order that I may subscribe. Thanks.