v2017 Enhancements

SDS/2 Detailing
v2017.00 to v2017.17

--- enhancements ---

On this page :

v2021 enhancements | top


Connection design :

Two new design codes can now be selected as the " Connection design method " in Design Criteria . These are ' China GB50017-2003 ' and ' India IS-800-2007 '.

Design Criteria has a new option to use either ' SCBF ' or ' OCBF ' for seismic gusset plate design. SCBF stands for Special Concentrically Braced Frame and is the design method that SDS/2 programs have traditionally employed. OCBF stands for Ordinary Concentrically Braced Frame and is new to v2017 SDS/2 software.

" Use inner flange plates " is a new option that can be found under the " Moment " leaf on the Beam Edit window. A " Use inner flange plates for beam splice moment " option in Design Criteria sets the default (' Automatic ') for the option on the Beam Edit window. Leafs containing related connection design locks are named " Moment Flange Plate " and " Inner Flange Filler Plate ." Click here for information from the Connection Guide.

The failure messages " Invalid shared brace configuration " (horizontal braces) and " Invalid shared brace configuration " (vertical braces) no longer apply. For 3-point braces, the middle brace no longer has to be perpendicular to the supporting member. 2-point braces can now slope in the same direction.

A " Case 2 transfer percent " can now be entered when " UFM special case design " on the Vertical Brace Edit window has been set to ' Special case 2 .'

Horizontal braces can now connect to a beam-beam corner or a beam-column-beam corner where the two beam are not perpendicular.

A new " Input connection type " named ' Fully welded moment ' has been added to the Beam Edit window. When this connection type is selected, the " Moment type " is automatically set to 'Welded " and a clip angle or shear plate or bent plate is not used as part of the connection. The web of the beam field welds directly to the column. The beam may be a wide flange or welded plate wide flange. Connection design locks for the connection are contained in a leaf named " Welds ." Click here for information from the Connection Guide.

The options for " Use expanded vertical bolt spacing " (clip angle) and " Use expanded vertical bolt spacing " (end plate) no longer require an axial load (" Tension " or " Compression ") to be operative. A " Use expanded vertical bolt spacing " option for shear plates and shear tees is entirely new. These enhancements can help to reduce fabrication costs by minimizing the number of rows of bolts in clip angles, end plates, shear plates and shear tees

v2021 enhancements | top


Connection failure messages :

User entered loads at splice must match in v2015 applied to column splices only. Now it also applies to beam splices.

Shear/Tension/Comp load less than minimum required by IS800:2007 (353) (v2017).

v2021 enhancements | top


New or improved tools in Modeling :

File > Views/Grids > Move View ( ).

Model > Dimension > Add ( ) and Erase All ( ) and Load ( ) and Save ( ) are new tools for dimensioning the 3D model. A ' Model Dimensions ' selection filter ( ) can be used along with the Delete key to delete selected dimensions.

Dimension Clearance ( ) and Dimension Member ( ) are two new icons that you can place on your toolbar to add dimensions in the 3D model.

Model > Member > Pins > Pin New Member Ends ( ) and Auto Pin ( ) and Pin Add ( ) and Pin Edit and Pin Erase are various tools that you can use to pin members to erection views, other members or other member ends. The Member End Edit window ( ) gives you access to member end pins.

Model > Member > Copy To Clipboard ( ) and Model > Member > Paste From Clipboard ( ) work together to allow users to copy and paste members from one project to another. These tools are also available as options on Modeling's default shortcut menu .

New member types are available on the Member Type Selection window. These include Extruded Profile Member ( ), Concrete Pad Footing , Concrete Elevation Wall , Void Space Cylinder ( ), Void Space Layout . The old concrete slab and concrete wall layouts that were available in pre-2017 versions of SDS/2 software have been replaced with Concrete Slab and Concrete Wall .

Display Options now features display filters for various options that are checked (" Option "). By turning certain filters off, you can hide certain items that would by default be displayed by the " Option. " These display filters are available for options with a " Select All " button ( ) . The button resets the filters back to their default state, in which all the filters are turned on.

New options on the Display Options window in Modeling include " Members " ( ) and " Moment symbols " and " Member ends always displayed " ( ) and " Shear tabs " and ( ) " Joist outline " and " Drawing overlay " and " Model dimensions ."

