Categories:
-
3d 96 articles
-
animations 16 articles
-
architecture 47 articles
-
blender 98 articles
-
bédé 19 articles
-
techdrawing 24 articles
-
freecad 194 articles
-
gaming 1 articles
-
idsampa 8 articles
-
inthepress 8 articles
-
LinesCAD 0 articles
-
linux 57 articles
-
music 1 articles
-
nativeifc 35 articles
-
opensource 271 articles
-
orange 4 articles
-
photo 16 articles
-
projects 35 articles
-
receitas 176 articles
-
saopaulo 18 articles
-
sketches 163 articles
-
talks 25 articles
-
techdrawing 24 articles
-
textes 7 articles
-
trilhas 3 articles
-
urbanoids 1 articles
-
video 47 articles
-
webdesign 7 articles
-
works 151 articles
Archives:
-
2007 22 articles
-
2008 32 articles
-
2009 66 articles
-
2010 74 articles
-
2011 74 articles
-
2012 47 articles
-
2013 31 articles
-
2014 38 articles
-
2015 28 articles
-
2016 36 articles
-
2017 41 articles
-
2018 46 articles
-
2019 59 articles
-
2020 18 articles
-
2021 20 articles
-
2022 7 articles
-
2023 25 articles
-
2024 15 articles
-
2025 3 articles
-
2026 1 articles
Hi again
Long time no see
So I spend the last months in a kind of ‘baby leave”. Not fully, I’ve still been doing some work at the FPA and kept an eye on FreeCAD things, but much less.
This was truly an exceptional time and I feel really lucky to have been able to spend these months full-time with Cosmo. Few fathers are able to do that, and that is just plain wrong... Taking care of him at this phase of his life is extraordinary, precious, it makes you reassess all what (your) life is about, and it’s a time you’ll never get back if you loose it. We should have more than the 20 days parental leave fathers have in Belgium and in most parts of the world, when any. It is unfair to both men and women, both should be allowed to take care of babies AND not loose professional advantages.
But back to why we’re here. I’m slowly getting back to action. FreeCAD is fine and healthy, and in case you haven’t seen it, we released version 1.1, I gave a talk at FOSDEM, we published the FPA’s yearly report, there is an ongoing modelling competition, and much, much more. The FreeCAD blog is always a good place to get your info.
LinesCAD

I am also starting a new side project called LinesCAD. The base idea is more or less a redux version of FreeCAD tailored for BIM and 2D CAD. What you will currently find in the Git repo is a proof-of-concept IFC viewer, that is one single 300-line Python file. It has no other feature than allowing to open IFC files, but it validates the concept of just gluing IfcOpenShell, Pivy (Coin3D) and PySide(Qt). Basically, FreeCAD without OpenCasCade and without C++. It will therefore rely only on IfcOpenShell for managing the geometry. This is already what we’re doing with the NativeIFC mode of FreeCAD’s BIM workbench
Another advantage is that we can bypass FreeCAD’s object structure, and reflect directly the IFC structure in Coin, with immediate advantages such as automatic embedding of objects, placements, visibility, etc. So for example when you move a storey, all objects inside move together, without any code intervention.
And on a more personal note, FreeCAD has become a heavyweight project, where I’m today doing more admin tasks than actual coding. So this is also a way to get back to a more root FOSS experience, with more people and less AI.
I’ll post more updates here about LinesCAD development as it goes on. Hopefully it will attract other architects/developers along the way!
Below is the manifest of LinesCAD:
Manifest for a new FOSS BIM/CAD tool
This manifest describes a new Free and Open-Source BIM and 2D CAD tool, written in Python, based on IFC and as compatible as possible with FreeCAD and Bonsai.
The main need for such a tool arises from the limitations of both FreeCAD (too slow with large files) and Bonsai (too far from a simple "drawing" workflow), and at the same time from the enormous opportunities offered by both these applications (IfcOpenShell-based, easily adaptable tools, much functionality already independent from both applications).
Back to the CAD basics
- A fast, simple, non-parametric (asides from what IFC supports of course) tool able to handle thousands of objects and load 100Mb files fast, and still open 200Mb files reasonably fast
- 2D/3D hybrid, all-in-the-model. Can be also used as a good and fast 2D CAD, like in the good old AutoCAD days, and everything in-between
- Native IFC-based. The model is the IFC file itself, everything is contained in it, even 2D and any other metadata
- Good and fast DXF import and export with support for layouts. 2D output exportable as good-quality DXF
Rescuing FreeCAD principles
- Multiplatform and distro-friendly: The code is platform-agnostic, easy to package and not tied to specific versions of external components
- Modular: a small minimalist core, everything is in modules.
- Well-known components: Python on the front, powerful libraries behind: IfcOpenShell, Qt, Coin/Pivy
- Uncompromising backward and forward compatibility
- Extensibility: The door is open for anything, it's just a matter of adding modules
- Standard UI: 2D/3D view, toolbars, model tree, properties view. Classical, non-overlapping interface
- Simple code that is easy to understand and modify
Human crafted
- Strictly community-based: Multiple ownership/copyright encouraged, development in the open, by users
- GPL: This is a end-user application, unlikely to be used as a library. Let's enforce FOSSness right from the beginning
- It's done when it's done: No plan, no schedule, minimal roadmaps, no release plan
- No AI, no big tech, anywhere, anyhow. Pure FOSS-based and hosted
- Careful documentation: Together with the code, mandatory with every PR, based on diataxis
- Magic: Anything done in modules is welcome. Import of FreeCAD and Blender as Python modules is encouraged, or just anything else to play with
- High community standards to make sure anybody is always welcome to participate, diversity and inclusion are encouraged and no abuse is tolerated
- Low resouroe usage to use the application and to develop it. No CI, and should run on low-end hardware
Technical challenges
- Viewer speed: That is the first and main thing to verify: The ability to import and handle (rotate, zoom, select/highlight) large 3D models and large 2D drawings
- Viewer enhancements: Shadows, ambient occlusion, anti-aliasing, etc. These are possible in Coin, but need to be implemented
- Missing FreeCAD/Blender functionality: Things such as undo/redo history, copy/pasting, multi-documents support, mouse/user interaction, tasks UI need to be identified and recreated
- Fast tree view: This is often a choke point
- DXF support: It needs to be fast, so it needs to be C++. Ezdxf would be the obvious choice but it's slow
- Packaging and distribution: Offload as much as possible, but need to address Windows and MacOS
- See how/if FreeCAD's coin extensions can be used
- Sections: See how Bonsai does
Design intents
- Simpler, faster drawing paradigm than FreeCAD: no task panel, all task UI, when needed, in the status bar. Editing exclusively via the properties panel or graphical tools
- Abstract all the viewer and scenegraph interface, so the viewer library could be changed (to vsg for ex, or IfcOpenShell's wip viewer)
- zero-install, can run directly from its source
- No workbenches, but toolbars and menus that can be turned on/off like AutoCAD
- Every PR shows a before/after benchmark. Performance is always trackable
- 2D views are also Coin (same views with locked rotation)
- IfcOpenShell, Coin and Qt all maintain their own objects stack. The code only updates one from another, there is **no central document/object structure

I will soon reactivate my crowdfunding tools with a bit expanded proposal, to include LinesCAD. But really at this point it’s more about the fun!
That’s it for today, thanks for reading!
Comment on this post on Mastodon - Show replies