Show / Hide Table of Contents

    Class ConnectionComponent

    A builtin connection component

    Inheritance
    object
    Component
    ConnectionComponent
    Inherited Members
    Component.Handle
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: DesignData.SDS2.Model
    Assembly: DesignData.SDS2.Model.dll
    Syntax
    public class ConnectionComponent : Component

    Properties

    ConnectionChangedMessage

    The changed connection message that shows up in the edit screen when SDS2 designs a connection that is different from the input connection specification

    Declaration
    public string ConnectionChangedMessage { get; }
    Property Value
    Type Description
    string
    Remarks

    This will return a changed message even when there is also a ConnectionFailureMessage. This is in contrast to the member edit screen which will only show a failure message, when there is a change and a failure.

    ConnectionFailureMessage

    The connection failure message that shows up in the edit screen when SDS2 is unable to create a connection for the framing situation

    Declaration
    public string ConnectionFailureMessage { get; }
    Property Value
    Type Description
    string

    DesignedSpecification

    The connection specification the system used to design the current connection. This can vary from the requested when the system determines that the requested specification is invalid. Or if the requested spec is auto standard, this will be filled in with the actual connection specification that auto standard applied.

    Declaration
    public ConnectionSpecification DesignedSpecification { get; }
    Property Value
    Type Description
    ConnectionSpecification
    Remarks

    This should be considered readonly. Changes you make here will not modify the designed connection.

    InputSpecification

    The requested connection specification input by the user. This can be modified in place, or a new specification can be made and assigned to this.

    Declaration
    public ConnectionSpecification InputSpecification { get; set; }
    Property Value
    Type Description
    ConnectionSpecification
    Exceptions
    Type Condition
    InvalidValueException

    Thrown if the input specification isn't valid for this member type.

    NotAddedException

    Thrown if this is called without adding both this Component object and the Member it is on to the Transaction. Or if there simply isn't a Transaction.

    MaxCompression

    The highest the compression value can be without failing.

    Declaration
    public double MaxCompression { get; }
    Property Value
    Type Description
    double

    MaxCompressionUnity

    The highest the compression unity can be without failing.

    Declaration
    public double MaxCompressionUnity { get; }
    Property Value
    Type Description
    double

    MaxMoment

    The highest the moment value can be without failing.

    Declaration
    public double MaxMoment { get; }
    Property Value
    Type Description
    double

    MaxMomentUnity

    The highest the moment unity value can be without failing.

    Declaration
    public double MaxMomentUnity { get; }
    Property Value
    Type Description
    double

    MaxPanelMoment

    The highest the panel moment value can be without failing.

    Declaration
    public double MaxPanelMoment { get; }
    Property Value
    Type Description
    double

    MaxPanelMomentUnity

    The highest the panel moment unity value can be without failing.

    Declaration
    public double MaxPanelMomentUnity { get; }
    Property Value
    Type Description
    double

    MaxShear

    The highest the shear value can be without failing.

    Declaration
    public double MaxShear { get; }
    Property Value
    Type Description
    double

    MaxShearUnity

    The highest the shear unity value can be without failing.

    Declaration
    public double MaxShearUnity { get; }
    Property Value
    Type Description
    double

    MaxTension

    The highest the tension value can be without failing.

    Declaration
    public double MaxTension { get; }
    Property Value
    Type Description
    double

    MaxTensionUnity

    The highest the tension unity value can be without failing.

    Declaration
    public double MaxTensionUnity { get; }
    Property Value
    Type Description
    double

    MaxTyingResistance

    The highest the tying resistance value can be without failing.

    Declaration
    public double MaxTyingResistance { get; }
    Property Value
    Type Description
    double

    MaxTyingResistanceUnity

    The highest the tying resistance unity value can be without failing.

    Declaration
    public double MaxTyingResistanceUnity { get; }
    Property Value
    Type Description
    double

    Methods

    Dispose(bool)

    A builtin connection component

    Declaration
    protected override void Dispose(bool disposing)
    Parameters
    Type Name Description
    bool disposing
    Overrides
    Component.Dispose(bool)

    FindCreatedMaterial()

    Returns an object containing three lists, Materials, Bolts, Welds that a connection created.

    Declaration
    public override CreatedConnectionMaterial FindCreatedMaterial()
    Returns
    Type Description
    CreatedConnectionMaterial
    Overrides
    Component.FindCreatedMaterial()

    GetImageLabelForLockableName(string)

    Use this method to get the corresponding image label for the Lockable, if it has a label.

    If there is no image label, an empty string is returned.

    Declaration
    public string GetImageLabelForLockableName(string name)
    Parameters
    Type Name Description
    string name
    Returns
    Type Description
    string
    Remarks

    Your final code should not include use of this method, this is for debugging purposes.

    GetLabelForLockableName(string)

    Use this method to translate names in the map returned by GetLockables into the labels visible on the edit screen. This is useful to help figure out what name you should use in your code to map to a name you see on the screen.

             The returned name will be translated into the user's local language.
    
             If this returns an empty string, then the name was not found.
    
    Declaration
    public string GetLabelForLockableName(string name)
    Parameters
    Type Name Description
    string name
    Returns
    Type Description
    string
    Remarks

    Your final code should not include use of this method, this is for debugging purposes.

    GetLockable(string)

    Get a single lockable by name. Doing this with the map would work just as well, but this can be more efficient if you just need one.

    Declaration
    public Lockable GetLockable(string name)
    Parameters
    Type Name Description
    string name
    Returns
    Type Description
    Lockable
    Remarks

    This will be a copy of the lockable. If you make changes to it, to see them reflected you will need to pass it to SetLockable

    GetLockables()

    Get a map of all lockables on this connection

    Declaration
    public LockableDictionary GetLockables()
    Returns
    Type Description
    LockableDictionary

    GetPromptGroupForLockableName(string)

    Use this method to get the prompt group for the Lockable.

    Declaration
    public string GetPromptGroupForLockableName(string name)
    Parameters
    Type Name Description
    string name
    Returns
    Type Description
    string
    Remarks

    Your final code should not include use of this method, this is for debugging purposes.

    GetPromptTabForLockableName(string)

    Use this method to get the prompt tab for the Lockable.

    Declaration
    public string GetPromptTabForLockableName(string name)
    Parameters
    Type Name Description
    string name
    Returns
    Type Description
    string
    Remarks

    Your final code should not include use of this method, this is for debugging purposes.

    SetLockable(string, Lockable)

    Apply a lockable value to this connection. You can only pass in names which would return a non-null lockable from GetLockable (so you can't add new lockable keys this way, you can just replace their value).

    Declaration
    public void SetLockable(string name, Lockable value)
    Parameters
    Type Name Description
    string name
    Lockable value
    Exceptions
    Type Condition
    InvalidOperationException

    Thrown when attempting to override a locked lockable within process. Unless you are implementing an extension of SDS2 (such as a custom member) this does not apply.

    NotAddedException

    Thrown if this is called without adding both this Component object and the Member it is on to the Transaction. Or if there simply isn't a Transaction.

    InvalidValueException

    Thrown if the lockable given is not a valid value for this specific lockable. The Message on the InvalidValueException will include the message we'd give to a user if they typed that value on the screen, so it's usable to present directly to a user if your application is interactive.

    Back to top