Model > Member > Hide Selected ( ) ( Hide Members on the shortcut menu) and Model > Member > Hide Unselected ( Hide Unselected Members ) are two new tools that can be used to hide members. Hidden members remain hidden for the duration of a Modeling session or until a user chooses Model > Member > Show ( ) ( Show Members ). The Model Tree lists members that are hidden under a category named " Hidden Members ")

New custom components are now available to Model > Component > Add . These are Beam Flange to Flange Connection ( ),   Web Penetration with Stiffeners ( ), Base or Cap Plate Stiffeners ( ), Column Stiffeners - Column ( ), Column Stiffener at Beam ( ),  Riser Closure Plate (stairs) ( ), Void Space Cylinder , Void Space Layout ( ), E-Z Beam Release , Surfaces Connection .

When you perform an operation on a material that causes the Change All Options window to open, the message " Material will be changed to match this material's properties " is displayed when the " Change all method " is ' by piecemark ' and more than one index number has been assigned to materials that will be affected by a change.

v2021 enhancements | top


Tools and options for adding embeds in Modeling :

Several new ways to add embed plates or channel / angle embeds are now available in Modeling . Regardless of its method of input, an embed is always an independent member. It is never a component of a beam.

Auto standard embed plates can be defined for " Beam to concrete " framing conditions that are specified on the Auto Standard Connections setup window. The " Embed plate schedule entry " that you select for a particular condition determines whether the embed plate is to the interior or exterior of a concrete wall . When a wide flange, welded plate wide flange, S-shape or channel beam frames to concrete and ' Auto standard ' is the beam's " Input connection type " for the appropriate end, then the embed plate is designed automatically. This applies to embed plates only, not to angle or channel embeds.

User defined embed plates can be created for beams that frame to a concrete wall. The user defined connection must also specify a shear plate or clip angle to connect the beam to the embed plate member. The entering of an " Embed plate schedule entry " is required. That option is enabled when " Frames to concrete wall " is turned on. This applies to embed plates only, not to angle or channel embeds. Be aware that you don't necessarily have to create the user defined connection in setup. You can, instead, use method 3 to create an embed plate on the Beam Edit window, then " Save As User Defined Connection ."

On a Beam Edit window , you can make a " Embed plate schedule entry " when the " Input connection type " is ' Shear ' or ' Clip angle .' As noted in the introduction to this section, the embed plate thus created is an independent custom member, not a component of the beam.

Embed plate custom members can be entered in Modeling by selecting " Embed Plate " on Member Type Selection window that opens when you press F2 . Three methods of input are available. Selecting a plate from the Embed Schedule is optional, not required.

Angle or channel embed custom members can be entered in Modeling by selecting " Embed " on Member Type Selection window that opens when you press F2 . Three methods of input are available. Since you are required to make an " Embed schedule entry ," you need to have an appropriate angle or channel embed setup in the Embed Schedule before you add the embed in the model.

An Embed Layout Add Tool can be added to your toolbar. Its icon found in the " Command group " called ' Model - Parametric ' in Toolbar Configuration for Modeling . You can use it to add a layout of multiple angle or channel embeds.

An Embed Plate Multi-Add Tool can be added to your toolbar. Its icon found in the " Command group " called ' Model - Parametric ' in Toolbar Configuration for Modeling . You can use it to add multiple embed plates to multiple ends of beams.

v2021 enhancements | top


New tools and capabilities in the Drawing Editor :

Objects > Dimensions > Add now has a new command for dragging off dimensions ( ) from a polygon side or line. Objects > Dimensions > Add Drag Off Dimension ( ) is another way to drag off dimensions.

Objects > Lines > Add ( ) now prompts you to locate a start point. In previous versions, Line Add automatically selected the end point of the last line added as the start point.

Objects > Lines > Trim ( ) lets you cut a line segment at its point of intersection with another line. In a single trim operation, multiple intersecting lines can be selected for trimming, and multiple segments can be selected to be trimmed.

Objects > Lines > Extend ( ) lets you extend one or more lines to another line.

Objects > Line > Extend to Intersection ( ) can extend two non-parallel line segments that do not intersect to their point of intersection. If only one of the lines needs to be extended to that point, only that one line will be extended.

