如何使用OpenSTAAD创建三角形/四边形板?


【需求说明】

如何在OpenSTAAD中使用VBA创建三角形/四边形板?

【函数及参数】

可以使用AddPlateCreatePlate函数。

AddPlate用来在当前模型中添加一个具有指定现有节点的板,并自动返回分配的板编号ID。

参数:

AddPlate()

[返回值] node: 分配给新创建板的板编号ID。

CreatePlate用来在当前模型中创建一个具有指定现有节点和指定板编号的板。

参数:

CreatePlate()

【应用举例】(VBA语法)

创建三角形板:

Set objOpenSTAAD = GetObject(, "StaadPro.OpenSTAAD")

Dim nNodeA(1) As Long

Dim nNodeB(1) As Long

Dim nNodeC(1) As Long

Dim nNodeD(1) As Long

Dim plate(1) As Long

nNodeA(0) = 1

nNodeB(0) = 2

nNodeC(0) = 3

nNodeD(0) = 0

 

nNodeA(1) = 2

nNodeB(1) = 5

nNodeC(1) = 6

nNodeD(1) = 0

 

For i = 0 To 1

    plate(i) = objOpenSTAAD.Geometry.AddPlate(nNodeA(i), nNodeB(i), nNodeC(i), nNodeD(i))

Next i

输出结果:

创建四边形板:

Set objOpenSTAAD = GetObject(, "StaadPro.OpenSTAAD")

Dim nNodeA(1) As Long

Dim nNodeB(1) As Long

Dim nNodeC(1) As Long

Dim nNodeD(1) As Long

Dim nPlateNo(1) As Long

nNodeA(0) = 1

nNodeB(0) = 2

nNodeC(0) = 3

nNodeD(0) = 4

nPlateNo(0) = 1

 

nNodeA(1) = 2

nNodeB(1) = 5

nNodeC(1) = 6

nNodeD(1) = 3

nPlateNo(1) = 2

 

For i = 0 To 1

    objOpenSTAAD.Geometry.CreatePlate nPlateNo(i), nNodeA(i), nNodeB(i), nNodeC(i), nNodeD(i)

Next i

输出结果: