2025 Method
Changes 6
M

Document.NewLineBoundaryConditions

Description:
Creates a new Line BoundaryConditions element on a reference.
Remarks:
This method will only function with the Autodesk Revit Structure application.
Overloads (2):
NewLineBoundaryConditions(Reference,TranslationRotationValue,Double,TranslationRotationValue,Double,TranslationRotationValue,Double,TranslationRotationValue,Double)
public BoundaryConditions NewLineBoundaryConditions(
	Reference reference,
	TranslationRotationValue X_Translation,
	double X_TranslationSpringModulus,
	TranslationRotationValue Y_Translation,
	double Y_TranslationSpringModulus,
	TranslationRotationValue Z_Translation,
	double Z_TranslationSpringModulus,
	TranslationRotationValue X_Rotation,
	double X_RotationSpringModulus
)
  • reference
    The Geometry reference to a Beam's, Wall's, Wall Foundation's, Slab's or Slab Foundation's analytical line.
  • X_Translation
    A value indicating the X axis translation option.
  • X_TranslationSpringModulus
    Translation Spring Modulus for X axis. Ignored if X_Translation is not "Spring".
  • Y_Translation
    A value indicating the Y axis translation option.
  • Y_TranslationSpringModulus
    Translation Spring Modulus for Y axis. Ignored if Y_Translation is not "Spring".
  • Z_Translation
    A value indicating the Z axis translation option.
  • Z_TranslationSpringModulus
    Translation Spring Modulus for Z axis. Ignored if Z_Translation is not "Spring".
  • X_Rotation
    A value indicating the option for rotation about the X axis.
  • X_RotationSpringModulus
    Rotation Spring Modulus for X axis. Ignored if X_Rotation is not "Spring"
Return Value BoundaryConditions If successful, NewLineBoundaryConditions returns an object for the newly created BoundaryConditions with the BoundaryType = 1 - "Line". is returned if the operation fails.
bool CreateLineConditionWithReference(AnalyticalMember column, Autodesk.Revit.Creation.Document docCreation)
{
   if (column.StructuralRole != AnalyticalStructuralRole.StructuralRoleColumn)
   {
      throw new Exception("This sample only work for columns.");
   }

   // Get the line reference for the column analytical model
   Reference lineReference = null;

   AnalyticalModelSelector selector = new AnalyticalModelSelector(column.GetCurve());
   lineReference = column.GetReference(selector);
   if (null == lineReference)
   {
      throw new Exception("Unable to get reference line for selected column.");
   }

   // Create line Boundary Conditions for the column
   BoundaryConditions condition = docCreation.NewLineBoundaryConditions(lineReference, TranslationRotationValue.Fixed, 0,
                                                                                       TranslationRotationValue.Fixed, 0,
                                                                                       TranslationRotationValue.Fixed, 0,
                                                                                       TranslationRotationValue.Fixed, 0);
   return (null != condition);
}