YORIK’S COFFEE CORNER

Hi, this is my blog, and also a guestbook. I publish stuff I do from time to time. Be welcome and feel at home, have a coffee and don't hesitate to drop me a line or two. All languages are highly welcome, especially the most exotic ones (nederlands, bij voorbeeld...).

You are currently viewing only posts tagged as opensource in this guestblog for this year only.

Click here to retrieve posts with same tag from other years as well.

Click here to go back the blog home page, or browse by tag: sketches, freecad, opensource, trilhas, linux, works, architecture, projects, 3d, blender, detail, talks, inthepress, animations, opensurce, firefoxos, bede, idsampa, photo, gaming, wordpress, webdesign, Architecture, orange, cooking, or search the 2017, 2016, 2015, 2014, 2013, 2012, 2011, 2010, 2009, 2008, .


in categories  freecad  opensource  permalink:  482   posted on 02.05.2018 1:05
From Yorik

FreeCAD BIM development news - April 2018

Hello everybody,

This is time for a new report on FreeCAD development, particularly the development of BIM tools. To resume the affair for who is new to this column, I recently started to "divide" the development of BIM tools in FreeCAD between the original Arch, which is included in FreeCAD itself, and the new BIM workbench, which is a plug-in, and is now easily installable right from within FreeCAD, under menu Tools -> Addons manager. The idea is to keep the "technical" side inside the Arch module of FreeCAD, and concentrate, in the BIM workbench, on workflow and interface. This makes it clearer for me, allows for more experimentation without touching the "core" stuff (and therefore keep existing users happy), and also makes it easier for other people to contribute, since there is much less code to deal with in the BIM workbench, and you don't need to know much about FreeCAD internals, nor need to compile anything.

As you certainly know already, this month we released version 0.,17 of FreeCAD, I wrote about it in another article. This was a long-awaited one, and a lot of things were kept back to make sure we fixed as many bugs as possible and delivered a reasonably clean and stable version. Now that this is done, experimentation and new features can start again!

As always, all this is possible because many of you are sponsoring me on Patreon or Liberapay so I can steadily and increasingly spend some working hours on FreeCAD every month. Thanks once again for the wonderful support, together we're firmly on the way to a fully functional and professional-grade open-source BIM tool. I sincerely believe there is not much missing. If you would like to help me, head to one of the two crowdfunding platform, any help is welcome! Also, we now have a Bountysource account for the FreeCAD project (not just me), although at the moment the money received has not been used for anything yet.

Video

So this month's video will be about generic Arch/BIM objects, and how to get started with BIM modelling.

Wall blocks

One feature I had been working on before the release already, that was ready and just waiting to be merged is a wall blocks feature. Now, walls can be made to display as blocks instead of the normal, solid wall. You can specify the size of each block, the size of the joints, and an offset for the first and second rows. In blocks mode, the wall will also calculate how many entire and how many broken blocks it contains.

So far this works only for walls based on a single line or on a wire. In case of wires, it can give wrong situations at corners, like blocks not properly cut like in real life. Walls based on faces or on solids cannot display blocks yet. Subtractions are supported, but additions not. This all will be addressed in due time.

At least for simple wall cases, you can now do pretty accurate wall design based on concrete blocks or brick size, check interferences, easily get the number of blocks, etc. This is only a start of course, but I think it will allow well to see if this goes in the right direction or not.

UPDATE WIKI

BuildingPart

What I spent most of this month working on is unfortunately half a failure. But we shouldn't consider failures as less important than successes, they teach us a lot and are fundamental to get it right next time. Besides, as we are not totally stupid, we made things such as we can still reuse most of the stuff developed, so it is only a partial failure

Basically my idea was:

1) to make the Arch Floor object a bit more generic, allowing you to group BIM objects in different ways than just stacking building storeys. For example a lift, which traverses a whole building vertically, cannot be inside one particular storey. Or you must cut it in little pieces, which is illogical. Resuming, we need less restrictive ways to group building objects. There was also a discussion about what name such an object should have, right now my favorite is BuildingPart, as it says pretty clearly what that object is, and is semantically in sync with the general FreeCAD naming of things, specially given point 2 below.

