Problem Description:
How to assign member concentrated force using OpenSTAAD functions
Solution:
You need to use function AddMemberConcForce to assign member concentrated force. You also need to use SetLoadActive to make the specified load number active, in order to add this load item.
Parameter:
SetLoadActive :
[Input] LoadNo: The load case reference number ID
AddMemberConcForce:
[Input] BeamNo: Member number ID(s)
[Input] Direction: Load direction: (= 1 to 6 for LocalX, LocalY, LocalZ, GlobalX, GlobalY and GlobalZ, respectively)
[Input] Load: Magnitude of the concentrate force in current unit
[Input] D1: Distance from the start of the member to concentrated force or moment
[Input] D2: Perpendicular distance from the member shear center to the local plane of loading. For additional information, please refer to Section 5.32.2 of the Technical Reference manual
Sample VBA Syntax:
Set objOpenStaad = GetObject(, "StaadPro.OpenSTAAD")
Dim BeamNo As Long
Dim Direction As Long
Dim Load(3) As Double ' CONCENTRATED FORCE value
Dim D1(3) As Double
Dim D2(3) As Double
Dim LoadNo As Long
BeamNo = 141 ' Member ID
Direction = 5 '5:GY
Load(0) = -1.1
Load(1) = -2.2
Load(2) = -3
Load(3) = -4.2
D1(0) = 0.5
D1(1) = 1
D1(2) = 1.5
D1(3) = 2
For i = 0 To 3
D2(i) = 0
Next i
LoadNo = 4 'Load case 4
objOpenStaad.Load.SetLoadActive LoadNo
objOpenStaad.Load.AddMemberConcForce BeamNo, Direction, Load(i), D1(i), D2(i)
Output:
Array can be used for variable BeamNo to assign member concentrated force to multiple load members