About dli

LibreCAD developer I enjoy working on math/geometry core algorithms!

LibreCAD 2.0.0alpha4 Released

We are pleased to annouce the releasing of 2.0.0alpha4 after two months of development since 2.0.0alpha3.

New features implemented since 2.0.0alpha3: dxfrw is now the default dxf library for LibreCAD; Painter draws only visible part within the viewport; All intersection point location is by a unified quadratic form; Initial implementation of hyperbola, but there’s no GUI support yet, therefore, not visible to end users; Added a circle drawing method: to draw tangent circle passing two given points.

There are a lots of bug fixing, but we do have some high priority bugs left broken in this release, mostly due to the complexity of those bugs.

Here’s a list of contributors since 2.0.0alpha3 in alphabetic order:

Dongxu Li, Erik Pagel, Mario Frasca, Michał Szczygieł, Rallaz, RoboMod, Scott Howard, unknown(???)

Please feel free to join us to make LibreCAD a great 2D CAD and geometry tool!

The LibreCAD Team

Appollonius Gasket

Creating an Appollonius Gasket in LibreCAD

To test the newly added feature of drawing a common tangential circle of three existing circles, an Appollonius gasket(Leibniz packing) was created using LibreCAD. This symmetric Leibniz packing has a fractal dimension of about 1.305688.

More New features planned for LibreCAD 2.0.0

Following features are planned for LibreCAD-2.0.0:

  1. better spline and Bezier curve support;
  2. complete conic section support after adding of hyperbola and parabola entities;
  3. draw a circle/ellipse tangential to two selected circles/ellipses.

With these terrific features, LibreCAD is expected to work as a general geometry tool even for users who are not in the CAD field, while those features are extremely useful for CAD users as well.

Due to complexity of those exciting features, we call on interested developers to join our development team to further develop this lightweight and feature rich free software.

2.0.0_alpha3 is expected in next one or two weeks with many bug fixes since 2.0.0_alpha2. fparser has been removed from LibreCAD. From now on, LibreCAD depends on muParser ( http://muparser.sourceforge.net/ ).

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

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

The LibreCAD team

 

Experimental “Help Layer” support.

Experimental implementation of HelpLayer by the dxf plotF flag, as requested:

request for “Help Layer”

Features of a Help Layer: 1, straight lines on a Help layer is automatically infinite in length; 2, contents of Help Layers are never printed;

Please help testing this new feature in my own repository:

https://github.com/dxli/LibreCAD/tree/helplayer

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

Happy holidays and be prepared for LibreCAD in 2012!

The LibreCAD team

 

 

 

Complete CJK font support in LibreCAD

Some simple hack to allow using CJK(Chinese-Japanese-Korean) font support.

Since the file size of complete CJK fonts is almost 80MB, I only added a 7-zipped font file to the folder: support/fonts :

https://github.com/LibreCAD/LibreCAD/blob/master/support/fonts/wqy-cjk.lff.7z

To use this font file, you will have to unzip it to generate the wqy-cjk.lff file. To unzip it in Linux:

7z e path/to/wqy-cjk.lff.7z

and add the file to LibreCAD font folder. For example, in my Archlinux,

sudo cp path/to/wqy-cjk.lff to /usr/share/librecad/fonts/

The font handling efficiency still needs more work. Nonetheless, users should be able to use CJK fonts in LibreCAD from now on. We would like to thank the WenQuanYi project for the good font quality and support for free software.

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

 

PS: The font file is renamed to wqy-unicode, because it covers more than CJK fonts. The font file size is reduced from 80MB to 42MB, and it takes 120MB RAM to load wqy-unicode font file.

Experimental “Offset” support in LibreCAD

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

Morley’s trisector theorem by LibreCAD’s new snap system

Morley's trisector theorem

Morley's trisector theorem

The 2.0.0 series (the master branch on github.com) of LibreCAD uses a new snap system which is designed to be more efficient in use.

For example, snap by middle points is extended to multiple equidistant points on entities. Using this new feature, trisecting an angle is now possible, albeit in LibreCAD.

To demonstrate this new interesting feature, 6 trisecting lines of a triangle are drawn, and Morley’s trisector theorem says the deep blue triangle formed is an equilateral triangle.

The LibreCAD Team

Common tangent line of two ellipses

LibreCAD tangent2

Common tangent line of ellipses

LibreCAD supports isometric grids now.

Also added to LibreCAD (targeting 2.0.0 version), drawing common tangent lines of two ellipses. Again, we use our own quartic equation solver to construct the tangent line. Actually, some cleanup still needed for the equation solver part, nonetheless, the feature is stable enough for general use.

The LibreCAD Team

Initial support for simplified Chinese fonts

LibreCAD Simplified Chinese fonts

LibreCAD Simplified Chinese fonts

After Rallaz and and zxq9 added font support for Japanese. Rallaz and I added some support for simplified Chinese fonts.

Full CJK font support is planned, but we need to figure out a more efficient way to to handle the 30,000+ characters.

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