Objects > Sheet Items > Add now lets you select multiple sheet items then locate them one at a time. In pre-2017 versions of the Drawing Editor , you had to select one sheet item, locate it, then select the next sheet item, locate it, and so on ....

The Erection View Cleanup window has options for " Left end moment symbol " and " Right end moment symbol " ( ) which let you turn on/off ( / ) the moment triangle on the end of a beam. Also, you now have the ability to slide the moment symbol along the member line.

Objects > Sheet Items > Add ( ) now lets you select multiple sheet items to place on a sheet.

Objects > Bolt Symbols > Add and Objects > Bolt Symbols > Bolt Sym Combo are two ways to add diamond-shaped or hexagonal bolt symbols in the Drawing Editor . Bolt Symbol Input is a bolt symbol's edit window.

v2021 enhancements | top


Joists :

In v2017 SDS/2 software, joists are a "hybrid" of what in previous versions were referred to as BIM joists and system joists. The v2017 joist uses node-matching and framing situation checking in its connection design just like traditional system joists, but additionally offers the 3D solids generation and modeling benefits that in previous versions were provided by BIM joists. Although the custom member called BIM joists no longer exists in v2017, it is still possible to import "as designed" joists from manufacturers into the SDS/2 model.

When creating a new project, you can select a " Joist manufacturer ." You can, if you so choose, select a different " Joist manufacturer " in Joist Manufacturer Setup ( ).

During Model > Member > Add > Joist , joist work points that are located at the joist bearing elevation instead of the top of joist elevation will automatically get properly designed connections. Users who prefer the pre-2017 way of locating points at the top of joist elevation can use the Input by Top of Joist Elevation modifier

The Joist Edit window has many new options:

  General settings -----------------------------------------------------------------
  Shape ( )   Joist rotation
  Peak offset ( )   Panel display method ( )
  Top chord radius   Bay pitch : ( )

  User preconfigured panel -----------------------------------------------------
  Panel layout   Panel member material
    Configuration
    Panel section size

  Member  ------------------------------------------------------------------------------------ --
  Top of joist ( )   Bearing shoe ( )
  Supporting chord   Input elevation

  Profile  ----------------------------------------------------------------------------------------- --
  Shoe length   Bottom chord pitch
  Shoe pitch   Triple pitch peak offset
  Top chord pitch  

  Setbacks and Extensions -------------------------------------------------------------- --
  Top chord ( )   Bottom chord ( )
  Shoe  

For " Input connection type " ( ) on the Joist Edit window, ' Auto standard ' is a new option.

' Joists To Beam ' and ' Joists To Column ' framing conditions have been added to Job Setup > Auto Standard Connections .

" Bearing Shoe Slots " and " Bolts " are two new sets of connection design locks, which apply to joist seats and plain end bearing type connections.

Joists are now added at their top chord bearing elevation unless the new Input by Top of Joist Elevation point location modifier is used. That modifier lets users add joists as they traditionally have input them -- by locating points at the top of joist elevation.

Joists have two modes of stick form display. You can toggle between these two forms by using the new " Joist outline " option in Display Options .

The Joist Setup window in Standard Fabricator Connections ( Fabricator Setup ) has the following new options: " OSHA span for bolted connections " " Stabilizer plate erection hole diameter " " Bearing shoe slot length " " Bearing shoe slot edge distance " " Minimum shoe length " (by joist type) and " Shoe slot diameter " (by joist type).

Canam Tools ( )

v2021 enhancements | top


Enhancements on member edit windows :

" Embed plate schedule entry " is new to the Beam Edit window.

A new " Input connection type " named ' Fully welded moment ' has been added to the Beam Edit window.

" Use inner flange plates " is a new option that can be found under the " Moment " leaf. It applies when the " Moment type " is ' Bolted ' and the " Input connection type " is ' Splice plate .' The option is also available for defining a user defined connection.

See Joists for a list of enhancements to the Joist Edit window.

" End condition " on the Stair Edit window has a new ' Top cap ' option. " Cap plate thickness " sets the thickness of the top cap plate.

" Intermediate tread schedule " and " Top tread schedule " and " Bottom tread schedule " on the Stair Edit window now have a button ( ) that lets you change the definition that applies to the currently being edited stair without changing the definition in setup. If you make such a change, your revised tread definition will be stored with the stair as an entirely new definition. The linked indicator ( ) will be switched to unlinked ( )

