Assembly 4 workbench

Discussion about the development of the Assembly workbench.
User avatar
Zolko
Posts: 1182
Joined: Mon Dec 17, 2018 10:02 am

Re: Assembly 4 workbench

Postby Zolko » Thu Jun 18, 2020 3:09 pm

WayofWood wrote:
Mon Jun 15, 2020 6:53 pm
I extended the code a little bit:
that's cool. Could you explain a little how we could include this into the existing code ? I'm in no way a specialist of BoM and cut-list, so I don't really know the desired workflow.
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here
User avatar
WayofWood
Posts: 38
Joined: Mon Nov 26, 2018 4:59 pm

Re: Assembly 4 workbench

Postby WayofWood » Fri Jun 19, 2020 4:42 pm

Zolko wrote:
Thu Jun 18, 2020 3:09 pm
WayofWood wrote:
Mon Jun 15, 2020 6:53 pm
I extended the code a little bit:
that's cool. Could you explain a little how we could include this into the existing code ? I'm in no way a specialist of BoM and cut-list, so I don't really know the desired workflow.
I would have integrated it into the existing code - it's just that I honestly don't understand the entire Python Gui and OO stuff well enough to change the existing BOM file. Let me try to explain how I would envision the workflow:

I would add the code from the A2+ workbench to add a Partinfo table. This code (https://www.google.com/search?client=ub ... 8&oe=utf-8) could be copied 1:1 with the slight modification that the partinfo object would need to be created within the Assebmly4 model -- not within the toplevel of the document. I find the tables quite convenient to copy the ebay URL, the price, etc. and I would assume that there has been quite a bit of user feedback been collected in A2+.

The generation of the actual BOM is the quite easy: One hits a button, a file save as dialogue requests the filename and the csv file would be written to a file:

Code: Select all

a = Partlist(FreeCAD.ActiveDocument.getObject("Model"), 0)
t = dictoarr(a)
fileName = whateverfunctionisusedtogetafilename() # :-)
if fileName:
	with open(fileName, 'w') as csvfile:
	    writer = csv.writer(csvfile, delimiter="\t")
	    writer.writerows(t)


It would write a lot of information from the partlist table as well as the variables so that everybody should find the data they need.

Would that make sense?
User avatar
Zolko
Posts: 1182
Joined: Mon Dec 17, 2018 10:02 am

Re: Assembly 4 workbench

Postby Zolko » Fri Jun 19, 2020 11:39 pm

Hello,

I'm pleased to announce that a new version of Assembly 4 has been released, v0.9.5, with a new measurement tool, completely rewritten from the Caliper of the Manipulator WB. This tool can now measure almost everything that you throw at it. I'd be happy if you could test it and report all problems.


There is also some preliminary functionality for BoM and Part Info:

WayofWood wrote:
Fri Jun 19, 2020 4:42 pm
I would add the code from the A2+ workbench to add a Partinfo table.

The generation of the actual BOM is the quite easy: One hits a button, a file save as dialogue requests the filename and the csv file would be written to a file
Instead of a spreadsheet, I added the info directly as property to the Part (works also for Bodies). This is still very early work in progress. I'm really not used to cut-lists and part-lists and BoM-s, so all help and suggestions would be welcome.
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here
fc_tofu
Posts: 654
Joined: Sun Jan 05, 2020 4:56 pm

Re: Assembly 4 workbench

Postby fc_tofu » Sat Jun 20, 2020 9:07 am

Hello, @zolko,
As my final step in usual Assembly4 workflow, to hide LCS one by one is a little tedious.
So, would you add a new command for future release, "Show/hide All LCS" ?

I know in assembly project there are also LCS made not by Assembly4, ie, default LCS of a PartDesign body.
I have not thought very clear how could the suggested "Show/hide All LCS" neglect non-Asm4 LCS.

Hope other people here also give advices.
drmacro
Posts: 2322
Joined: Sun Mar 02, 2014 4:35 pm

Re: Assembly 4 workbench

Postby drmacro » Sat Jun 20, 2020 5:51 pm

Some experiences with the latest A4 release and the daily build.

Not really sure if what I saw were interrelated...or not. :?

I put the development zip from the other day in to test. Did some quick tests and made the report the other day. Promptly forgot I had replaced the /.FreeCAD/Mod/Assembly4/ folder. Since have done daily build updates.

Today I loaded up an assembly I'd done over this period. Even though it loaded the assembly and did the usual partial load of the part files (or even if I had the part files loaded) it did not show any of the LCS's from the part files. (So, any attempt to move a part offered no part LCS's to choose, or anything other than the Parent Assembly & it's LCS.) It also did not show any of the parts, or newly loaded additional parts when attempting to link a part.

I then used the Addon manager to install the latest A4 (measure tool, BOM...) and things are back to normal.

On a side note: I have a TechDraw page in the assembly file. And when I do a section view I get this warning:

Code: Select all

DVP::extractFaces - SectionView -Can't make faces from projected edges
I mention it because I'm not sure what this means and it only happens in the section view in the assembly. (and it happens on every recompute.) I did note the section origin was shifted off the y axis by -.603mm, don't know where that came from either... The warning happens even after the origin is set to 0.00.
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."

My beginners, written treatise: Learning FreeCAD
User avatar
WayofWood
Posts: 38
Joined: Mon Nov 26, 2018 4:59 pm

Re: Assembly 4 workbench

Postby WayofWood » Sat Jun 20, 2020 8:42 pm

Zolko wrote:
Fri Jun 19, 2020 11:39 pm
Instead of a spreadsheet, I added the info directly as property to the Part (works also for Bodies). This is still very early work in progress. I'm really not used to cut-lists and part-lists and BoM-s, so all help and suggestions would be welcome.
I am clearly not expert when it comes to BOMs. At the end I think it's mainly personal taste if it is a spreadsheet or a property. I think in any case it would be beneficial if a couple of configurable field names (like supplier, product name, price, etc.) would be given as a template. Otherwise there is a risk that "suplier" is not correctly matched and it's just more typing.

The number of clicks would also be the one objective measure for a spreadsheet. When I fill out the part info I usually have the supplier website in a browser and the spreadsheet in the other window. I then copy name, URL, price, etc. one by one. With the spreadsheet I can copy the value directly - with a variable or property I would have one more mouse click to do ... ;)
User avatar
OficineRobotica
Posts: 352
Joined: Thu Feb 21, 2019 8:17 am

