Assembly3 preview

Discussion about the development of the Assembly workbench.
Matael
Posts: 82
Joined: Tue Mar 01, 2016 10:50 pm
Location: France

Re: Assembly3 preview

Postby Matael » Thu Apr 19, 2018 12:12 pm

realthunder wrote:
Thu Apr 19, 2018 4:22 am
Matael wrote:
Wed Apr 18, 2018 10:09 am
I tried several orientation, I tried to inverse the order of selection without success. I don't really understand because, even if it was not always easy to create the constraints (because of this error) moving the bars had made the constraints to work.

Any suggestion ?
Can you please attach your file here. I'll take a look.
Yes of course !

Here are the assembly and the different parts (created in part design workbench)

OS: Ubuntu 16.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.5235 (Git shallow) AppImage
Build type: None
Branch: LinkStage3
Hash: ccaa87e12aaadbd3106607fc503542a863b742da
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 7.1.0
Locale: English/UnitedStates (en_US)
Attachments
portique.zip
(52.89 KiB) Downloaded 13 times
alberich
Posts: 48
Joined: Thu Aug 17, 2017 2:09 pm
Location: Texas

Re: Assembly3 preview

Postby alberich » Thu Apr 19, 2018 12:26 pm

Realthunder,

I just downloaded your 0.5 appimage. I get this message in the Report view on startup:

Code: Select all

<asm3.main> 0.179884 - init_gui.py(11): failed to import sympy: No module named sympy
I have the latest sympy and scipy installed. Is this something I need to worry about?

Code: Select all

OS: Ubuntu 16.04.4 LTS
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.5235 (Git shallow) AppImage
Build type: None
Branch: LinkStage3
Hash: ccaa87e12aaadbd3106607fc503542a863b742da
Python version: 2.7.6
Qt version: 4.8.6
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)
User avatar
bill
Posts: 376
Joined: Fri Jan 09, 2015 9:25 pm

Re: Assembly3 preview

Postby bill » Thu Apr 19, 2018 12:50 pm

realthunder wrote:
Thu Apr 19, 2018 4:16 am
First, new version is released. This marks the ...
If you would; it would be so much easier to reconcile the latest Assembly3 image if a LINK(s) was posted in your forum footer. :D

Just a suggestion! Thanks

P.S.: This really applies to any/all developers HOT DEVELOPMENT item!
realthunder
Posts: 1161
Joined: Tue Jan 03, 2017 10:55 am

Re: Assembly3 preview

Postby realthunder » Fri Apr 20, 2018 1:29 am

Matael wrote:
Thu Apr 19, 2018 12:12 pm
Yes of course !

Here are the assembly and the different parts (created in part design workbench)
I just tested your files, and found some bugs caused by the new topological name. Ironically, the bug is in my Link view provider. I'll most likely release a bug fix version very soon.

Anyway, those bugs are not actually related to your failed constraints. Your assembly contains too many redundant constraints. The solver can handle some redundancy, but only to some degree. Once you have too many of them, the solver start to fail, even though the newly added ones should clearly work.

Here are a few of my suggestions. First, when you build an assembly, try to build it like in the real world. I mean you don't have any fixation in your models, no holes, no slots. There is no way to fix it in the real world. And when you try it in the Assembly3, you are forced to use some inappropriate constraints because you don't have those fixation in your model.

Second, if you have many parts, it helps a lot to organize it as sub-assemblies. It'll make the solver work faster, too. Because, once a sub-assembly is solved, the solver can simply treat it as a fixed part when assembly it in the main assembly.
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
realthunder
Posts: 1161
Joined: Tue Jan 03, 2017 10:55 am

Re: Assembly3 preview

Postby realthunder » Fri Apr 20, 2018 1:30 am

bill wrote:
Thu Apr 19, 2018 12:50 pm
realthunder wrote:
Thu Apr 19, 2018 4:16 am
First, new version is released. This marks the ...
If you would; it would be so much easier to reconcile the latest Assembly3 image if a LINK(s) was posted in your forum footer. :D

Just a suggestion! Thanks

P.S.: This really applies to any/all developers HOT DEVELOPMENT item!
Nice one. I'll add it right away!
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
realthunder
Posts: 1161
Joined: Tue Jan 03, 2017 10:55 am

Re: Assembly3 preview

Postby realthunder » Fri Apr 20, 2018 1:40 am

alberich wrote:
Thu Apr 19, 2018 12:26 pm
I just downloaded your 0.5 appimage. I get this message in the Report view on startup:
No need to worry. Since you are using an appimage, it only uses anything preinstalled inside. So it won't find your own sympy installation. It'll use the SolveSpace solver by default. I'll mute that warning in the future.
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
Matael
Posts: 82
Joined: Tue Mar 01, 2016 10:50 pm
Location: France

Re: Assembly3 preview

Postby Matael » Fri Apr 20, 2018 9:56 am

