Today, I introduced a new property in the rebar object of FreeCAD i.e. Length. This property calculates the total length of the rebar. The user will see this property in the property value table. This property is very useful for Bar bending schedule.
Below is the code which calculates the length of rebar:
def getLengthOfRebar(rebar): """ getLengthOfRebar(RebarObject): Calculates the length of the rebar.""" base = rebar.Base # When rebar is derived from DWire if hasattr(base, "Length"): return base.Length # When rebar is derived from Sketch elif base.isDerivedFrom("Sketcher::SketchObject"): length = 0 for geo in base.Geometry: length += geo.length() return length else: FreeCAD.Console.PrintError("Cannot calculate rebar length from its base object\n") return None