User:Suraj Dadral/GSoC20/logs: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 59: Line 59:


'''4 June:''' Implement passing rebars list to BOM. [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/160beba18f3279b69933df7ddfda225400af56ec commit]<br>
'''4 June:''' Implement passing rebars list to BOM. [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/160beba18f3279b69933df7ddfda225400af56ec commit]<br>
Why passing rebars list instead of structural elements? Find [https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&start=130#p405532 here].
Why passing rebars list instead of structural elements? Find [https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&start=130#p405532 here].<br>
Pass structures to select ArchRebar objects for BOM. In Gui, if user selects structures, then all ArchRebar objects in that structure will be included in BOM. [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/1003dded6a1f4bee1a4e86c9185ef1405cfbbc28 commit]




Line 68: Line 69:
&#10003; Implement specifying user template for Bill of Material svg. [10/05/2020]<br>
&#10003; Implement specifying user template for Bill of Material svg. [10/05/2020]<br>
&#10003; Implement word-wrap for svg column headers. [Alternate solution is [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/d887c950df13e5ef6d348855bfdc584455e04b5f commit1], [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/b48a52e14bd23f48041e72beddcf99754bfaf03d commit2] 22/05/2020]<br>
&#10003; Implement word-wrap for svg column headers. [Alternate solution is [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/d887c950df13e5ef6d348855bfdc584455e04b5f commit1], [https://github.com/SurajDadral/FreeCAD-Reinforcement/commit/b48a52e14bd23f48041e72beddcf99754bfaf03d commit2] 22/05/2020]<br>
* Implement passing structure as input for BOM generation.
&#10003; Implement passing structure as input for BOM generation. [04/06/2020]<br>

Revision as of 06:53, 5 June 2020

Community Bonding Period (May 4 - June 1, 2020)



7 May: Explore how to use TechDraw objects as python scripted objects. https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&p=396233#p396233
Start converting bill of material svg code to use "xml" python library.

8 May: Implement using xml python library for BOM svg generation. commit

9 May: Add font-family input field to svg config ui. commit
And start implementing specifying user template for Bill of Material svg.

10 May: Implement specifying user template for Bill of Material svg and Save it in TechDraw object. And remove adding header/footer to svg as same can be achieved using user template. commit
Add right & bottom offset constraint to BOM svg. commit
Add FontSize parameter to BOMContent object commit

11-12 May: Implement ui for BOM user template. And add Width and Height attributes to bom_content object. Remove xml declaration from output file above BOM table, automatically added by xml minidom, as xml declaration is allowed only at start of document. commit
Add parameters in BOMContentObj to control position and scale of bom svg. commit

15 May: Add GSoC proposal to FreeCAD wiki. proposal

16 May: Learn more about rebar drawings and bar bending schedule. bbs1, bbs2, bbs3, bbs4

17 May: Implement BillOfMaterial svg and spreadsheet to work for both ArchRebar and rebar2 objects. commit
Project discussion with @amrit3701. report

19-21 May: Modify column width to fix text overflow in gui mode as discussed here. commit

22 May: Fix text overflow in pure console mode. And modify some code to generate SVG in pure console mode. commit
Use round(FreeCAD.Units.Quantity("10 mm").Value) instead of round(FreeCAD.Units.Quantity("10 mm")). commit
For exception handling, don't use base exception, instead use appropriate exception. For checking properties of BOM_content object in function setProperties() here, use ``if not hasattr(obj, "Font")`` instead of ``if "Font" not in pl`` from performance point of view. commit
Tested BOM generation in FreeCAD console and in pure console mode and fixed some code and is now working fine in pure console mode and in FreeCAD console, in pure console and in Gui.

23 May: Store preferences in FreeCAD user preferences path. commit

24 May: Add save preferences checkbox while creating Bill Of Material. commit

25 May: Meeting with @amrit3701 for project progress: https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&p=401710#p401797
Fix SIGSEGV due to QFontComboBox after exiting freecad. commit
And use FreeCAD.GuiUp to check if gui is available as discussed with @amrit3701 here: https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&p=401710#p401797

26 May: Hide FontFilename property in Property Editor. And fix error 'dict_items' object is not reversible. commit

28-29 May: Fix row height when increasing font size. commit

30 May: Set font in ui from available fonts from QFontBox, if preferred font is not present in system. commit

31 May: Implement Rebar Addon as FreeCAD Reinforcement Workbench. commit

Coding Period (June 1 - July 3, 2020)



1 June: Implemented prefences page for BillOfMaterial to edit prefernces using FreeCAD preferences edit dialog. commit
Preview: https://forum.freecadweb.org/viewtopic.php?f=23&t=44580&p=405283#p404750

3 June: Report issue related to Gui::PrefFontBox on FreeCAD forum and get it resolved by @wmayer.
Some ui improvements. commit

4 June: Implement passing rebars list to BOM. commit
Why passing rebars list instead of structural elements? Find here.
Pass structures to select ArchRebar objects for BOM. In Gui, if user selects structures, then all ArchRebar objects in that structure will be included in BOM. commit



Todo:

✓ Update code to use xml tree for generating Bill of Material svg. [08/05/2020]
✓ Implement specifying user template for Bill of Material svg. [10/05/2020]
✓ Implement word-wrap for svg column headers. [Alternate solution is commit1, commit2 22/05/2020]
✓ Implement passing structure as input for BOM generation. [04/06/2020]