" Add CNC marks to stringers " on the Stair Edit window gives you the power to instruct the program to automatically add CNC marks to the inside faces of stringers to facilitate proper alignment of treads or tread supports.

" Add bolts to tread support " on the Stair Edit window gives you the ability to bolt the vertical leg of a tread support angle to the stringer. Related options for positioning the bolts include " Edge distance " " Spacing " " Gage " " Bolt type " and " Bolt diameter ." The options apply to stairs using continuous treads or pan treads with 'Single supports ' that are angle material.

' Angle Bracket ' is a new connection " Type " that can be used for handrail with angle posts. The angle brackets shop weld to the beam and field bolt to the angle posts of the handrail.

" Toe plate corner " lets you set whether a toe plate corner at a handrail return is ' Mitre ' or ' Square Flush ' or ' Square Setback .'

The " PIecemark " of a handrail is now editable. In pre-2017 versions, it was read-only.

A " Locate Return " button lets you reposition a handrail's return without having to delete then re-add the handrail.

' Butt ' is now an option for an angle " MIdrail corner " and an angle " Top rail corner ."

v2021 enhancements | top


Material :

Extruded Profile has been added as a new material type to the Material Type Selection window.

v2021 enhancements | top


New Job Options :

Member Pin Options

Joist Manufacturer Setup ( )

' Joists To Beam ' and ' Joists To Column ' framing conditions have been added to the Auto Standard Connections setup window. " Beam to concrete " framing conditions are available for making an " Embed plate schedule entry " that creates a beam shear-plate-to-embed-plate connection or a beam clip-angle-to-embed-plate connection. Embed plates created in this way are independent custom members, not a component of the beam.

User Defined Connections has new options for " Embed plate schedule entry " and " Frames to concrete wall ," which can be used to create user defined embed plates for beams framing to a concrete wall. Embed plates created in this way are independent custom members, not a component of the beam.

Two new design codes can now be selected as the " Connection design method " in Design Criteria . These are 'China GB50017-2003' and ' India IS-800-2007 '.

A " Use inner flange plates for beam splice moment " option in Design Criteria sets the default (' Automatic ') for a similarly named option on the Beam Edit window.

Design Criteria now also gives you the option to use either ' SCBF ' or ' OCBF ' for seismic gusset plate design.

Member Plugin Setup ( Plugin Options > Member ) now has setup windows for Hand Rail and Extruded Profile Member .

Component Plugin Setup ( Plugin Options > Components ) now has setup windows for Beam Flange to Flange Connection .

v2021 enhancements | top


New Fabricator Options :

Non-Standard Field Bolts on Erection View Details

In versions of SDS/2 programs prior to v2017, " Standard hole type " and " Extend seat to column flange if clearance is less than " and " Angle seat to supporting member " and " Square cut beam seat " on the Beam Seat Setup window applied to both beam seats and joist seats. Now those options only apply to beam seats.

" Standard hole type " and " Extend seat to column flanges if clearance is less than " and " Angle seat to supporting member " (' Bolted ' or ' Welded ') and " Square cut seat stiffener " are new to the Joist Setup window. These options were split away from the Beam Seat Setup window.

Also new to the Joist Setup window are " OSHA span for bolted connections " and " Stabilizer plate erection hole diameter " and " Bearing shoe slot length " are also new to the Beam Seat Setup window.

" Bearing shoe slot edge distance " and " Minimum shoe length " are options that you can enter per joist type to a table on the Beam Seat Setup window.

You can now rename any of the 16 available stair tread definitions that you can set up on the Tread Definition Schedule . Just type over the old name with a new " Name ."

" Rolled cold formed z " options for defining cold formed z stair treads become available when the " Shape " that is selected for a plate type tread is ' Rolled cold formed z .'

v2021 enhancements | top


New User Options :

" Always show Detail Erection View Defaults window " is a new option under the Windows in the " Interface " tab.

v2021 enhancements | top


Automatic detailing :

In Fabricator Options > Detail Erection View Defaults > the " Annotations " tab > " Non-standard field bolts " ( or ) instructs automatic erection view detailing to apply the choices made to Fabricator Setup > Non-standard Field Bolts on Erection View Details .

Also under the " Annotations " tab in Detail Erection View Defaults is a new option called " Scale anchor bolt layout " ( or ). When checked, you can enter a " Scale factor ."