2) Instead of being just a group, I wanted to make this new object based on the new App Part feature of FreeCAD, which is the base used in the PartDesign Body. The main advantage is that it is a mix between a group and a shape. It has a placement, that defines a "local coordinate system". The objects that you place inside such an object have their coordinates not anymore defined relative to the global (0,0,0) point, but to the placement of their host Part. So you can move and manipulate a Part like if it was a single object. This looked (and still looks) perfect for our BuildingPart. This also links to another idea we raised with Ryan some time ago, that we should be able to design buildings much more based on components, and that component should be treated like any other BIM object (or family in revitspeak), you should be able to make other objects based on it, etc. And it should be whatever you need it to be: A shipping container, a restroom stall, a lift machine, etc...

So far so good, The main problem is basically that the App Part is too restrictive, it doesn't allow a same object to be in several Parts, and doesn't allow cross-Part links, both things that are used pretty often in BIM models. So in the next month I'm going to look at how to solve that, probably by "forking" the App Part (which is fortunately an extension now, so in theory it shouldn't be hard) into a less restrictive version that we can use in our case.

But all the other stuff I developed for the BuildingPart object is still there (you can test it by using this branch or looking at this commit and will be easy to adapt to any solution we come up with, so this is not lost work.

Basically, the BuildingPart can show an "origin" mark, so you know where its (0,0,0) or "insertion" or "pivot" point is, it can display a level mark, it can be a clone of another BuildingPart, it can act as a floor/storey, or as a gathering of Arch Spaces, in which case it will compute areas (and later on other properties of spaces) and of course it has a Height property that can automatically set the heights of included walls and structures. Within the ArchFloor module there is also a python function to easily convert existing Floor objects to BuildingParts.

Other ideas I have planned is to make it behave as a WorkingPlane Proxy, so you can double-click it and automatically set the view and working plane and display of other BuildingParts according to it, and also make it automatically create a view in TechDraw, not sure yet if by creating an Arch SectionPlane automatically, or maybe try to using TechDraw views directly (and therefore stop relying on the ArchView), which is something else I want to experiment with anyway.

I think that will give us a pretty cool tool to work with, I dare to say better than many commercial counterparts I wished I had it ready this month, but it shouldn't take long.

Trash

Deleting things forever is something we don't want to do with our computer files, why do we need to do it in CAD/BIM apps? So now, in the BIM workbench, besides the standard "Delete" option, we also have a "Move to Trash" option, which will simply move selected objects to a "Trash" group (that will be created if not existing, you can rename and move if you want) and turn them off. There is no "Restore" option, I don't think that would be very practical because it might not be able to recreate the original links without destroying something, so I thought it safer to just let the user restore objects manually if needed, for now.

Anyway, since I implemented it, I find myself using it all the time (you never know if you won't need that window again later on), I'm curious to hear about you.

4-pane window

I added a new Window type too, which is a simple 4-pane sliding window. We use these a lot here in Brazil. I think we should add more prest types here... Remembering, of course, that the idea is not to have all possible window types listed here (that's the job of the library, see below), but let's say very common, or "archetype" window types. Any suggestion?

Library integration

If you have the Parts Library installed (easy to install via the addons manager), then window tool will now include all the doors and windows found in the library (inside Architectural Parts/Doors and Architectural Parts/Windows). You might find that some of these library objects don't respect all the conventions, for example their width doesn't update correctly, but these are easy fixes that we must add to the library objects at some point. The fact is, it becomes easier than ever to add new window and door presets, without a single line of code.

GSOC

This year, like the last two years, FreeCAD will be part of the Google Summer of Code program, together with our other open-source CAD frends BRL-CAD (who are the brain behind the whole affair), LibreCAD, StepCODE, OpenSCAD, LinuxCNC and Slic3r. This year, we have one one student, Kurt, who is a well-known community member and already participated last year. His project this year is about implementing and bettering configuration and packaging management in FreeCAD. This is a rather generic project, but that is a good thing because it is also flexible and adaptable, and can make a big difference in the way we manage to make releases, which, you will certainly agree, will be highly welcome.

When the coding period starts, Kurt's project will mostly "happen" on the forum, which is now the standard way we do GSOC projects at FreeCAD. I'll announce it here too, so stay tuned to watch him closely! As he is the only student, all eyes will be on him!

In case you are wondering like me, all our other CAD friends also had few students this year, and generally many other projects too. Maybe anything changed at Google? In any case, let's not depend too much on Google, and be happy with whatever they want to sponsor. I'm sure we'll have a great GSOC experience this year again.

In case you are wondering, the above image is the world-famous Google Summer Of Code Chocolate Table, that gets set up during the mentors meeting, of which I have been lucky to participate last year. Every participant must bring chocolate from her/his country, they all go on that table, and you can eat as much as you want of it during the week-end. Believe me, even with the best efforts, we were hardly able to eat half of it...

Women in FreeCAD

Last weekend I was giving a FreeCAD workshop at the FLISOL, and, although women's part increases in such events (more or less one third of participants and speakers were women, my own estimation) I read some tweets afterwards complaining about some gender discrimination and argueing. This reminded me that we're doing pretty bad at FreeCAD, all developers are men, sometimes a woman appears on the forum, and, although I don't think there were any gender discrimination, for some reason none of them stayed until now. I would very much like that to change, I'm not sure how yet but I'll try to come up with ideas... If you are a woman and know (or would learn) some python and would like to get into FreeCAD, please, we need you!


in categories  freecad  opensource  permalink:  472   posted on 10.04.2018 4:29
From Yorik

FreeCAD 0.17 is released

Hello everybody,

Finally, after two years of intense work, the FreeCAD community is happy and proud to announce the release 0.17 of FreeCAD. You can grab it at the usual places, either via the Downloads page or directly via the github release page. There are installers for Windows and Mac, and an AppImage for Linux. Our Ubuntu Stable PPA is also updated with the new version.

The list of changes and new features is big. Check the Release notes for a full dose. I will resume things a bit here, and, for once, I won't talk about BIM or Arch but about other workbenches. There is also a video showing the main highlights on the forum.

PartDesign

Basically the most fundamental change, and also the main reason why this release took so long to come, is that the PartDesign workbench has been drastically reworked, in preparation for upcoming Assembly system. As FreeCAD's father Jürgen once explained, the PartDesign workbench suffered from several flaws that prevented to implement Assemblies the way it needed to be. Several FreeCAD developers took upon themselves to dig into the already quite large PartDesign code and implement the necessary changes. This obviously caused a lot of new bugs, and it took a long time to bring it to a state where we feel it is suficently stable and solid for everybody to use.

The principal change is that now everything you do happens inside a Body. The Body is a hybrid between a container and a shape. It also contains many helpers such as planes or axes that you can use in different operations. The ultimate goal is that the body is what will allow for one FreeCAD file to be a part of an assembly in another file.

You might feel a bit lost when starting to use the new PartDesign, but fear not, after you pass through these new things, everything still works pretty much like before. And everybody who went through it agrees that it is much better than before.

Path

The Path workbench also got wildly extended. From its embrionary state in FreeCAD 0.16, it has now evolved into an increasingly impressive CAM platform. Yo have now a wide range of tools to perform CNC operations, several filling algorithms to fill areas, fin-tuning and gcode inspection tools and a voxel-based simulation tool like in your favorite commercial CAM software.

There is a long path to be done for Path yet, sorry about the bad joke, but it is no more an infant, it is now a real CAM tool, that can do the whole thing from the 3D model to the machining.

TechDraw

TechDraw is the new Drawing. It is another of these workbenches that has been carried successively by several developers, and on the way has gained impressive features. It still accepts the same templates as Drawing, has much finer control over aspect and linestyle than Drawing had, plus a load of new features: Most of the dimensionning tools of Drawing Dimensioning, hatching (both geometry-based and image-based), support of bitmap images, etc. But I kept the best for the end: The dimensions you add in TechDraw are parametric. You update the model, the TechDraw view updates too, and all the dimensions attached to it.

Addons

Finally, and not the least important, the number of new workbenches being developed outside of the FreeCAD official source code is growing frenetically and exponentially. FreeCAD 0.17 now features an easy Addon installer, that allows you to install any (or all, why not) of these juicy workbenches with a mouse click right from inside FreeCAD.

Go get it, it's free!

 


in categories  freecad  opensource  permalink:  460   posted on 29.03.2018 24:06
From Yorik

FreeCAD BIM development news - March 2018

I hope you noticed the small improvement in the title... It's not that I became suddenly a big fan of the "BIM" term, but really the word "Arch" is too narrow in todays construction field. Besides, as I explained last month, I am now starting to split the BIM stuff in FreeCAD in two parts: One is the Arch workbench that you already know, that stays integrated to FreeCAD, and that will carry all the "dirty stuff" (objects, tools, base functionality), and the other is the new BIM workbench which will contain only UI elements (wizards, managers, etc). Starting from FreeCAD v0.17, installing the BIM workbench is very easy with the addon manager.

Talking about v0.17, the release is a bit late (we wanted to do it before end of February), but bugs kept coming in, and we are fixing them all! So it got a bit delayed, but we are finally there. In the coming days we should have it released. I'm adding he latest translations from crowdin as we speak. You can already check what's new in the 0.17 release notes.

As always, thanks to everybody who is contributing to my crowdfunding campaign on Patreon or Liberapay. I am now more and more able to regularly dedicate a good portion of working hours per week to FreeCAD, that I try to balance between developing new stuff, fixing bugs, and do all kinds of maintenance tasks. The main focus, of course, is still to push BIM development forward. As soon as the 0.17 release is out, I have already a few features that are ready to merge into the main FreeCAD source code. More on this next month!

The video

Last month, I posted a first video introducing the Arch workbench. I made a new one this month, showing how to set things up and get started to do BIM with FreeCAD. Thanks for the many of you who left comments under the first video, this gives a lot of further ideas. Please keep going on!

One important thing I forgot to mention last time: There is no need to wait for me to make all these videos (Anyway, the idea is not to make a full course, rather toillustrate the concepts of how things work). There is already a lot of material on the internet, and specially the very impressive series of tutorials by Regis about FreeCAD and BIM, and other ways to do architecture and BIM work with free software like Blender. What you have there is a more than complete course of FreeCAD BIM, and for free... Amazing work Regis!

So, here is this month's video. Hope you'll like, please keep commenting!

The BIM workbench

While FreeCAD was in "feature freeze" mode this month, the new BIM workbench, being developed outside of the main FreeCAD source code, allowed me to keep working on some cool features there. There is not much of a revolution there yet, but I believe this is going in the right direction. What we have so far is this (keep in mind that all this is experimental, it can change in the future):

A welcome screen

This screen is shown to you the first time that you switch to the BIM workbench. The idea is to tell you, in a few words, "what to do next", and offer you to follow a tutorial (yet to be written). You can still show that window again anytime from menu Help -> Show welcome screen. I must think a bit more about the tutorial but the idea is to do like in games, where when you take the tutorial, you are usually playing the first chapter of the game, but with an assistance that tells you what to do.

If you pess OK, you go to the next step, which is:

The setup screen

The Preferences system of FreeCAD is becoming huge and complex. And some preferences get loaded only when the corresponding workbench is loaded. It is very hard for a newcomer to find what options he/she needs to set. So we have here a summarized and unified set of the most important preferences for BIM. Some are grouped, for example when you set your preferred text font, it will set all the places in the preferences where a text font can be configured, for example in Draft, Arch and TechDraw.

Project setup

This is a new dialog that allows you to quickly setup a BIM project. It will optionally create a new document, create a Site, a Building and a couple of Axes, Levels (the Floor object in Arch will soon be renamed to something less ambiguous, my favorite at the moment is "Level", although I would like to find a word that doesn't necessarily suggests that things must stack on top of each other, maybe Zone, or Cell?) and a rectangular outline of the building.

With that done, you have something to start building walls on. What you fill in that screen can be saved as a preset, so you can have several building templates around. The axes and outiline are linked, so moving the outline around will move the axes together, a good example of the powerful expression system of FreeCAD (check the Placement property of the axes).

Levels manager

This is a simple interface to manage the different levels (Floors currently) of your document. At the moment you can only do basic things such as changing their properties and add or remove levels, but the intent here is to add more dependent functionality to levels, like WP proxies, which would allow neat things like, upon double-clicking a level, hide all other levels, and set you in a configured view (for example a top view above the level plan). This would mimmick quite well how other BIM apps work, where you can isolate a particular level to only work in it.

Another idea I have is to have a section plane automatically associated with a level, and make it (optionally of course) cut the view above it when you select the level

Windows manager

This is a simple screen that allows you to manage all the windows and doors of your project. So far it doesn't do much more than list all windows and doors, and allow to group them by type or dimensions. But the idea of this screen is basically just that, allow you to have a clear view of all the windows and doors, see what is missing or wrong, and in the future, or course, allow you to export this to a spreadsheet.

The BIM workbench source code

If all this thrills you, I would encourage you to help me. Of course an easy way is to contribute to my Patreon or Librepay accounts, but I would also encourage you to help in other forms. There is more in several heads than in a single one, my grandmother used to say...

We have a forum thread where you can contribute to the discussion, but working directly with the source code is not hard. In a next report I will explain better how it is organized, but you have basically, for each tool, an .ui file which is the design of the dialog, made with QtDesigner (which is part of the QtCreator suite), and a corresponding .py file that has the code that runs "behind" the .ui dialog (ie. what happens when you click such button, or click on such item, etc..)

QtCreator is a complex application, but the QtDesigner inside is very simple to use, it is very easy to constructs dialog boxes with it. And when designing User Interfaces, a great deal of effort goes into thinking and constructing intuitive dialogs. This effort is often bigger than writing the code behind. So playing with these dialgos and proposing ideas with it would be helping the project tremedously, even if the code is to be written by someone else later on.

But the python code behind these BIM dialogs is not too complex either, have a look

Speckle

(image swallowed from the speckle.works blog)

Thanks to Ryan I discovered Speckle last month and got fascinated. It is a free & open-source 3D model server, a bit like BimServer, but, instead of being based on IFC, it is built for parametric 3D models. It is basically everything I wished BIMServer would be: It speaks json, a widely used transfer protocol, and it is totally system-agnostic. In it, you have collections of objects (streams), each object being a collection of properties, and that's it. The parametric "engine", that knows what to do with these, stays in the original application.

So for example, a cube would have a name, a text describing its type ("cube", for example), and length, width and height properties. That's all that would get stored on the Speckle server. But FreeCAD would know exactly what to do with such info. And so would Rhino, Blender and anything you would plug Speckle into. It is particularly well adapted to those so-called "visual programming" interface such as Grasshopper or Dynamo, of course, but a FreeCAD model could also be transferred to/from a Speckle model with almost 1:1 compatibility. This is something I experimented in IFC a while ago, that can be carried on here way further.

So I started working on a Speckle interface for FreeCAD (probably will be part of the WebTools workbench). I believe this can yield wild results...

That's it for this month, thanks again to everybody for your support, see you next month!


in categories  freecad  opensource  permalink:  457   posted on 20.03.2018 15:45
From Yorik
FreeCAD screenshot of the day...


in categories  freecad  opensource  permalink:  445   posted on 02.03.2018 1:33
From Yorik

FreeCAD Arch development news - February 2018

Hi all,

Time for our monthly development update. This month again, no new feature has landed in the FreeCAD codebase, because we are still in "feature freeze mode", which means no new feature (that might break something) can be added to the FreeCAD source code, only bug fixes.

We hoped to release version 0.17 in February, but, as usual, this has been delayed a bit. There are still some bugs remaining, and there is also some documentation missing. The whole community is working hard to fix this, so it won't take long and we will have a release with the documentation in a very good state, much better than it has ever been before.

Translations are also basically done, we have 16 languages over 90% translated and 5 100% done, which is more than we ever had in the past. It is still time to help us!

I have myself been busy touching all these areas, and also done more bugfixing in Arch and Draft. I think these two workbenches are getting pretty robust now, which is basically the level I wanted to reach at this point. My intention after the release is not to touch these features too much anymore, and concentrate on building better UI tools to manipulate them.

By the way, TechDraw is becoming more and more useful for BIM work, hopefully we will soon be able to retire the old section planes system for something much better... It is still a bit slow and not totally adapted to architecture/BIM (you must produce the elevation before the plan, for example), but those are all solvable issues. The results are very nice already...

The video

As promised last month, I tried to record a video this time. Let me know what you think of it, sorry about the non-professional quality, I'm not a professional youtuber yet I propose to do more later on, about specific parts of the Arch workbench.

Pionierswoning

Since I was in Europe last month to attend FOSDEM (read about it in my previous post, and the video of my talk is here), I also took the opportunity to visit the Pionierswoning (Pioneers housing), another WikiHouse-based construction that happened in the same time as the WikiLab (We even had a dummy "competition" to see who would finish first) and talk with Vincent and Ivar who are behind the project.

This was a very, very interesting visit. The Pionierswoning is part of a bigger experience in Almere, to build experimental tiny houses. The number of single-person houses is climbing strongly in the Netherlands, and this becomes a very real question to solve. On the same site as the Pionierswoning are 5 or 6 other tiny houses made for one person, all of them with different approaches and solutions, definitely a very interesting place to visit if you are in the area (it's only a 15 minutes train ride from Amsterdam).

The Pionierswoning itself is definitely a very interesting achievement. Contrarily to our WikiLab, where we tried to be didactical and keep the wooden construction as apparent as possible, the aim of the Pionierswoning was opposite, they try to show that it could make a house like any other. As a result, you don't see the WikiHouse structure anymore. Most solutions that they adopted as finishings, both inside and outside, follow the same direction. It is amazing to see two projects built basically on the same structure, give such different results.

And I must say, the finishings they did are gorgeous. While on the WikiLab we had principally to deal with very short money (the whole construction cost no more than 15000 EUR / 20000 USD), which led to drastically simple solutions, they made a point to demonstrate the validity of the WikiHouse technology for "day-to-day" construction.

The other interesting thing is that both them and us came to the same conclusions afterwards: If the built result is not particularily impressive, in either cases, it is the process that is potentially revolutionary. The fact that it is possible for non professional people to build their own house, without any super-human skills or equipment.

All of us also had to deal with a construction that had phases dones by volunteers and other phases done by professional builders, and we all think much more should have been done by the volunteers, and things should be organized in a manner that lets the volunteers finish the construction. It was very frustrating on both sides for the volunteers to participate to the building, feel all the excitment, only to have to leave the field at some point, to let the professional team finish the job.

The BIM workbench

This is an experiment I am currently working on, and that you can already test. It is basicalyl an effort to re-think the whole organization of BIM tools and workflow in FreeCAD, with the aim of making it easier to learn and use. The basic idea is not to modify any of the existing tools of FreeCAD, just gather them in a more intuitive way, and provide a couple of useful macros to glue it all.

If using FreeCAD 0.17, you can test it immediately by installing it from menu Tools->Addon Manager. Or manually from here

So this workbench is, at the moment, a collection of tools from several workbenches: Draft, Arch, Part, Flamingo and Fasteners. There will be more later on. On top of that, a simple "setup" screen that will set all the most common FreeCAD settings used for BIM, and later on a couple of interesting macros from the Macros repository.

As I often say in these reports, building User Interfaces for BIM or CAD work is a very complicated task. Simple tools, like Sketchup or TinkerCAD have very good, simple and intuitive user interfaces. In FreeCAD, especially when dealing with BIM, we deal with much more complex situations. If we look around, other BIM apps also have very complex interfaces, and the learning curve is also steep. And when you look at, for example, BIM plugins for Sketchup, you also see that the complexity raises very quickly.

So there is no easy, straightforward answer to "solve" the steep learning curve of FreeCAD. But that doesn't mean nothing can be done either. But it needs some experimentation and step-by-step improvements. That is precisely what I want to achieve with this workbench: Find the good parts that run well, identify what doesn't work as smooth, and what can be done. It's all about details. The rest, the technical part, will stay in Arch.

I had this aim for the Arch workbench at first, to be the "all-in-one" BIM solution of FreeCAD. But the exponential growth of the addons being developed around FreeCAD, made me rethink that approach. The Arch tools, as said above, begin to be reasonably solid. They lack some polish, and better interface. That will be a main focus point for me this year. But it might be time to also think better in more global "BIM workflow". I have no clear idea of what that would be, that is the reason of existence of this new workbench.

Another motivation behind this is also to split things more between the "technical" part (the Arch Workbench), and the "interface" part (the BIM Workbench), and make the latter much more simple, so hopefully more people will be able to contribute to it, without having to merge much into the FreeCAD source code.

So, please use it, test it, be aware that it willbe an experimental test bed so it might change often, and share with me any thought you might have (that is reasonably doable, please!) to make the BIM workflow better, and the learning curve smoother.

Cheers!


in categories  freecad  opensource  permalink:  437   posted on 04.02.2018 21:49
From Yorik

FreeCAD Arch development news - January 2018

Hi everybody,

Sorry about the late news again, but it would have been a pity not to include a fresh feedback from the FOSDEM that happened this weekend. So here are the main topics that happened in the last month. Once again, thanks a million to eveybody who helps the effort by contributing to my Patreon campaign or on LibrePay. Not only it's highly appreciated, but it allows to do more and more long-term planning, and 2018 promises to be rich in BIM features in FreeCAD. I also believe we are really closing the gap with commercial BIM apps out there.

FreeCAD 0.17 release

Since FreeCAD is close to the next official release, that we plan to unleash this month, the development is now in "feature-freeze mode", which means nobody is adding new features (to avoid the risk to break anything and introduce new bugs) and instead concentrates on fixing bugs. Consequently, this month was pretty low on new features, so there won't be much appetizing BIM stuff to show here. On the other hand it was intense in coding and bug fixing.

Basically I have been busy thoroughly testing the BIM functions and workflow in FreeCAD, and fixed a lot of bugs on the way. I think it is now pretty stable, more than it has ever been in the past. Also all the main Arch/BIM objects (Walls, structures, windows, etc...) now have their base code pretty well consolidated and reliable, so the next step, which is working on making them a bit more user-friendly, can now begin.

To do this testing, I have built 3 house projects with FreeCAD. The internal organization of these files differs a bit from one to the other, but they are all pretty simple. I think they show well the "stage" you can now reach with FreeCAD easily and reliably, and extract from it all the data you need (2D drawings, decent IFC files, spreadsheets/schedules, and mesh models for rendering). Not yet a full large-scale building with all its details, but we'll get there.

In any case this is already a full BIM workflow, all objects are parametric, all export to IFC with all the properties you wish to add to them, everything can be modified, and the 2D drawings update automatically (or not if you choose not to, to have a faster workflow).

You will notice that these models don't use TechDraw for the 2D views, but that is because I specifically needed DXF files from these 2D views, which are at the moment easier to produce with the Draft workbench.

But that doesn't mean TechDraw is not up to the task, far from it. If you wish to produce good-looking documents right from within FreeCAD, give it a try, it works impressively well already.

If you would lik to have a look at the files, here are House 1, House 2, and House 3.

There are also several interesting things that are available to you due to the very generic nature of FreeCAD, that are sometimes hard to obtain in commercial apps, such as mixing 2D and 3D elements in your models. You can easily keep these 2D elements out of IFC export (or not, your choice), simply by grouping things the way you like best. In FreeCAD, you don't really need to use Floors/Storeys/Levels. You can, if you need (for example to produce sounder IFC files), but you can perfectly well stick with groups. I often think BIM and IFC files would give much less headache if everything was simply properly named and organized.

The whole cycle of placing section planes, getting 2D views from it and exporting them to DXF/DWG is now pretty straightforward and hasn't given me anymore problems recently. Draft Shape2DViews objects now have a switch to disable automatic recompute, so they won't be recalculated automatically everytime you change an object, which can have a huge impact on performance if you have a lot of views. You can then recompute them manually whenever you want.

Help needed!

As we are coming close to our 0.17 release, there are a few areas which would welcome some help, if you have a bit of time to spare. The main one is to finish the translations, so we can include them in the release files. As I'm writing this, 6 languages are fully done already, and 10 others are at more than 90%. The other 34 also need some love. We won't wait for all of them to reach 100% ofcourse, but the more we get, the better!

There is also currently heavy work being done on the documentation to update it with all the latest changes that have been added mainly to FEM, Path and TechDraw, and to make it easier for users of earlier versions to make the transition to the new Part Design workflow. If you know some of these tools reasonably well, please help us to make sure the documentation is accurate and up to date!

FOSDEM

So this weekend I was at the FOSDEM in Brussels, and gave a talk about the WikiLab project we've been doing last year, and how FreeCAD was used in it. The talk went pretty well, lots of people in the room (some FreeCAD forum members were there!), and very interesting questions raised. Thanks to FOSDEM blazing fast video processing, the recording of the talk is already available (the slides are here):

Right-click -> Play to play the video above or watch it here

Other than that, I watched a couple of talks (a big part is online already, browse here), hanged around the different booths, and because the FOSDEM is so huge, couldn't meet almost anybody I knew was there.

I got a bit surprised how the FOSDEM is still predominently a male event (around 95% males, my own estimation), while many IT/open source events around the world (FISL in Brazil for example) are very close to 50/50%. Mystery... But there were fries!

That's it for this month, stay tuned for the FreeCAD 0.17 release annoucement (or follow it on the forum), and after that, expect new BIM features to land in!