A user's perspective on the state of assembly

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
xevious
Posts: 1
Joined: Sat Jun 20, 2020 4:38 am

A user's perspective on the state of assembly

Postby xevious » Sat Jun 20, 2020 4:58 am

I want to preface this by expressing my extreme gratitude to all the developers who contribute to making FreeCAD such an amazing application.

I understand that there are very few active developers, so I hope this doesn't come across as ungrateful in any way: I understand the value of trying competing implementations, but I think there's been enough experimentation at this point. The developers of the separate implementations should team up, select the best features from each, and create the official Assembly workbench.

Over time, I have had to either completely redo my designs or retain old versions of FreeCAD in order to be able to open old files. I've got designs based on Assembly2, A2plus, and one incomplete model made with Assembly3. I found out about Assembly4 shortly after I started the one that uses Assembly3 and discovering that there was yet another Assembly implementation made me question whether it was even a good idea to start on that design, since it's unlikely I'll be able to open the file without jumping through hoops in a year or two.

I really enjoy using FreeCAD and would like to use it for all of my designs. I'm only able to use it for designing simple parts, though, since I feel like it's just a matter of time before files made with any assembly workbench that's currently available will be useless. It's essentially a waste of time to learn any of the assembly methods that are currently available in FreeCAD.
vocx
Posts: 5206
Joined: Thu Oct 18, 2018 9:18 pm

Re: A user's perspective on the state of assembly

Postby vocx » Mon Jun 22, 2020 1:01 am

xevious wrote:
Sat Jun 20, 2020 4:58 am
... It's essentially a waste of time to learn any of the assembly methods that are currently available in FreeCAD.
Negative. The reason there are different implementations is because there are different ideas on how to achieve a particular assembly result. The Assembly2 method is the oldest which evolved into A2plus. Assembly3 has around 3 years of development, and Assembly4 around 1.5 years. That's a very short time of testing for the newest assembly workbenches (3 and 4); they aren't well tested in all situations; they are still under development, mind you. So, you currently cannot tell which is the "winning" paradigm. Moreover, the paradigms are somewhat different (solver vs. geometrical expressions) so it's not as easy as just picking all tools and putting them all together.

It's free software, the best solution will rise to the top, but just like in CAD modelling itself, there are different ways to achieve a certain result. There is no unique way of doing it. This is all driven by the community. You don't help the community if you don't contribute by at least testing the different solutions. It may be a waste of time for you, but then you don't have a saying on what is better or worse. If you are just a spectator, then you have no say on it. Participate.
Always add the important information to your posts if you need help. Also see Tutorials and Video tutorials.
To support the documentation effort, and code development, your donation is appreciated: liberapay.com/FreeCAD.
User avatar
Zolko
Posts: 1106
Joined: Mon Dec 17, 2018 10:02 am

Re: A user's perspective on the state of assembly

Postby Zolko » Mon Jun 22, 2020 11:24 am

xevious wrote:
Sat Jun 20, 2020 4:58 am
select the best features from each
that's actually a good idea, would-you please be so kind and tell us what they are ?
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here
triplus
Posts: 9475
Joined: Mon Dec 12, 2011 4:45 pm

Re: A user's perspective on the state of assembly

Postby triplus » Fri Jul 31, 2020 2:55 am

Hi @xevious

In general your idea sounds good but in practice there will likely be competing assembly modules for years to come. I guess we can call that fragmentation, having its pros and cons. What might happen is to decide at some point and to upstream some functionality, as seen in different assembly oriented modules. Especially if FreeCAD native constraint solver would gain 3D support. In that case i assume a few traditional assembly constraints would be added to Assembly module, likely some concepts as seen in Assembly 4, the rest likely being available from external modules. What i am trying to say is FreeCAD assembly capabilities looked much different in 2010, compared to 2020. Likely it is safe to assume this area will evolve heavily, by the time we reach 2030 and beyond. Hence managing a project life cycle, through having a strategy, on what version of FreeCAD and modules one uses in a project. Things will likely stay like that in the foreseeable future.

P.S. On the plus side, you can now assemble with FreeCAD in a rather straightforward fashion, developers working in this area are responding to feedback. Hard to ask for more.