cPropAreaGetShellLayer Method |
Namespace: ETABS2016
int GetShellLayer( string Name, ref int NumberLayers, ref string[] LayerName, ref double[] Dist, ref double[] Thickness, ref string[] MatProp, ref bool[] Nonlinear, ref double[] MatAng, ref int[] NumIntegrationPts )
The function returns an error if the specified area property is not a shell-type property specified to be a layered shell.
Public Sub Example() Dim SapModel As cSapModel Dim EtabsObject As cOAPI Dim ret As Integer = -1 Dim Name As String Dim MyNumberLayers As Integer Dim MyLayerName() As String Dim MyDist() As Double Dim MyThickness() As Double Dim MyNumIntegrationPts() As Integer Dim MyMatProp() As String Dim MyMatAng() As Double Dim NumberLayers As Integer Dim LayerName() As String Dim Dist() As Double Dim Thickness() As Double Dim MatProp() As String Dim MatAng() As Double Dim NumIntegrationPts() As Integer 'create ETABS object EtabsObject = CreateObject("CSI.ETABS.API.ETABSObject") 'start ETABS application ret = EtabsObject.ApplicationStart() 'create SapModel object SapModel = EtabsObject.SapModel 'initialize model ret = SapModel.InitializeNewModel() 'create steel deck template model ret = SapModel.File.NewSteelDeck(4,12,12,4,4,24,24) 'set new area property ret = SapModel.PropArea.SetShell_1("A1", 6, True, "", 0, 0, 0) 'add A615Gr60 rebar material ret = SapModel.PropMaterial.AddQuick(Name, eMatType.Rebar, , , , , eMatTypeRebar.ASTM_A615Gr60) 'set area property layer parameters MyNumberLayers = 5 ReDim MyLayerName(MyNumberLayers - 1) ReDim MyDist(MyNumberLayers - 1) ReDim MyThickness(MyNumberLayers - 1) ReDim MyNumIntegrationPts(MyNumberLayers - 1) ReDim MyMatProp(MyNumberLayers - 1) ReDim MyMatAng(MyNumberLayers - 1) MyLayerName(0) = "Concrete" MyDist(0) = 0 MyThickness(0) = 16 MyNumIntegrationPts(0) = 2 MyMatProp(0) = "4000Psi" MyMatAng(0) = 0 MyLayerName(1) = "Top Bar 1" MyDist(1) = 6 MyThickness(1) = 0.03 MyNumIntegrationPts(1) = 1 MyMatProp(1) = Name MyMatAng(1) = 0 MyLayerName(2) = "Top Bar 2" MyDist(2) = 6 MyThickness(2) = 0.03 MyNumIntegrationPts(2) = 1 MyMatProp(2) = Name MyMatAng(2) = 90 MyLayerName(3) = "Bot Bar 1" MyDist(3) = -6 MyThickness(3) = 0.03 MyNumIntegrationPts(3) = 1 MyMatProp(3) = Name MyMatAng(3) = 0 MyLayerName(4) = "Bot Bar 2" MyDist(4) = -6 MyThickness(4) = 0.03 MyNumIntegrationPts(4) = 1 MyMatProp(4) = Name MyMatAng(4) = 90 ret = SapModel.PropArea.SetShellLayer("A1", MyNumberLayers, MyLayerName, MyDist, MyThickness, MyNumIntegrationPts, MyMatProp, MyMatAng) 'get area property layer parameters ret = SapModel.PropArea.GetShellLayer("A1", NumberLayers, LayerName, Dist, Thickness, NumIntegrationPts, MatProp, MatAng) 'close ETABS EtabsObject.ApplicationExit(False) 'clean up variables SapModel = Nothing EtabsObject = Nothing End Sub