Re: Assembly 4 workbench

Postby OficineRobotica » Sat Jun 20, 2020 10:53 pm

Zolko wrote:
Tue Jun 16, 2020 3:21 pm
-this is more of a trunk version small usability issue. The Icons for create LCS, datum plane, datum axis etc in part should be more "colorful" when active. There is little to no contrast between states especially when using a dark style sheet.
If you can propose something I'd be glad to include it
The difference is subtle on the small scale of the icons in the toolbar but significant , at least for me, for giving the hint of a active or inactive icon during editing.I'm still not 100% happy with how they look but it seems to work for me for now. I'vd done nothing special, just aded some stroke of color to the icons.
example.png
example.png (794.14 KiB) Viewed 1673 times
modified_Icons.zip
(13.88 KiB) Downloaded 15 times
DDM
Posts: 85
Joined: Tue Feb 05, 2019 9:06 am

Re: Assembly 4 workbench

Postby DDM » Sun Jun 21, 2020 8:59 pm

Instead of a spreadsheet, I added the info directly as property to the Part (works also for Bodies). This is still very early work in progress. I'm really not used to cut-lists and part-lists and BoM-s, so all help and suggestions would be welcome.
For my job (strcutural steel elements for buildings) I create BOM like in the example attached.

Steel manufacturing companies generally ask this:

1) BOM for single parts (for cutting list and material order)
2) BOM for assembly (for workshop operations and transportation/erection operations)
3) BOM for bolts (for material orders)

I am trying to use Assembly 4 workbench for steel building parts. This workbench seems promising...
Thanks for your job,

Cheers,
Marco
Attachments
BOM_Examples.FCStd
(7.54 KiB) Downloaded 24 times
Nash Rambler
Posts: 1
Joined: Sun Jun 21, 2020 10:37 pm

Re: Assembly 4 workbench

Postby Nash Rambler » Sun Jun 21, 2020 10:50 pm

Hello Zelko! Is your "Lego_House+Garden" assembly available as a downloadable FreeCAD file? I would like to learn from it. Thx!
User avatar
Zolko
Posts: 1182
Joined: Mon Dec 17, 2018 10:02 am

Re: Assembly 4 workbench

Postby Zolko » Mon Jun 22, 2020 3:35 pm

OficineRobotica wrote:
Sat Jun 20, 2020 10:53 pm
Zolko wrote:
Tue Jun 16, 2020 3:21 pm
-this is more of a trunk version small usability issue. The Icons for create LCS, datum plane, datum axis etc in part should be more "colorful" when active. There is little to no contrast between states especially when using a dark style sheet.
If you can propose something I'd be glad to include it
The difference is subtle on the small scale of the icons in the toolbar but significant , at least for me
thank-you, yes that's better. I've updated the workbench with these icons. Also improved the measure tool
try the Assembly4 workbench for FreCAD v0.19
install with Tools > Addon Manager > Assembly4 — tutorials here and here