" Detail BOM only " no longer saves the choice that the user has made to it. It always defaults to not checked ( ) when it appears as an option. Consequently, it has been relocated to the selection dialog that opens when you detail members. It can also be found on the version of the Member Detailing and Annotations window that opens when you Process > Detail Current Piecemark .

v2021 enhancements | top


Status :

Model > Status Select opens a Status Select window that has the same options for specifying conditions as does Status Display , but does not have color code or masking options. When you press " OK " to close the window, the conditions that are defined on the window select items that are in your current view of the model.

' By Status Display ' ( ) is a new selection filter that, when active, limits the selection of items to conditions that the user specified on the Status Display window at the time that the selection filter was selected.

The " Opacity " ( ) of status display colors can now be set on the Status Display window.

On selection dialogs with " Status Display " ( ) checked on, a status display file can be selected to color code or mask items that are listed for selection.

New " Group member status " conditions have been added for Status Display and Status Select and for the ' By Status Display ' selection filter.

Group member status
  Group piecemark   Group galvanized
  Group description   Group custom property

New conditions have been added to the Status Display window, under " Member status ." The conditions can be used for Status Display and Status Select and for the ' By Status Display ' selection filter.

Member status
  Swap member ends   Left end moment load
  Auto minus dimension   Right end moment load
  Auto material setback   Left end tension load
  Left end minus dimension   Right end tension load
  Right end minus dimension   Left end compression load
  Left end field clearance   Right end compression load
  Right end field clearance   Left end moment type
  Left end material setback   Right end moment type
  Right end material setback   Rolling operation
  Left end connection setback   Mid-ordinate
  Right end connection setback   Included angle
  Left end shear load   Rolling radius
  Right end shear load   Spiral offset
  Left end story shear   Member number
  Right end story shear   Member piecemark
    Grouped member

New conditions have been added to the Status Display window, under " Material status ." These conditions can be used for Status Display and Status Select and for the ' By Status Display ' selection filter.

Material status
  Main material   Material type

New conditions have been added to the Status Display window, under " Bolt status ." These conditions can be used for Status Display and Status Select and for the ' By Status Display ' selection filter.

Bolt status
  Bolt length   Secondary nut type
  Bolt grip   Secondary nut grade
  Field bolt   Primary washer under nut
  Tension control   Secondary washer under nut
  Bolt finish   Tertiary washer under nut
  Primary nut type  
  Primary nut grade  

New " Hole status " conditions have been added for Status Display and Status Select and for the ' By Status Display ' selection filter.

Hole status
  Hole diameter   Countersink angle
  Hole type   Counterbore
  Slot rotation   Counterbore diameter
  Slot length   Counterbore depth
  Plug type   Threads
  Matchable   Thread major dia./size #
  Preferred bolt type   Threads per unit
  Thru hole   Thread form/series
  Blind hole   Right hand thread direction
  Blind hole depth   Left hand thread direction
  Countersink   Thread thru
  Countersink diameter   Thread depth

New " Weld status " conditions have been added for Status Display and Status Select and for the ' By Status Display ' selection filter.

Weld status
  Shop weld   Groove angle
  Field weld   Fillet backup
  Spacer bar   Stitch
  Weld type   Stitch length
  Weld size   Stitch spacing
  Weld length   Left termination
  Left setback   Right termination
  Right setback   Prequalified tail text
  Root face   Weld joint
 Root opening   Weld penetration
  Effective throat   Joint designation
  Finish symbol   Weld process
  Weld contour   Weld position

v2021 enhancements | top


Utilities :

Joist Manufacturer Manager

v2021 enhancements | top


Parametrics (v2016 & v2017)

PR 2714 The parametric weld_add module no longer supports the WeldTypeSingleOrDouble, length, and GrooveRadus attributes. To do a two sided weld set other_weld_type, other_size, etc. as desired. (v2016)

PR 11170 Any submaterial in the job can now be added parametrically using the sds2.sub_mtrl .SubMaterialReference.BuiltinMaterial conversion and the MemberBase .AddMaterial API. (v2016)

