SDS2 Parametric API
 All Classes Namespaces Functions Variables Pages
List of all members
concrete.RebarSegment.SmartRebarLayout Class Reference

A rebar utility for respecting max length. More...

Inheritance diagram for concrete.RebarSegment.SmartRebarLayout:
concrete.RebarAttMixin.RebarAttMixin

Methods defined here:

def OverlapRebarGenerator
def __init__
def calculate_layout

Data descriptors defined here:

def CalculatedLayout
 The calculated layout for the rebar.
def Diameter
 rebar diameter
def Flip
 Change offset direction.
def Layout
 The layout with which the SmartRebarLayout object was created.
def MaxLength
 The maximum allowable length of a single piece of rebar.
def MinCornerLength
 The minimum rebar distance before a corner bend.
def OffsetVector
def SinglePieceCorners
 Indicates whether or not rebar needs to bend around corners using standard parts or a single piece.

Methods inherited from concrete.RebarAttMixin.RebarAttMixin:

def GetSpecializedAttributes
def TailorRebarSystemUI

Data descriptors inherited from concrete.RebarAttMixin.RebarAttMixin:

def PromptForLayout
 Indicates whether or not to prompt for a layout from RebarSystem Add.
def PublicAtts
def RebarMaxLength
 Maximum length of a rebar piece.
def RebarMinCornerLength
 The minimum length for a piece of rebar that wraps around a corner.
def RebarOverlapMultiplier
 The value used to calculate the overlap for rebar pieces.
def ScreenAttributes
 Unique attributes that the member needs on the rebar screen.
def __dict__
 dictionary for instance variables (if defined)
def __weakref__
 list of weak references to the object (if defined)

Additional Inherited Members

- Public Member Functions inherited from concrete.RebarAttMixin.RebarAttMixin

Detailed Description

A rebar utility for respecting max length.

SmartRebarLayout is a utility class that will calculate the layouts necessary to insure that the rebar will respect the maximum allowable length for the system.

Extends: RebarAttMixin

Method resolution order

SmartRebarLayout
concrete.RebarAttMixin.RebarAttMixin
builtin.object

Constructor & Destructor Documentation

def concrete.RebarSegment.SmartRebarLayout.__init__ (   args)
 __init__(args)

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

Member Function Documentation

def concrete.RebarSegment.SmartRebarLayout.__dict__ (   args)

dictionary for instance variables (if defined)

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.__weakref__ (   args)

list of weak references to the object (if defined)

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.calculate_layout (   args)
 Insure that the max length of a rebar piece is respected
 
 Insert nodes as needed to cover the layout and respect the length.
 Nodes will be adjusted to respect the overlap and cover.
def concrete.RebarSegment.SmartRebarLayout.CalculatedLayout (   args)

The calculated layout for the rebar.

The layout will respect the maximum rebar length

Returns: Proxies.Layout3D – A list of layouts with layouts inserted as necessary to respect the maximum allowable rebar length and properly calculated overlap.

def concrete.RebarSegment.SmartRebarLayout.Diameter (   args)

rebar diameter

Returns: float – diameter of the rebar

def concrete.RebarSegment.SmartRebarLayout.Flip (   args)

Change offset direction.

Offset moves in the positive z direction (of a Transform3D.MemberTransform xform) by default. Setting Flip to true will move the offset in the -z direction.

Returns: bool – change offset direction

def concrete.RebarSegment.SmartRebarLayout.GetSpecializedAttributes (   args)
 Returns a Versions type dictionary that gives the specialized attributes
 necessary for RebarSystems that are attached to members of this type
 along with their default values.

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.Layout (   args)

The layout with which the SmartRebarLayout object was created.

Original layout span for the rebar.

Returns: Proxies.Layout3D – [description]

def concrete.RebarSegment.SmartRebarLayout.MaxLength (   args)

The maximum allowable length of a single piece of rebar.

Returns: float – maximum length of a single piece of rebar

def concrete.RebarSegment.SmartRebarLayout.MinCornerLength (   args)

The minimum rebar distance before a corner bend.

Returns: float – minimum distance to the corner bend

def concrete.RebarSegment.SmartRebarLayout.OffsetVector (   args)
def concrete.RebarSegment.SmartRebarLayout.OverlapRebarGenerator (   args)
 Generates overlapping rebar pieces given a line.
 
 e.g.
 for rebarSegment in OverlapRebarGenerator(Proxies.Layout3D):
     rebarLayouts.append(rebarSegment)
 
 @param rebarLine: a Proxies.Layout3D object with two points, representing
                   straight line of rebar
 
 @yield a Proxies.Layout3D object that represents a segment of rebar
        (with a maximum length), taking overlap into account
def concrete.RebarSegment.SmartRebarLayout.PromptForLayout (   args)

Indicates whether or not to prompt for a layout from RebarSystem Add.

Some concrete members don't need a prompting for a custom layout polygon

Returns: bool – prompt for layout in modeling when adding a RebarSystem

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.PublicAtts (   args)
def concrete.RebarSegment.SmartRebarLayout.RebarMaxLength (   args)

Maximum length of a rebar piece.

rebar comes in pre cut lengths, any rebar system needs to be made up of layouts that respect that length

Returns: float – the maximum allowable length

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.RebarMinCornerLength (   args)

The minimum length for a piece of rebar that wraps around a corner.

when a rebar piece goes around a corner, there is a minimum distance to the bend

Returns: float – minimum distance to the bend of the corner

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.RebarOverlapMultiplier (   args)

The value used to calculate the overlap for rebar pieces.

OverlapMultiplier * rebar diameter dictates how long the pieces need to overlap

Returns: float – value use to calculate overlap

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.ScreenAttributes (   args)

Unique attributes that the member needs on the rebar screen.

The names must be strings and match attribute names in RebarSystem/Version.py

Returns: list – attribute names that the member needs on the edit screen

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.

def concrete.RebarSegment.SmartRebarLayout.SinglePieceCorners (   args)

Indicates whether or not rebar needs to bend around corners using standard parts or a single piece.

If true, rebar pieces will continue as far as possible around a corner. If False, rebar will stop at the corner and separate corner pieces will make the bend

Returns: bool – whether or not to use single piece corners

def concrete.RebarSegment.SmartRebarLayout.TailorRebarSystemUI (   args)
 Makes modifications to the RebarSystem UI to tailor it to the member.
 Argument:
     frame: the frame in which new widgets can be added.
     widgets: a dictionary of pairs of widgets and dialog.pusher.Pushers 
         for the default RebarSystem properties.

Reimplemented from concrete.RebarAttMixin.RebarAttMixin.