3.1.6: Line to Beam

Fig. 3.1.6.1 shows how the “LineToBeam”-component takes two lines as input, finds out how they connect and outputs beams as well as a set of unique points which are their end-points. Lines with end-points of identical index get automatically removed. Unless lines get removed, there is a one to one correspondence between the list of input lines and output beams.

The “LineToBeam”-component accepts straight lines, polylines and splines as geometric input. Polylines get exploded into segments. Splines are intersected according to the parameters 'ToPAng', 'ToPTol' and 'ToPMinL' (see below for their meaning) . All coordinates are in meters (or feet in case of Imperial units).

For Cross section design the buckling length assumed for the individual elements is of utmost importance. By default - when the input at "SetBkl" is 'True' - the distance between the end-points of a line, poly-line or spline forms the initial assumption for the buckling length of all thus created elements. An assumption for the buckling length is always given a negative sign but is taken as an absolute value in the design procedures. This assumption can be overridden via a "ModifyBeam"-component by the user by supplying a positive buckling length. In case that the simplified buckling length calculation done by Karamba3D (see section 3.6.8: Optimize Cross Section 🔷) leads to a larger value than the initial assumption then the larger value is applied. A User defined positive buckling length always wins over any assumptions.

The “Color”-input lets one define a color for the rendering of elements. In order to display the colors activate the “Elements”-button in sub-menu “Colors” of the “ModelView”-component. In addition the option “Cross section” of the sub-menu “Render Settings” of the “BeamView”-component needs to be on.

Elements can be given non-unique names via the “Id”-input . It takes a list of strings as identifiers for beams. The default value is an empty string. Each beam has a name by default: its zero based index in the model. Identifiers provide a useful means to group the beams in order to modify or display them. In case one wants to give multiple names to an element use the notation '&"id1"|"id2"|"id3"|...' or shorter '&id1|id2|id3|...'. Similar to regular expressions this assigns the identifiers 'id1', 'id2', 'id3',... to a beam.

Cross sections can be attached to elements with the “CroSec”-input. Cross section definitions via the “Assemble”-component override these settings.

A click on the “Options” submenu heading reveals additional input-options of the “LineToBeam”-component:

Input

Property

“Pts”

The order in which points appear in the output node-list is random by default. However it is sometimes advantageous to identify certain points by their list index in order to put loads on them or to define supports. This can be achieved by feeding a list of coordinates into the “Points”-plug. They will be placed at the beginning of the output nodes-list. So in order that the end-points of the structure in fig. 3.1.6.1 have index 0 and 1 it is necessary to input a list of points with coordinates (0/0/0) and (8/0/0).

“New”

If this plug has the value “False” only those lines will be added to the structure that start and end at one of the points given in the input points-list.

“Remove”

If this option has the value “True” the "LineToBeam"-component checks for lines that lie on each other and merges such duplicates into one. This prevents an error that is hard to detect by visual inspection alone: Two lines on the same spot mean double member stiffness in the structural model. Alternatively apply the “Remove Duplicate Lines”-component from the Karamba3D utilities section on the list of incoming lines. This assures a one-to-one correspondence between lines and elements.

“LDist”

Sets the limit distance for two points to be merged into one. Points supplied via lines count as identical if their distance is less than that given in “LDist”. The default value of “LDist” is 5mm5mm. The snapping of nodes does not apply to points supplied via the “Pt”-input-plug. The mechanism for attaching duplicate nodes to elements is identical to that used by the “Assemble”-component (see section 3.1.1).

“Z-Ori”

The default orientation of beams and trusses is described in section 3.1.14. The “Z-Ori”-input lets one define a non-standard direction for the local Z-axis.

“Bending”

Allows to switch off the bending stiffness of beams. This turns them into trusses. For details see section 3.1.10.

"SetBklL"

Set Buckling Length: If 'True' (the default) the buckling length in local Y- and Z- as well as for lateral torsional buckling is set as the distance between the endpoints of the input curve. If this length is smaller than the automatic estimate based on the connectivity of the element's endpoints it will be replaced by it.

"ToPAng"

To Polyline Max Angle: For converting splines into polylines: Maximum angle (0 to pi) between tangents at adjacent vertices.

"ToPTol"

To Polyline Tolerance: For converting splines into polylines: If tolerance = 0, the parameter is ignored. This parameter controls the maximum permitted value of the distance in the base unit for geometry input from the curve to the polyline.

"ToPMinL"

To Polyline Min Edge-length: For converting splines into polylines: If maxEdgeLength = 0, the parameter is ignored. This parameter controls the maximum permitted edge length in the base unit for geometry input.

Beams that meet at a common point are by default connected rigidly in the structural model like they were welded together. See section 3.3.6 on how to define joints at the end of beams. The “Info” output-plug informs about the number of removed nodes and beams.

In order to be of immediate use, beams come with a number of default properties. They can be seen in the top right string-output of fig. 3.1.6.1: “active” means that a beam will be included in the structural model. The default cross section is a circular hollow profile of diameter 114mm with a wall-thickness of 4mm. The default material is steel of grade “S235” according to Eurocode 3.

Last updated