from sds2.sub_mtrl import SubMaterialReference
from MemberBase import GetMemberLink
from Transform3D import Transform3D
member_number = 1
sub_mtrl_idx = 1
mem = GetMemberLink(member_number, False, True)
mtrl = SubMaterialReference(sub_mtrl_idx).BuiltinMaterial()
mtrl.SetXform(Transform3D(member_number))
mem.AddMaterial(mtrl)
mem.Write()

PR 17097 Added sds2.piecemark to the Python API as a way to automate the 'Edit Piecemarks' functionality. See help(sds2.piecemark) for more information. (v2016)

PR 29641 " NM bolt type to supporting" and its corresponding auto flag are now accessible via the model module as bolt_type2 and user_nm_bolt_type2, respectively. (v2016)

PR 31341 In parametrics added the Designable package to aid developing processable plugins. See python's built-in help for that package. See the example source code in the DesignableExamples plugin package for sample code using Designable. (v2016)

PR 34546 In parametrics, added the ability to break apart arbitrary materials. See help(sds2.breakapart) for more details. (v2016)

PR 34579 In parametrics added the ability to export expanded design calcs. See help( DesignCalcs ) for more information. (v2016)

PR 34580 All Sheet Revisions are readable through the Drawing module and the Increment Sheet Revisions tool can now be automated. See help(Drawing.IncrementSheetRevisionNumerically), help(Drawing.IncrementSheetRevisionAlphabetically) and help(Drawing.IncrementSheetRevisionManually) for more information. (v2016)

PR 34582 In parametrics, added Designable .Proxies.BreakApartMaterialsProxy for the corresponding function sds2.breakapart.BreakApartMaterials. See DesignableExamples.EndSplice for an example component that can explicitly break materials off a member. (v2016)

PR 34729 In parametrics, added the ability to remove parametrics without user interaction. See help( param .EraseParametric) for more details. (v2016)

PR 34746 In parametrics added access to the job's member revision table via the job module. See
help(job.Job().member_revisions)
help(job.Job().update_member_revision)
help(job.Job().add_member_revisions)

Gain access to the member's revision history through a model.object member's `rev_level`, `revision_cnt`, and `revision_history` attributes. (v2016)

PR 35188 Python API for Status Display. See help(sds2.status_display) for more information. (v2016)

PR 36072 A new lockable module has been implemented for 2016. The following are some of it's key features:

The LockableValue class:
1. Intelligent enough to interpret values as section sizes, dimensions, variable spacings, 'combobox' alternatives or simple numbers and strings.

2. Variable spacings can be input as strings (eg. '3@3,4') or as a list like [3,3,3,4].

3. Serializable (picklable).

When interacting with a connection component:
1. Users are restricted to interacting with only those connection design locks that are visible on the member edit screen.

2. LockableValues obtained from a connection and visible via python will validate against the same rules as those on the member edit screen (such as maximums, minimums, available section sizes, etc.)

3. If a connection's locks affect those on a neighboring component (like the thickness of a butt plate on a column splice connection), the affected locks will be updated, similar to the way member/component edit works.

For more information, see help(sds2.lockable). (v2016)

PR 36074 In the python Component module, fixed ReplaceLiveComponentsWithCopy to work with multiple components. (v2016)

PR 36276 The Tying Load for ends has been exposed to the python api. This is useful when the "Connection design method' is 'Eurocode 3.' (v2016)

import model
m = model.member(1)
left_end = m.ends[0]
right_end = m.ends[1]

print left_end.tying_load
print left_end.TyingLoad

PR 36307 Added two higher level python APIs for creating Gadget screens. See help(sds2.utility.gadget_protocol) and help(sds2.utility.gadget_protocol_member) for more information. (v2016)

PR 36400 SDS/2 installs will now include pip and XlsxWriter Python module installs. There are also items on the Start Menu for these installers. (v2016)

PR 36428 Plugins inheriting from Designable .Processable.Processable and not StateAccessor will no longer format the pickle in a way that StateAccessor can read, which makes pickling of these objects slightly faster. Existing pickles using the old format will still be read and will be converted the next time the plugin is saved. Once the new pickle format is saved, older binaries will no longer be able to read the new pickle format. (v2016)

PR 36524 Component.Erase now erases all of the components in a list. (v2016)

PR 36568 Improved the performance of python dialog screens. Large screens, such as HandRail, will open up in less time. This impacts any custom member screen or custom component leaf. (v2016)

