Skip to content

StructuralConnectionHandlerType.AddElementsToCustomConnection

Public Class

Modifies StructuralConnectionHandlerType of input StructuralConnectionHandler by adding representors of input elements or subelements.

Namespace: Autodesk.Revit.DB.Structure

Assembly: RevitAPI (in RevitAPI.dll) Version: 25.0.0.0 (25.0.0.0)

Syntax

public static void AddElementsToCustomConnection(
StructuralConnectionHandler structuralConnectionHandler,
IList<Reference> references
)

Parameters

structuralConnectionHandler StructuralConnectionHandler

The existing StructuralConnectionHandler having custom StructuralConnectionHandlerType which is about to be modified.

referencesIList. Reference.

References to elements or subelements which are to be used to modify custom StructuralConnectionHandlerType by adding their representors.

Exceptions

Exception

Condition


ArgumentException

Input StructuralConnectionHandler must have custom type. -or- All the input Elements should be of the following structural categories: framings, columns, profiles, plates, bolts, anchors, shear studs, welds or structural connections. -or- Total number of different input elements of input StructuralConnectionHandlers must be lower or equal to 3.


ArgumentNullException

A non-optional argument was null


Remarks

Elements or subelements added to a custom connection are deleted and transformed in subelements of the connection. They could be:

  • FamilyInstance (structural beams and columns).
  • StructuralConnectionHandler elements associated to the connection.
  • Specific steel connection elements (bolts, anchors, plates, etc). These connection elements will be of type element but with categories related to structural connections, for example:
    • OST_StructConnectionWelds
    • OST_StructConnectionHoles
    • OST_StructConnectionModifiers
    • OST_StructConnectionShearStuds
    • OST_StructConnectionBolts
    • OST_StructConnectionAnchors
    • OST_StructConnectionPlates

You cannot add: elements connected by any connection handler, generic connections, holes and modifiers that are not on the connected elements.

Example

C#

// Select elements to add to connection.
IList<Reference> refs = Utilities.Functions.SelectConnectionElementsCustom(activeDoc);
if (refs.Count() <= 0)
{
return Result.Failed;
}
// Start transaction
trans.Start();
// Adding the elements to the custom connection, using Revit's StructuralConnectionHandlerType class
StructuralConnectionHandlerType.AddElementsToCustomConnection(conn, refs);
// Commit the transaction
ts = trans.Commit();
if (ts != TransactionStatus.Committed)
{
message = "Failed to commit the current transaction !";
trans.RollBack();
return Result.Failed;
}
}