Arch Rebar Drawing Dimensioning

Please Note: The below work is present in develop branch of Reinforcement workbench here

Description
The Reinforcement Drawing Dimensioning tool allows the user to create drawing and dimensioning of reinforcing bars.

This command is part of the Reinforcement Addon, an external workbench that can be installed with the Addon Manager via the  menu.



Usage
1. Open FreeCAD Model containing reinforcement bars created using Reinforcement Addon.

2. In FreeCAD Python console, copy below code snippet to generate reinforcement drawing and dimensioning from different views for each Arch Structure element.

Scripting
Arch API, Reinforcement API and FreeCAD Scripting Basics.

The Reinforcement Drawing Dimensioning tool can be used in macros and from the Python console by using the following function:

Create Reinforcement Drawing And Dimensioning
Format: (r, g, b)   r, g, b value should be between 0 to 1, so you may need to divide value of r, g, b by 255 to get its value between 0 to 1 Make sure r, g, b must be float Example: (0.67, 0.0, 0.0)
 * It returns, a dictionary with structure as key and corresponding reinforcement drawing page as value.
 * is the list of structural objects to generate their reinforcement drawing. If not provided, structures will be selected from active document acting as Host for rebar objects.
 * is the list of rebar objects to be included in drawing. If not provided, rebars objects having Host in structure_list will be selected from active document.
 * specifies the view of drawing to be generated. It can be "Front", "Rear", "Left", "Right", "Top" or "Bottom".
 * specifies the stroke-width of rebars in drawing svg.
 * specifies the color style of rebars. Set it to "Automatic" to automatically select rebars color or "Custom" to choose shape color value from variable.
 * specifies the fill color for rebars in drawing svg.
 * specifies the stroke-width of structure in drawing svg.
 * specifies the fill style of structure. Set it to "Automatic" to automatically select structure color or "Custom" to choose structure color value from variable.
 * specifies the fill color for structure in drawing svg. Format: (r, g, b)
 * specifies the left offset of drawing view on.
 * specifies the top offset of drawing view on.
 * specifies the minimum right offset of drawing view on.
 * specifies the minimum bottom offset of drawing view on.
 * specifies the maximum width of drawing on.
 * specifies the maximum height of drawing on.
 * is the template file to be used for reinforcement drawing page.

Example: "%M %C⌀%D,span=%S" Here: %M -> Rebar.Mark %C -> Rebar.Amount %D -> Rebar.Diameter %S -> Rebar span length Format: (r, g, b)   r, g, b value should be between 0 to 1, so you may need to divide value of r, g, b by 255 to get its value between 0 to 1 Make sure r, g, b must be float
 * specifies if dimensioning needs to be created for rebars in drawing.
 * is the list of rebars to perform dimensioning. Set it to None to dimension all visible rebars in drawing.
 * is the format used for dimension label.
 * is the font family of dimension label.
 * is the font size of dimension label.
 * is the stroke-width of dimension line.
 * is the stroke style of dimension line. It can be "Continuous", "Dash", "Dot", "DashDot" or "DashDotDot".
 * is the color of dimension line.
 * is the color of dimension label.
 * is the dimension line start symbol, in case of single rebar is visible. It can be "FilledArrow", "Tick", "Dot" or "None".
 * is the dimension line end symbol, in case of single rebar is visible. It can be "FilledArrow", "Tick", "Dot" or "None".
 * is the dimension line start symbol, in case of multiple rebars are visible. It can be "FilledArrow", "Tick", "Dot" or "None".
 * is the dimension line end symbol, in case of multiple rebars are visible. It can be "FilledArrow", "Tick", "Dot" or "None".
 * is the dimension line mid points symbol. It can be "Tick", "Dot" or "None".
 * specifies the left offset of dimension from drawing.
 * specifies the right offset of dimension from drawing.
 * specifies the top offset of dimension from drawing.
 * specifies the bottom offset of dimension from drawing.
 * is the increment in left offset to move each new dimension label away from drawing.
 * is the increment in right offset to move each new dimension label away from drawing.
 * is the increment in top offset to move each new dimension label away from drawing.
 * is the increment in bottom offset to move each new dimension label away from drawing.
 * specifies if dimension lines are to be outside of reinforcement drawing, in case of single rebar is visible.
 * specifies if dimension lines are to be outside of reinforcement drawing, in case of multiple rebars are visible.
 * specifies the dimension label position type, in case of single rebar is visible. It can be "StartOfLine", "MidOfLine" or "EndOfLine".
 * specifies the dimension label position type, in case of multiple rebars are visible. It can be "StartOfLine", "MidOfLine" or "EndOfLine".