PR 36826 Exposed via the python model module the new options for eurocode design method "non_bearing" and "col_splice_gap" for column splice connections. (v2016)

PR 36940 When creating parametric miscellaneous round bar members, the diameter given for the bar must have a corresponding entry in Shapes Properties or an exception will be raised during the evaluation of the parametric script. (v2016)

PR 37073 In the custom member API, the default behavior for BoundingBoxContains now includes each point in GetAlternateMembLinePoints. (v2016)

PR 37118 In the python shr_stud module, fixed the grade attribute to read from the shear stud grade table in setup. (v2016)

PR 37405 Material grade and finish are now available to the python interface through the MaterialBase class with the SetGrade/GetGrade and SetFinish/GetFinish methods.

MaterialFinishCombobox and MaterialGradeCombobox are now available in the MaterialBaseWidgets parametrics module. (v2016)

PR 37524. The parametric member module is updated to return 'Plate' for stairs with a plate tread type and 'Continuous' for stairs with a continuous tread type. The tread type of a stair can be accessed from the member module by the following snippet of parametric code:

import member
member.Member(1).tread_sched. tread_type

assuming member 1 is a stair. (v2016)

PR 38196   Custom command developers that specify job setup options can customize the user facing string displayed in the Options > Job Options > Plugin Options > Command by adding a class attribute 'UserStr' to the command class, e.g.,

class MyCommand(Command.Command):
UserStr = 'My command' (v2016)

PR 39319 Parametrically added material can now be added as dummy material and will not show up in the bill of material but will still be detailed. Set mtrl.dummy = "Yes" (v2017)

PR 39376 An error is now generated if the @Plugins.HiddenBytecodeCallable decorator for encrypting Python code (parametric/plugin development) is applied to a class rather than a function. (v2017)

PR 39427 A new toolbar widget has been added to the Python Commands module called Flyout. The new toolbar widget can be used to create a drawer of multiple tools in the same plugin. (v2017)

PR 39423 In parametrics, improved performance computing model .ShortestSegmentBetweenModelObjects for objects with many small triangles. (v2017)

PR 39645 Additional items have been exposed to the Drawing module for python. From Drawing import RenameDrawing, CreateDrawing, SaveAs, SearchAndReplace, SheetAutoload. See python help for documentation help( SearchAndReplace ) (v2017)

PR 39708 Joists cannot be assigned a non-joist section size from member edit or parametrics. (v2017)

PR 39802 In parametrics, bars can be added with a "depth/thickness reference point" via the rolled_mtrl_ref_pt attribute. The accepted string values are the same as a plate's `origin` attribute., e.g. FlatBar().rolled_mtrl_ref_pt = 'NS'. The attribute was already available in the model module, but beware the int value of the enumerated type only matches the int value of `origin` value for 'NS'. The int value for 'Center' and 'FS' are switched. (v2017)

PR 40018 In parametrics, 'S Shape' now works as a parameter to job .Job().steel_grades. Base Plate Shear Key component now works with S Shape section sizes.(v2017)

PR 40162 Caged Ladder will now work with Euro jobs. Previously the European grades were not available to the python API (v2017)

PR 40313 Parametric developers may now make use of job .Job().steel_grades_dsgn("...") to get steel grades appropriate to the current job's design method (Euro, AS4100, etc.) without having to make that determination for themselves. (v2017)

PR 40840 In the Python API, sds2.sub_mtrl .SubMaterialReference returns an instance of CustomSubMaterialReference for custom material. (v2017)

PR 40843 From the Python API, after adding a clevis and turnbuckle the guids will be available from the added objects. (v2017)

PR 40969 Updated the default bolt diameter for connections to be PIP compliant. The model module now offers exp_vert_bolt_spa on shear tab connections. The valid values are model.Auto, model.Yes, model.No. The integer representations for these values are 0, 1, 2, respectively. Clip angle and end plate connection types, which have had this attribute exposed are now updated to accept the new range of values: model.Auto, model.Yes, model.No. (v2017)

PR 41046 The SDS2 Python module sds2.utility .gadget_protocol defines model controllers (SyncSubDialogController and SyncModelCompleteSubdialogController) that can synchronize names from one gadget leaf (or banner) to another. SubDialogController instances can create dialog.pusher.Pusher instances and dialog.sync_pusher.SynchronizingSource instances to help create entries and rules across different gadget_protocol controllers. See methods SubDialogController.SourcedPusher and SubDialogController.SynchronizingSourceForName. (v2017)