realthunder wrote:
Fri Apr 20, 2018 1:29 am
]I just tested your files, and found some bugs caused by the new topological name. Ironically, the bug is in my Link view provider. I'll most likely release a bug fix version very soon.
glad to have raised a bug ;-)
Anyway, those bugs are not actually related to your failed constraints. Your assembly contains too many redundant constraints. The solver can handle some redundancy, but only to some degree. Once you have too many of them, the solver start to fail, even though the newly added ones should clearly work.
Ok, I'll try to use more conventional constraints. (This mistake was made because I didn't found the "plane alignment" constraint but that's my bad)
Here are a few of my suggestions. First, when you build an assembly, try to build it like in the real world. I mean you don't have any fixation in your models, no holes, no slots. There is no way to fix it in the real world. And when you try it in the Assembly3, you are forced to use some inappropriate constraints because you don't have those fixation in your model.
Actually, the only thing missing are some shelf brackets. I modelised in a really simple way some profiles, which look like this : https://shop.hpceurope.com/an/produit.a ... %20housing . So indeed there is no hole as you can make as you want (advantage : highly adjustable and quite standard, disadvantage : not a good precision)
Second, if you have many parts, it helps a lot to organize it as sub-assemblies. It'll make the solver work faster, too. Because, once a sub-assembly is solved, the solver can simply treat it as a fixed part when assembly it in the main assembly.
It actually doesn't really fit my needs, because seeing sub-assemblies will be really artificial, but I'll keep it in mind.
If you want me to try to use sub assemblies just to test, I can do it (I can have 3 different sub assemblies, and in the final assemblie 4 sub assemblies
realthunder
Posts: 1161
Joined: Tue Jan 03, 2017 10:55 am

Re: Assembly3 preview

Postby realthunder » Fri Apr 20, 2018 10:13 am

Matael wrote:
Fri Apr 20, 2018 9:56 am
Actually, the only thing missing are some shelf brackets. I modelised in a really simple way some profiles, which look like this : https://shop.hpceurope.com/an/produit.a ... %20housing . So indeed there is no hole as you can make as you want (advantage : highly adjustable and quite standard, disadvantage : not a good precision)
I see. I think you can assembly the whole thing with nothing but the plane alignment constraint. The plane alignment constraint has a property named 'Offset' to let you customize your positions. Three plane alignment constraint for each pair of parts can completely fix them in any relative position. Be aware though, three plane constraints is in fact over constraining the parts. The solver can handle some redundancy. In case it fails, you can try set the Assembly container's 'AutoRelex' property to see if it helps.

About the sub-assembly, think it this way. For these kind of DIY product, you'll need some kind of assemble instruction. You treat each manual page as an sub-assembly. This will make it easy for you to later on trace back the parameters, like the offset value mentioned above.
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal
Matael
Posts: 82
Joined: Tue Mar 01, 2016 10:50 pm
Location: France

Re: Assembly3 preview

Postby Matael » Fri Apr 20, 2018 10:36 am

realthunder wrote:
Fri Apr 20, 2018 10:13 am
]I see. I think you can assembly the whole thing with nothing but the plane alignment constraint. The plane alignment constraint has a property named 'Offset' to let you customize your positions. Three plane alignment constraint for each pair of parts can completely fix them in any relative position. Be aware though, three plane constraints is in fact over constraining the parts. The solver can handle some redundancy. In case it fails, you can try set the Assembly container's 'AutoRelex' property to see if it helps.
thank's for the tips ! I will keep the "AutoRelex" in mind. I might not use it here, but I think in some future project, it will be really usefull!
About the sub-assembly, think it this way. For these kind of DIY product, you'll need some kind of assemble instruction. You treat each manual page as an sub-assembly. This will make it easy for you to later on trace back the parameters, like the offset value mentioned above.
I think I got it, so I will first try to make a "savage" assemblie and then I will redo it with sub assemblies.

BTW, I noticed 3 "bugs"
First and I think easy one to fix, is that when you select a face, every edges more the face are highlighted. It wasn't the case in the previous release.
2018-04-20-122530_751x440_scrot.png
2018-04-20-122530_751x440_scrot.png (12.29 KiB) Viewed 342 times

Second that I can't reproduce (and that have really no consequencies but I report it, just in case) is that after creating constraints, all the faces I used were highlighted in red (magenta?) and my model looked like a shrimp. Restarting FreeCAD solved it, and as I can't reproduce...
2018-04-20-120628_1756x1003_scrot.png
2018-04-20-120628_1756x1003_scrot.png (164.7 KiB) Viewed 342 times

Last one, more disturbing, is that I cant select a face of a 2 similar face.
I joined the files, like that you can test it. (I think sub assemblies should solve the problem, I will try just after that post)
I want to make a plan alignment constraint between the two part highlighted. To Highlight them, I cheated, and selected the face to constraint for the first one, and an edge for the second
2018-04-20-123255_386x293_scrot.png
2018-04-20-123255_386x293_scrot.png (9.31 KiB) Viewed 342 times
Attachments
portique.zip
(60.49 KiB) Downloaded 9 times
realthunder
Posts: 1161
Joined: Tue Jan 03, 2017 10:55 am

Re: Assembly3 preview

Postby realthunder » Fri Apr 20, 2018 10:42 am

Matael wrote:
Fri Apr 20, 2018 10:36 am
BTW, I noticed 3 "bugs"
These bugs are related. And I've already fixed it. I'll release a bug fix version very soon. Stay tuned.
Try Assembly3 (latest version 0.10.2) along with my custom build of FreeCAD at here.
And if you'd like to show your support, you can donate through patreon, liberapay, or paypal