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
BIMSOFTWARE.MX GStarCAD - Software CAD 2d/3d
Canales de Ingeniería Civil en:
Whatsapp / Telegram
Whatsapp / Telegram
SAP2000 y visual basic
-
- Usuario Intermedio
- Mensajes: 59
- Registrado: Lun Jul 20, 2009 11:58 am
el tema que desarrollaste la interrelacion del sap2000 y el visual basic es muy interezante y poco estudiado, te pregunto si tenes alguna otras rutinas en visual basic que me podas facilitar a mi correo jey@ipe.bo.
Saludos
Jose Fierro
Saludos
Jose Fierro
Saludos, he encontrado información referente al tema, me parece muy interesante, seria bueno si intercambiaramos la información que tenemos, mi correo gsotoh@gmail.com
- ajmojicar2002
- Usuario Master Superior
- Mensajes: 446
- Registrado: Mié Sep 22, 2004 8:44 pm
- Ubicación: SANTA MARTA
Será que dicha información se puedaublicar en estos medios?gsotoh escribió:Saludos, he encontrado información referente al tema, me parece muy interesante, seria bueno si intercambiaramos la información que tenemos, mi correo gsotoh@gmail.com
Tate.
ajmojicar
-
- Usuario Intermedio
- Mensajes: 59
- Registrado: Lun Jul 20, 2009 11:58 am
estimado Gustaviti:
no conoces algun libro o foro donde te den mayores luces al respecto de programacion para sap2000 V14
Saludos
Jose Fierro
no conoces algun libro o foro donde te den mayores luces al respecto de programacion para sap2000 V14
Saludos
Jose Fierro
Estimados:
El mismo SAP2000 viene con un manual en pdf que explica todo sobre esta materia. Yo solo viendo esa informacion, he podido hacer programas en visual basic que me han simplificado bastante el trabajo.
Saludos
El mismo SAP2000 viene con un manual en pdf que explica todo sobre esta materia. Yo solo viendo esa informacion, he podido hacer programas en visual basic que me han simplificado bastante el trabajo.
Saludos
- ajmojicar2002
- Usuario Master Superior
- Mensajes: 446
- Registrado: Mié Sep 22, 2004 8:44 pm
- Ubicación: SANTA MARTA
Excelente aportegustavini escribió:Estimados:
El mismo SAP2000 viene con un manual en pdf que explica todo sobre esta materia. Yo solo viendo esa informacion, he podido hacer programas en visual basic que me han simplificado bastante el trabajo.
Saludos
-
- Usuario Principiante
- Mensajes: 2
- Registrado: Mar Mar 12, 2013 2:54 am
Buen día gustavini, copio el código en el visual basic del excel y me dice error de compilación en Sub AddAreaObjByCoord()
Podrías ayudarme? Muchas gracias!
Podrías ayudarme? Muchas gracias!
-
- Usuario Principiante
- Mensajes: 1
- Registrado: Mar Jun 14, 2022 3:37 pm
Gustavini,
Debes definir tu área primero, siguiendo la documentación de la API de SAP2000 V14 en código VBA sería algo más o menos así:
Debes definir tu área primero, siguiendo la documentación de la API de SAP2000 V14 en código VBA sería algo más o menos así:
Código: Seleccionar todo
'set new area property
Dim espesor As Double
espesor = 15
ret = SapModel.PropArea.SetShell_1("NOMBRE_SECCION", 1, True, "MATERIAL", 0, espesor, espesor)
'se define el área y se le asigna la propiedad
'add area object by points
Dim Point() As String
Dim Name As String
Redim Point(3)
Point(0) = "1"
Point(1) = "4"
Point(2) = "5"
Point(3) = "2"
ret = SapModel.AreaObj.AddByPoint(4, Point, Name,"NOMBRE_SECCION")
-
- Similar Topics
- Respuestas
- Vistas
- Último mensaje
-
- 1 Respuestas
- 8287 Vistas
-
Último mensaje por construaprende
-
- 2 Respuestas
- 6989 Vistas
-
Último mensaje por construaprende
-
- 2 Respuestas
- 9635 Vistas
-
Último mensaje por gatogalaxi
-
- 2 Respuestas
- 8766 Vistas
-
Último mensaje por Calculista 1967
-
- 1 Respuestas
- 6892 Vistas
-
Último mensaje por pannus0
-
- Información
-
¿Quién está conectado?
Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 invitados