SAP2000 y visual basic
Publicado: Mar Mar 24, 2009 1:47 pm
Estimados
Estoy aprendiendo a programar en visual basic para hacer aplicaciones para SAP2000. Recien hice algo bien basico que es para dibujar un elemento shell rectangular con las coordenadas que se obtienen de una planilla excel. Eso esta listo, pero ahora quiero definir el espesor del shell y el material que se le asignará y aun no se como hacerlo. Alguien sabe como??
les dejo el codigo que se ejecuta desde el visual basic del excel 2007
Sub AddAreaObjByCoord()
'dimension variables
Dim SapObject As SAP2000.SapObject
Dim SapModel As cSapModel
Dim ret As Long
Dim x() As Double
Dim y() As Double
Dim z() As Double
Dim Name As String
'create Sap2000 object
Set SapObject = New SAP2000.SapObject
'start Sap2000 application
SapObject.ApplicationStart
'create SapModel object
Set SapModel = SapObject.SapModel
'initialize model
ret = SapModel.InitializeNewModel(Ton_cm_C)
'create model from template
ret = SapModel.File.NewBlank
'add area object by coordinates
ReDim x(3)
ReDim y(3)
ReDim z(3)
x(0) = -Range("d12") / 2: y(0) = 0
x(1) = Range("d12") / 2: y(1) = 0
x(2) = Range("d12") / 2: y(2) = Range("f8")
x(3) = -Range("d12") / 2: y(3) = Range("f8")
ret = SapModel.AreaObj.AddByCoord(4, x, y, z, Name)
'refresh view
ret = SapModel.View.RefreshView(0, False)
'close Sap2000
Set SapModel = Nothing
Set SapObject = Nothing
End Sub
Estoy aprendiendo a programar en visual basic para hacer aplicaciones para SAP2000. Recien hice algo bien basico que es para dibujar un elemento shell rectangular con las coordenadas que se obtienen de una planilla excel. Eso esta listo, pero ahora quiero definir el espesor del shell y el material que se le asignará y aun no se como hacerlo. Alguien sabe como??
les dejo el codigo que se ejecuta desde el visual basic del excel 2007
Sub AddAreaObjByCoord()
'dimension variables
Dim SapObject As SAP2000.SapObject
Dim SapModel As cSapModel
Dim ret As Long
Dim x() As Double
Dim y() As Double
Dim z() As Double
Dim Name As String
'create Sap2000 object
Set SapObject = New SAP2000.SapObject
'start Sap2000 application
SapObject.ApplicationStart
'create SapModel object
Set SapModel = SapObject.SapModel
'initialize model
ret = SapModel.InitializeNewModel(Ton_cm_C)
'create model from template
ret = SapModel.File.NewBlank
'add area object by coordinates
ReDim x(3)
ReDim y(3)
ReDim z(3)
x(0) = -Range("d12") / 2: y(0) = 0
x(1) = Range("d12") / 2: y(1) = 0
x(2) = Range("d12") / 2: y(2) = Range("f8")
x(3) = -Range("d12") / 2: y(3) = Range("f8")
ret = SapModel.AreaObj.AddByCoord(4, x, y, z, Name)
'refresh view
ret = SapModel.View.RefreshView(0, False)
'close Sap2000
Set SapModel = Nothing
Set SapObject = Nothing
End Sub