PR 41458 All parametric material add features, e.g. rect_plate .RectPlate, rolled_section .RolledSection, etc., can be converted to a MaterialBase.BuiltinMaterial instance via a new method BuiltinMaterialAddFeature(). From there, all the normal MaterialBase and BuiltinMaterial APIs, like polygon generation, apply. For example:

import Polygon
import rect_plate
from sds2.obj import vis_pt

rp = rect_plate.RectPlate()
rp.Width = 6.
rp.Thickness = .25
rp.color = 'Medium_material'
rp.WorkpointSlopeDistance = 12.
builtin = rp.BuiltinMaterialAddFeature()
poly = builtin.CreatePolygons()
with Polygon.Preview(poly) as preview:
vis_pt((0,0,0))
(v2017)

PR 41727 Read access to Job Options -> Default Modeling Colors is exposed to Python via job .Job() object with methods default_color_beam, default_color_column, default_color_vbrace, default_color_hbrace, default_color_other, default_color_conn, default_color_field_bolt, default_color_shop_bolt, default_color_field_weld, default_color_shop_weld. (v2017)

PR 41768 Added ability for the Python API to provide custom annotations during point location via overloading OnBestAnnotatePoint3D and OnBestUnAnnotatePoint3D on derived classes of Locator .Locator3DBase. (v2017)

PR 41843 In the Python model module, updated the internal accuracy for determining if two polygons touch to .0001" from .01". This change impacts ShortestSegmentsBetweenModelObjects, MinimumDistanceBetweenModelObjects, and DoPolygonsIntersect. (v2017)

PR 41998 Previously through the python API, running SheetAutoLoad() and SearchAndReplace() in the same modeling session would error with a RunTimeError. This problem has been fixed and will now allow for Search and replace on a sheet that was created by SheetAutoLoad(). See the Drawing module. (v2017)

PR 42181 For comboboxes on Python screens, the number pad/key pad enter key now behaves like the return key. (v2017)

PR 42193 Parametric developers can now specify a custom polygon line snap mode for Locator3D via Locator3D.SetCurrentSnapONPL(polylist). For example:

import Locator
from Point3D import Point3D
import Polygon
from sds2.iterators import all_mts

def get_poly():
return Polygon.PolyList(next(all_mts()).poly)

def acquire(locator, poly):
locator.SetCurrentSnapONPL(poly)
locator.SetAnchorGlobal(poly.snapshotSide(0, 0).location)
pt = Point3D()
with Polygon.Preview(poly):
return locator.AcquireShowPoint(pt), pt

def main():
l = Locator.Locator3D()
l.SetDefaults()
acquire(l, get_poly())

if __name__ == '__main__':
main()
(v2017)

PR 42372 In the Python API a material's custom_material_type can be read from the model module and sds2.sub_mtrl modules. (v2017)

PR 42421 Updated the lockable module to correctly interpret the top/bottom flange operation type on a connection component. The "groove angle" end preparation field will now be reported as an angle in degrees instead of radians. (v2017)

PR 42701 Parametrics job module will now recognize design method CSA11, LRFD15 and ASD15. (v2017)

PR 42852 Fixed an assertion error in the Python API when creating polygons for a plate_layout .PlateLayoutBuiltinMaterialAddFeature. (v2017)

PR 43250 In the Python API sds2.obj .aabb_pt and aabb_m are no longer recursive and as such no longer are prone to maximum recursion errors. (v2017)

PR 43185 The Python API job .Job().steel_grades(...) now returns correct grade information for EUROCODE 3 UK. (v2017)

PR 43358 In the Python API's, Proxies defined in Designable .Proxies now have an OnSolidsException method which allows subclasses to have custom exception handling when the underlying solids operation is called and generates an exception. (v2018)

PR 43628 The Python API view .ViewFactory will now throw a RuntimeError when passed in an 'up' vector that isn't perpendicular to the 'looking' vector. If the two vectors are perpendicular then the resulting view will have a valid and clean view matrix. (v2017)

PR 43703 In the Python API, a component 's member number is now set during the EditBeforeAddingToMember call back. (v2017)

v2021 enhancements | top