Share

RebarShape.SetEndTreatmentTypeId Method

Sets the EndTreatmentType id at the specified rebar shape end.


Namespace: Autodesk.Revit.DB.Structure
Assembly: RevitAPI (in RevitAPI.dll) Version: 25.3.0.0 (25.3.0.0)

Syntax

C#

public void SetEndTreatmentTypeId(
	ElementId endTreatmentId,
	int iEnd
)

Parameters

endTreatmentId  ElementId
The id of an EndTreatmentType element, or invalidElementId if the rebar shape should have no end treatment at the specified end.
iEnd  Int32
0 for the start end treatment, 1 for the end end treatment.

Exceptions

ExceptionCondition
ArgumentException iEnd not a valid shape end -or- the parameter endTreatmentId is not an EndTreatmentType element.
ArgumentNullException A non-optional argument was null

Example

C#

#region Autodesk.Revit.DB.Structure.ReinforcementSettings
private bool SetEndTreatmentType(Document doc, RebarShape rebarShape)
{
    bool set = false;
    // check if end treatments are defined by rebar shape
    ReinforcementSettings settings = ReinforcementSettings.GetReinforcementSettings(doc);
    if (!settings.RebarShapeDefinesEndTreatments)
    {
        try
        {
            // can only be changed if document contains no rebars, area reinforcement or path reinforcement
            settings.RebarShapeDefinesEndTreatments = true;
        }
        catch (Exception e)
        {
            // cannot change the settings value
            TaskDialog.Show("Revit", e.Message);
        }
    }
    if (settings.RebarShapeDefinesEndTreatments)
    {
        EndTreatmentType treatmentType = EndTreatmentType.Create(doc, "Flame Cut");
        rebarShape.SetEndTreatmentTypeId(treatmentType.Id, 0);

        ElementId treatmentTypeId = EndTreatmentType.CreateDefaultEndTreatmentType(doc);
        rebarShape.SetEndTreatmentTypeId(treatmentTypeId, 1);

        set = true;
    }

    return set;
}
#endregion

VB

#Region "Autodesk.Revit.DB.Structure.ReinforcementSettings"
Private Function SetEndTreatmentType(doc As Document, rebarShape As RebarShape) As Boolean
    Dim [set] As Boolean = False
    ' check if end treatments are defined by rebar shape
    Dim settings As ReinforcementSettings = ReinforcementSettings.GetReinforcementSettings(doc)
    If Not settings.RebarShapeDefinesEndTreatments Then
        Try
            ' can only be changed if document contains no rebars, area reinforcement or path reinforcement
            settings.RebarShapeDefinesEndTreatments = True
        Catch e As Exception
            ' cannot change the settings value
            TaskDialog.Show("Revit", e.Message)
        End Try
    End If
    If settings.RebarShapeDefinesEndTreatments Then
        Dim treatmentType As EndTreatmentType = EndTreatmentType.Create(doc, "Flame Cut")
        rebarShape.SetEndTreatmentTypeId(treatmentType.Id, 0)

        Dim treatmentTypeId As ElementId = EndTreatmentType.CreateDefaultEndTreatmentType(doc)
        rebarShape.SetEndTreatmentTypeId(treatmentTypeId, 1)

        [set] = True
    End If

    Return [set]
End Function
#End Region

See Also

Reference

Was this information helpful?