GSoC Proposal: Extended functionality of Rebar Addon

A forum dedicated to the Draft, Arch and BIM workbenches development.
User avatar
bernd
Posts: 10806
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby bernd » Tue May 05, 2020 1:24 pm

Should we move the topic to Arch? As it is really related to Arch and BIM?
User avatar
Suraj Dadral
Posts: 292
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby Suraj Dadral » Tue May 05, 2020 1:53 pm

bernd wrote:
Tue May 05, 2020 11:33 am
Are you both able to compile FreeCAD (Amrith and Suraj)
Yes, I compiled FreeCAD many times. But, now using its AppImage for ease.

Thanks,
User avatar
Suraj Dadral
Posts: 292
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby Suraj Dadral » Tue May 05, 2020 1:54 pm

bernd wrote:
Tue May 05, 2020 1:24 pm
Should we move the topic to Arch? As it is really related to Arch and BIM?
Looks good to me.

Thanks,
User avatar
Suraj Dadral
Posts: 292
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby Suraj Dadral » Tue May 05, 2020 3:30 pm

amrit3701 wrote:
Mon May 04, 2020 5:15 pm
As @bernd already said, I would also like to allow the user to use his own stylesheet. So tree structure look like below:

Code: Select all

BOM_object
|__ BOM_content

The BOM_object has Template property. Default value of Template (App::PropertyLink) value default_bom_template.svg. The type of BOM_object.BOMContent is App::PropertyLinkList, with this user can also add n number of tables in same stylesheet.

The BOM_content is the data you produced and this BOM_content object has below properties:
  • Placement: Control the position of data in BOM_object.Template. By default, you should calculate but if user want then he can override it.
  • Font Style
  • Font Size
  • Table Lines
  • Table Line Style


When the user clicks on BOM_object or BOM_content, the SVG file object inside the FreeCAD window.
For this, I think we can use TechDraw workbench objects.
Tree Structure:

Code: Select all

BOM_object
|__Template
|__BOM_content_table1
|__BOM_content_table2
Type of BOM_object: 'TechDraw::DrawPage'
Type of Template: 'TechDraw::DrawSVGTemplate'
Type of BOM_content_table1: 'TechDraw::DrawViewSymbol'

We can utilize these and add missing properties like "Font Style" and "Font Size" and maybe more as per requirements.
Sample file: https://github.com/SurajDadral/FreeCAD- ... tion.FCStd
Do we need output similar to this one.

I have some doubts.
1. Are we creating multiple tables in one shot in same template? If so, how data will be split into different tables?

According to my perception till now, I think we need one table per svg file. Please let me know if I am wrong at this point.

Thanks,
User avatar
amrit3701
Posts: 306
Joined: Mon Jun 13, 2016 5:37 pm

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby amrit3701 » Tue May 05, 2020 6:22 pm

Suraj Dadral wrote:
Tue May 05, 2020 3:30 pm
For this, I think we can use TechDraw workbench objects.
Tree Structure:

Code: Select all

BOM_object
|__Template
|__BOM_content_table1
|__BOM_content_table2
Type of BOM_object: 'TechDraw::DrawPage'
Type of Template: 'TechDraw::DrawSVGTemplate'
Type of BOM_content_table1: 'TechDraw::DrawViewSymbol'
Yes, reuse already existing things.
We can utilize these and add missing properties like "Font Style" and "Font Size" and maybe more as per requirements.
Sample file: https://github.com/SurajDadral/FreeCAD- ... tion.FCStd
Do we need output similar to this one.
The output looks awesome!. Related to adding missing properties to TechDraw objects, here I am not sure because TechDraw objects have no Proxy. Don't know we can extend TechDraw objects to python scripted object or not. Please test it.
I have some doubts.
1. Are we creating multiple tables in one shot in same template? If so, how data will be split into different tables?

According to my perception till now, I think we need one table per svg file. Please let me know if I am wrong at this point.
Right now, I suggest to go for one table per SVG to make things not complex. As TechDrawPage.Views property type is List and if any user wants to add more tables to TechDrawPage and he do it manually by adding it to Views.
User avatar
amrit3701
Posts: 306
Joined: Mon Jun 13, 2016 5:37 pm

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby amrit3701 » Tue May 05, 2020 6:33 pm

bernd wrote:
Tue May 05, 2020 11:33 am
shift it to an own workbench but keep it separated from FreeCAD master or move it into FreeCAD Arch master? What is you guys opinion about this in the future?
I also suggest to keep it separated from FreeCAD source code. During development, we can shift rebar addon to the workbench in develop branch (https://github.com/amrit3701/FreeCAD-Re ... ee/develop) and once things stable then we will merge it to rebar addon master branch.
Are you both able to compile FreeCAD (Amrith and Suraj)
I also using .dmg images (https://github.com/FreeCAD/FreeCAD/releases) as assets regularly updated twice a month.
User avatar
bernd
Posts: 10806
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby bernd » Tue May 05, 2020 8:16 pm

yes it looks pretty cool :D

How can I make this myself? How do I add my own template?

Screenshot_20200505_222009.png
Screenshot_20200505_222009.png (118.84 KiB) Viewed 262 times
User avatar
bernd
Posts: 10806
Joined: Sun Sep 08, 2013 8:07 pm
Location: Zürich, Switzerland

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby bernd » Tue May 05, 2020 8:19 pm

amrit3701 wrote:
Tue May 05, 2020 6:33 pm
bernd wrote:
Tue May 05, 2020 11:33 am
shift it to an own workbench but keep it separated from FreeCAD master or move it into FreeCAD Arch master? What is you guys opinion about this in the future?
I also suggest to keep it separated from FreeCAD source code. During development, we can shift rebar addon to the workbench in develop branch (https://github.com/amrit3701/FreeCAD-Re ... ee/develop) and once things stable then we will merge it to rebar addon master branch.
ok i am fine with this.
User avatar
Suraj Dadral
Posts: 292
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby Suraj Dadral » Tue May 05, 2020 8:21 pm

bernd wrote:
Tue May 05, 2020 8:16 pm
yes it looks pretty cool :D

How can I make this myself? How do I add my own template?
I made this manually just to see how it looks.
To do this manually:
1. Create techdraw page using your template.
2. First BOM is created without footer by modifying svg configuration while creating through ui.
3. Second BOM is created without header data.
4. And include both manually on techdraw page.

Thanks,
User avatar
Suraj Dadral
Posts: 292
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: GSoC Proposal: Extended functionality of Rebar Addon

Postby Suraj Dadral » Tue May 05, 2020 8:25 pm

amrit3701 wrote:
Tue May 05, 2020 6:22 pm
Related to adding missing properties to TechDraw objects, here I am not sure because TechDraw objects have no Proxy. Don't know we can extend TechDraw objects to python scripted object or not. Please test it.
I tried this as I did in case of Column and Beam reinforcement objects but didn't worked.
I found one method "TechDrawObj.addExtension( ... )", I think this will do our job.
Testing it and will let you know soon.

Thanks,