Another approach to assembly solver (A2plus)

Discussion about the development of the Assembly workbench.
User avatar
easyw-fc
Posts: 2928
Joined: Thu Jul 09, 2015 9:34 am

Re: Another approach to assembly solver (assembly2relaunch)

Postby easyw-fc » Fri Jun 15, 2018 9:38 am

kbwbe wrote:
Fri Jun 15, 2018 9:14 am
Getting same performance as SolveSpace will be hard. Pure Python working together with FreeCAD's basic api will be fast, but not as fast as SolveSpace.
SolveSpace has been kept as python add-on also in A3 because of its license, GPL and not LGPL as FC would require to be directly included.
So probably you could get similar performances. :D
kbwbe wrote:
Fri Jun 15, 2018 9:14 am
Enough. I concentrate on the solver..
Thx :D
kbwbe
Posts: 986
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (assembly2relaunch)

Postby kbwbe » Fri Jun 15, 2018 2:58 pm

Hello Maurice,

next version ready. PointIdentity-Constraint newly added. ZIP attached.
For me, in first tests, it works with fc0.17
pointIdent.png
pointIdent.png (87.28 KiB) Viewed 1933 times
Attachments
a2plus-2018-06-15-01.zip
(485.25 KiB) Downloaded 41 times
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.48, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
User avatar
easyw-fc
Posts: 2928
Joined: Thu Jul 09, 2015 9:34 am

Re: Another approach to assembly solver (assembly2relaunch)

Postby easyw-fc » Fri Jun 15, 2018 3:39 pm

kbwbe wrote:
Fri Jun 15, 2018 2:58 pm
Hello Maurice,

next version ready. PointIdentity-Constraint newly added. ZIP attached.
For me, in first tests, it works with fc0.17
+1 nice addition :)
kbwbe
Posts: 986
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (assembly2relaunch)

Postby kbwbe » Sat Jun 16, 2018 3:07 pm

New Version attached.

solver improvements:
- new constraint point on plane

also done:
- some bugfixes in workbench

totally working constraints as there are now:
- point identity
- point on plane
- circlar edge constraint
- plane constraint
- axial constraint

following soon:
- point on line

after that:
- warning if solver cannot find solution
- undo of last solving

New constraint point on plane is working for me in a2plus-workbench..
Testers welcome !

pointOnPlane.png
pointOnPlane.png (103.38 KiB) Viewed 1898 times
kbwbe
Attachments
a2plus-2018-06-16-01.zip
(485.62 KiB) Downloaded 42 times
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.48, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
Jee-Bee
Posts: 2188
Joined: Tue Jun 16, 2015 10:32 am
Location: Netherlands

Re: Another approach to assembly solver (assembly2relaunch)

Postby Jee-Bee » Sat Jun 16, 2018 3:18 pm

Nice to see some work done in this!
jbe
Posts: 279
Joined: Sun Nov 10, 2013 4:18 pm
Location: France, Châteauroux

Re: Another approach to assembly solver (assembly2relaunch)

Postby jbe » Sun Jun 17, 2018 9:17 am

1 Can we use "sub assemby" ?

2 Do you think than we can do simulation with your new assembly ?

3 Could you add a new tool : when all your assembly is done, export the file for a 3D printer ( make an OR logic between all the part...)

Congratulation for your work.
kbwbe
Posts: 986
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (assembly2relaunch)

Postby kbwbe » Sun Jun 17, 2018 9:53 am

jbe wrote:
Sun Jun 17, 2018 9:17 am
1 Can we use "sub assemby" ?
No problem if your are still using fc0.16. The workbench was designed for that. For fc0.17 i still have not tested. Will do that after rough finishing the WB.
Make good backup of your files. Test it and please give feedback. There will be perhaps some errors shown in the log.
jbe wrote:
Sun Jun 17, 2018 9:17 am
2 Do you think than we can do simulation with your new assembly ?
When ready, it should be possible. Perhaps a little bit slow, since everything is programmed by pure python

jbe wrote:
Sun Jun 17, 2018 9:17 am
3 Could you add a new tool : when all your assembly is done, export the file for a 3D printer ( make an OR logic between all the part...)
You can try the "SAS" Button (SimpleAssemblyShape), which creates a single compound of the whole assenbly. You will find it then in the object tree. But do not really know wether a compound does work for 3D printing. It is not realy a solid i think. Simply do a test.

kbwbe
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.48, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
jbe
Posts: 279
Joined: Sun Nov 10, 2013 4:18 pm
Location: France, Châteauroux

Re: Another approach to assembly solver (assembly2relaunch)

Postby jbe » Sun Jun 17, 2018 4:36 pm

Where install a2plus, on Ubuntu 16.04 ?

Thanks
kbwbe
Posts: 986
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (assembly2relaunch)

Postby kbwbe » Sun Jun 17, 2018 5:39 pm

As promised, here is a new version, ZIP attached...

New Constraint:
- pointOnLine

In some quicktests, it's working
.
.
pointOnLine-1.png
pointOnLine-1.png (95.04 KiB) Viewed 1790 times
.
.
kbwbe
Attachments
a2plus-2018-06-17-01.zip
(488.02 KiB) Downloaded 41 times
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.48, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench
kbwbe
Posts: 986
Joined: Tue Apr 10, 2018 3:12 pm
Location: Germany, near Köln (Cologne)

Re: Another approach to assembly solver (assembly2relaunch)

Postby kbwbe » Sun Jun 17, 2018 5:46 pm

jbe wrote:
Sun Jun 17, 2018 4:36 pm
Where install a2plus, on Ubuntu 16.04 ?

Thanks
Unzip ZIP-archive. rename, if necessary the unzipped folder to "a2plus"

copy complete folder to:

/home/YOURUSERNAME/.FreeCAD/Mod/
(replace YOURUSERNAME with your account )

After restarting FreeCAD, "a2p" should appear within available workbenches

Which FreeCAD Version do you use ?

PS: THIS IS AN VERY EARLY TESTVERSION, DON'T DO IMPORTANT WORK WITH IT !

kbwbe
KBWBE

https://github.com/kbwbe/A2plus
latest release: v0.4.48, installable via FreeCAD's addon manager
Tutorial: gripper assembly https://www.youtube.com/watch?v=QMxcQ5tssWk
Documentation: https://www.freecadweb.org/wiki/A2plus_Workbench