You are on page 1of 47

LA INTRODUCCIÓN

El SAP2000 Application Programming Interface (API) es una herramienta poderosa que


permite usuarios automatizar muchos de los procesos requirió construir, analizar y el
diseño modela y para obtener hecho a la medida análisis y resultados del diseño.
También da a usuarios permiso de conectar SAP2000 con software de terceros, con tal
que un camino para el cambio de dos formas de información modelo con otro programa.
La mayoría de lenguajes de programación principales pueden usarse para ganar acceso
al SAP2000 a través del API. Éste incluye a Basic Visual para Applications (VBA), lo
cual es incluido en programas como Microsoft Excel.
Esta documentación es organizada en las siguientes categorías principales:
Comenzando, SAP2000 API Funciona, y Example Code.
 La liberación Nota punto de interés recientes cambios en el API.
 Comenzar brevemente explica cómo usar el SAP2000 API y cómo están las
funciones SAP2000 API documentadas.
 SAP2000 API Functions identifica cada función disponible en el SAP2000 API
y provee un ejemplo de cómo podría llamarse la función usar a Basic Visual
para Applications (VBA) esto es integrado en Microsoft Excel.
 El ejemplo Code provee ejemplos programadores usando al SAP2000 API.
Estos ejemplos son más extensivos que esos incluidos con la documentación de
cada función.
 Functions obsoleto es el resultado de cambios para SAP2000/the API. que Estas
funciones obsoletas han sido supercedidas, pero continúa siendo incluido para
acomodar al revés compatibilidad.
Noto que el SAP2000 API está sólo disponible en ciertos niveles de SAP2000 v11.00 y
más tarde.

Emigrando de Sap2000 V11 Para Sap2000 V12 - La Nomenclatura cambia

En la versión del SAP2000 12.00, la nomenclatura se varió de: Combinations Load


Cases, Analysis Cases y Response para Combinations Load Patterns, Load Cases y
Load, respectivamente. El SAP2000 API fue modificado en la versión 12.00 para estar
consistente con este cambio de nomenclatura.
Los cambios hicieron para la versión del SAP2000 12.00 API como resultado de los
cambios de nomenclatura es como sigue:

La clase Names
Los cLoadCases se convirtieron en cLoadPatterns
Los cAnalysisCases se convirtieron en cLoadCases

El objeto Variables
LoadCases se convirtió en LoadPatterns
AnalysisCases se convirtió en LoadCases

La enumeración Names
El eLoadCaseType se convirtió en eLoadPatternType
eAnalysisCaseType cambiado para eLoadCaseType

1
Los artículos de enumeración en la enumeración del eCtype
El ACase se convirtió en LoadCase
El RCombo se convirtió en LoadCombo

Los nombres Variables locales


LoadCase se convirtió en LoadPat
El ACase se convirtió en LoadCase

Al modificar existir código API esto es compatible con versión del SAP2000 11 para el
uso con versión del SAP2000 12, es de suma importancia que todos los artículos de tipo
LoadCase estén cambiados para artículos de tipo LoadPattern antes de cambiar los
artículos de tipo AnalysisCase para artículos de tipo LoadCase. Si esto no es hecho,
entonces algunos artículos de tipo AnalysisCase podrían estar cambiados para artículos
de tipo LoadCase y entonces más tarde esté accidentalmente cambiado para artículos de
tipo LoadPattern.
El grupo de seguidores es una orden sugerida para hacer se convierte en su API código.

- Cambie cLoadCases para cLoadPatterns


- El cambio .LoadCases para .LoadPatterns
- El eLoadCaseType de cambio para eLoadPatternType
- Cambíe variables local LoadCase para LoadPat
- Cambie cAnalysisCases para cLoadCases
- El cambio .AnalysisCases para .LoadCases
- El eAnalysisCaseType de cambio para eLoadCaseType
- Cambie ACase local de variables para LoadCase
- Cambie el ACase ítem en la enumeración del eCtype para LoadCase
- Cambie el RCombo ítem en la enumeración del eCtype para LoadCombo

GANANDO ACCESO AL SAP2000 DE UN USO EXTERNO

El primer paso en usar al SAP2000 API de un uso externo es poner notas al SAP2000
de su aplicación. Al usar a Excel VBA, establezca referencias para Sap2000 por ahí
abriendo al jefe de redacción VBA, haciendo clic lo Tools menu > References. La orden
y comprobando la caja al lado de SAP2000.
Después una instancia del objeto del SAP2000 debe ser creada (también conocido como
inicializando el objeto) dentro de su aplicación. En VBA que esto pudo estar
consumado como:

Dim SapObjectAs SAP2000.SapObject

Set SapObject = New SAP2000.SapObject

La primera línea crea la variable del objeto y la segunda línea crea la instancia del
objeto del SAP2000. Ahora que una instancia del objeto del SAP2000 ha sido creada en
su aplicación, el SAP2000 de principio usando la siguiente orden:

SapObject.ApplicationStart

2
En este punto usted puede abrir al público un modelo existente, o puede crear a uno
nuevo y puede realizar lo que fuere que las acciones son requeridas. En general, las
órdenes API son a las que se ganó acceso a través de SapObject.SapModel.
Puede ser de ayuda para definir un propósito SapModel así es que el API ordena es al
que se ganó acceso a través de SapModel en lugar de SapObject.SapModel. En VBA
que esto pudo estar consumado como:

Dim SapModelAs cSapModel

Set SapModel= SapObject.SapModel

Estando acabado con un modelo, usted puede querer cerrar la aplicación del SAP2000.
Esto puede estar consumado usando la siguiente orden VBA:

SapObject.ApplicationExit  True

Como un último paso, el SapModel y SapObjectobjects siempre no deberían estar listos


para Ninguna cosa. En VBA que esto está consumado como:

Set SapModel= Nothing

Set SapObject= Nothing

Colocar los objetos para Ninguna cosa es un paso de suma importancia. Despedaza la
conexión entre su aplicación y SAP2000 y libera arriba de recursos de sistema. Si los
objetos no están colocados para Ninguna cosa, entonces la aplicación del SAP2000
completamente no se cerrará (usted aquietará sede ella corriendo en su Windows Task
Manager).
Metiendo todos los pasos descritos anteriormente en un solo ejemplo, un programa
VBA podría constar de lo siguiente:

Sub MyProgram

' Las variables de dimensión

Dim SapObjectAs SAP2000.SapObject

Dim SapModelAs cSapModel

Dim ret As Long

' Cree una instancia del objeto Sap2000

Set SapObject= New SAP2000.SapObject

' Inicie la aplicación Sap2000

SapObject.ApplicationStart

' Cree el objeto SapModel

Set SapModel= SapObject.SapModel

3
'initialize model

ret = SapModel.InitializeNewModel

   ' La llamada Sap2000 API funciona aquí realizar deseado tareas

' En este ejemplo un marco nuevo del 2D es creado de plantilla

  ret = SapModel.File.New2DFrame(PortalFrame, 3, 124, 3, 200)

' Cierre la aplicación Sap2000, si sea deseado

SapObject.ApplicationExit False

' No coloque los objetos para Ninguna cosa

' Al final de su programa ALWAYS terminan los propósitos de esta manera

Set SapModel= Nothing

Set SapObject= Nothing

End Sub

LAS BUENAS COSTUMBRES DE LA DOCUMENTACIÓN DE FUNCIÓN

La documentación de cada función en el API tiene los siguientes capítulos:

La sintaxis
Este capítulo provee la sintaxis de la orden como usted la llamaría de un uso externo sin
incluir cualquier parámetro.

El VB6 Procedure
El procedimiento del VB6 demuestra la función tan definida en SAP2000. Esta
definición de función enseña el tipo variable de cada parámetro, que los parámetros son
optativos, y cuáles parámetros optativos tienen valores predeterminados incorporados.
Le veo a Concepts Básico Visual Used en el SAP2000 API < Visual _ Basic _ Concepts
_ In _ Usado _ El _ Sap2000 _ API . htm > para más información acerca de definiciones
Básicas Visuales que aplique para el SAP2000 API.

Los parámetros
Los Parameters usados en la función están en breve descritos. Los parámetros que
tienen unidades se asociaron con ellos es seguido por un abreviamiento de unidades
Units Abbreviations.htm > en corchetes, algo semejante como F, indicar las unidades
determina el tipo sanguíneo para el artículo.

4
Los comentarios
Los Remarks describa lo que la función hace y provee información adicional, si
cualquier, eso no estaba clarificado en los Parameters. Vea a Function Return Values
Function Return Values.htm > para más información.

VBA Example
El ejemplo VBA usa la función considerada. Los ejemplos están escritos para el uso en
Microsoft Excel VBA.

La liberación Notes
La información de liberación específica para la función considerada es provista.

Vea También
Funciona eso está relacionado a la función considerada, si cualquier, está listado en este
área.

LOS VALORES DE REGRESO DE FUNCIÓN


Casi todas las funciones SAP2000 API devuelven un valor Largo (32 mordieron indicó
a través de señas entero) indicando si la función ejecutó exitosamente.
Un valor de regreso de 0 señala que el SAP2000 exitosamente ejecutó la función.
Cualquier poco ponga en el cero regreso que el valor señala que la función no fue
exitosamente ejecutada.

UNIDAD ABREVIADAS
En la documentación de cada función SAP2000 API, los parámetros que tienen
unidades se asociaron con ellos es seguido a las uno de los siguientes abreviamientos,
para indicar las unidades para esos parámetros.

[L] = Longitud

[F] = Fuerza,  [F] = [ML/s2]

[M] = Masa

[s] = Tiempo, segundos

[T] = Temperatura

[cyc] = ciclos

[rad] = radianes (la medida del ángulo)

[deg] = grado (la medida del ángulo)

Las combinaciones de estos abreviamientos son usadas en muchos casos. Por ejemplo,
los momentos son indicados como [FL] y tensiones nerviosas sean indicados como
[F/L2].

5
CONCEPTS BÁSICO VISUAL USED EN EL SAP2000 API

Algunos de los conceptos Básicos Visuales y las definiciones que aplican para el
SAP2000 API está clarificada en este punto.

La opción Base
Basic visual 6 permite el incumplimiento inferior con dirección a los conjuntos
imponentes para estar especificado como 0 (el incumplimiento), o 1. El SAP2000 usa
un salto inferior de 0 para todos los conjuntos imponentes. Cualquier programe que el
SAP2000 de vías de entrada a través del API también debiese usar un salto inferior de 0
para sus conjuntos imponentes.

Fix-Size y Arrays Dinámico


Los conjuntos imponentes pueden usarse para referirse a una serie de variables por el
mismo nombre y a usar un número (un índice) distinguirlas. Basic visual tiene dos tipos
de conjuntos imponentes: fixed-size and dynamic
Un conjunto imponente de tamaño fijo siempre permanece el mismo tamaño. Un
conjunto imponente dinámico puede alterarse su tamaño mientras el programa marcha.
Un conjunto imponente de tamaño fijo es declarado con el tamaño indicado. Por
ejemplo, la siguiente línea pronuncia a MyFixedArray dimensionado para 2.

Dim MyFixedArray(2)as Double

Dimensionando el conjunto imponente para 2 manera que mantiene tres artículos de


datos:

MyFixedArray(0) = El primer artículo de datos


MyFixedArray(1) = El segundo artículo de datos
MyFixedArray(2) = El tercer artículo de datos

Los conjuntos imponentes dinámicos son declarados sin tamaño indicado tan
demostrado aquí:

Dim MyDynamicArray()as Double

Los conjuntos imponentes dinámicos son dimensionados en alguna ocasión después de


que son declarados usando una declaración como lo siguiente:

ReDim MyDynamicArray(2)

Cualquier forme en orden esto es SAP2000 interior dimensionado debe estar declarado
como un conjunto imponente dinámico a fin de que el SAP2000 lo repuede
dimensionar. Debe de ser una buena idea para declarar todos los conjuntos imponentes
como los conjuntos imponentes dinámicos para la simplicidad. Por poner un ejemplo, el
análisis resultado obtenido a través del SAP2000 API son almacenados en conjuntos
imponentes que están definidos como conjuntos imponentes dinámicos por el usuario y
entonces interior dimensionado y lleno de SAP2000.

6
La variable Mecanografía
La mayor parte de los datos en el SAP2000 API son uno de los siguientes tipos
variables.

Boolean: Una variable almacenada como un número de 16 bits (de 2 bytes), pero sólo
puede ser True o False. Cuándo los valores del boolean son convertidos a otros tipos de
datos, False se pone 0 y Verdadero se convierte en – 1.

Bastante: Una variable almacenada como un número de 32 bits (de 4 bytes)


extendiéndose en el valor de - 2,147,483,648 para 2,147,483,647. Note que otros
lenguajes de programación pueden referirse a este tipo de datos diferentemente; Por
ejemplo, pueden referirse a esto como un Entero.

El doble: Una variable del punto que flota precisión doble almacenada como un (de 8
bytes) número del punto de flotación IEEE 64-BITE extendiéndose en -
1.79769313486231E308 para - el valor de 4.94065645841247E-324 para los valores
negativos y de 4.94065645841247E-324 para 1.79769313486232E308 para los valores
positivos.

La cuerda: Una cuerda variable de largo.

ARGUMENTOS OPTATIVOS
Algunas de las funciones SAP2000 API tienen discusiones optativas. Por ejemplo, la
función CountLoadDispl tiene dos discusiones optativas: El nombre y LoadPat. No hay
que incluir las discusiones optativas al llamar esta función. Todas las cuatro de las
siguientes llamadas son válidas.

ret = SapModel.PointObj.CountLoadDispl(Count)

ret = SapModel.PointObj.CountLoadDispl(Count, Name)

ret = SapModel.PointObj.CountLoadDispl(Count, , LoadPat)

ret = SapModel.PointObj.CountLoadDispl(Count, Name, LoadPat)

Note en el tercer ejemplo, el primer artículo optativo no es incluido y el segundo


artículo optativo está incluido. En ese caso, las comas deben estar incluidas para
denotar las discusiones faltant

COMENTARIOS

En Basic Visual la declaración Rem seguida por un espacio indica eso todos los datos
sin retardo a la derecha de la declaración Rem es un comentario (o un comentario). La
declaración Rem puede ser abreviada usando un apóstrofo, ( '). El apóstrofo es usado en
todos los ejemplos VBA en la documentación SAP2000 API a denotar un comentario.

7
ByVal and ByRef

Las variables son pasadas a las funciones SAP2000 API usando al ByRef o la palabra
clave ByVal.
 ByVal quiere decir que la variable está aprobada por el valor. Esto da a al
SAP2000 API permiso de ganar acceso a una copia de la variable pero no de la
variable original. Esto quiere decir que el valor de la variable en otra aplicación
puede no variarse por el API.
 ByRef, cuál es el incumplimiento en VB6 y VBA, manera la discusión está
aprobada por la referencia. Esto pasa la dirección de la variable al SAP2000 API
en lugar de pasar una copia del valor. Da a al SAP2000 API permiso de ganar
acceso a la variable real, y, como un resultado, da SAP2000 permiso de cambiar
el valor real de la variable en una aplicación.
Las variables son ByRef aprobado cuando las necesidades de datos para ser devueltas
en ellas de SAP2000 para su aplicación. Además, Basic Visual requiere que todos los
conjuntos imponentes sean ByRef aprobado.

LA LIBERACIÓN NOTES
La nomenclatura cambiada de Load Cases, Analysis Cases y Response Combinations
para Load Patterns, Load Cases y Load Combinations, respectivamente, en la versión
12.00.

1. LA APLICACIÓN CERRADA

La sintaxis

SapObject.ApplicationExit

El VB6 Procedure

La función ApplicationExit (ByVal FileSave Como Boolean) Tan Largo

Los parámetros

FileSave
Si así de ítem es cierto el archivo modelo existente se salva antes de cerrar a
Sap2000.

Los comentarios

Si el archivo modelo está salvado entonces está salvado con su nombre coetáneo.
Usted no debería ajustar el objeto Sap2000 variable para ninguna cosa después
de llamar esta función.
Esta función devuelve cero si la función tiene éxito y poco cero si falla.

8
VBA Example

Sub ExitExample()

'dimensión variables

Dim SapObject As Sap2000.SapObject

Dim SapModel As cSapModel

Dim ret as Long

'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(kip_ft_F)

' Cree un marco del 3D modelo de plantilla

ret = SapModel.File.New3DFrame(BeamSlab, 3, 12, 3, 28, 2, 36)

'close Sap2000

 SapObject.ApplicationExit False

Set SapModel = Nothing

Set SapObject = Nothing

End Sub

LA LIBERACIÓN NOTES
La liberación inicial en la versión 11.00.

2. OBTENGA UNIDADES DE LA BASE DE DATOS

La sintaxis

SapObject.SapModel.GetDatabaseUnits

9
El VB6 Procedure

La función GetDatabasetUnits () Como eUnits

Los Parámetros
Ninguno

Los Comentarios
Esta función devuelve uno de los siguientes artículos de la enumeración de
eUnits indicando las unidades de la base de datos para el modelo. Todos los
datos son internamente almacenados en el modelo en estas unidades y se
convierten para las unidades presentes tan necesitados.

lb_in_F = 1
lb_ft_F = 2
kip_in_F = 3
kip_ft_F = 4
kN_mm_C = 5
kN_m_C = 6
kgf_mm_C = 7
kgf_m_C = 8
N_mm_C = 9
N_m_C = 10
Ton_mm_C = 11
Ton_m_C = 12
kN_cm_C = 13
kgf_cm_C = 14
N_cm_C = 15
Ton_cm_C = 16

VBA Example

Sub GetUnitsDatabase()
    'dimension variables
       Dim SapObject As Sap2000.SapObject
       Dim SapModel As cSapModel
     Dim ret As Long
       Dim MyUnits As eUnits

    'create Sap2000 object


       Set SapObject = New SAP2000.SapObject

    'start Sap2000 application


        SapObject.ApplicationStart

    'create SapModel object


        Set SapModel = SapObject.SapModel

10
    'initialize model
       ret = SapModel.InitializeNewModel

   ' Inicie un modelo nuevo de la plantilla


       ret = SapModel.File.New2DFrame(PortalFrame, 3, 124, 3, 200)

   ' Obtenga unidades de la base de datos


       MyUnits = SapModel.GetDatabaseUnits

   ' Sap2000 cercano

SapObject.ApplicationExit False
       Set SapModel = Nothing
       Set SapObject = Nothing
End Sub

La Liberación Notes
La liberación inicial en la versión 11.00.

3. GETMERGETOL

La sintaxis

SapObject.SapModel.GetMergeTol

El VB6 Procedure

La función GetMergeTol (ByRef MergeTol de Tan Al doble) Tan Largo

Los parámetros
MergeTol
El automóvil de programa mancomuna tolerancia. L

Los comentarios
Esta función recupera el valor del automóvil de programa mancomuna
tolerancia.
La función devuelve cero si la tolerancia es exitosamente recuperada; De otra
manera devuelve un valor de poco cero.

VBA Example

Sub GetAutoMergeTolerance()
    'dimension variables
       Dim SapObject As Sap2000.SapObject
       Dim SapModel As cSapModel
       Dim ret As Long
       Dim MergeTol As Double

11
    'create Sap2000 object
       Set SapObject = New SAP2000.SapObject

    'start Sap2000 application


       SapObject.ApplicationStart

    'create SapModel object


       Set SapModel = SapObject.SapModel

    ' Inicialice modelo


       ret = SapModel.InitializeNewModel

    ' Cree modelo de plantilla


       ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

    ' Obtenga automóvil mancomuna tolerancia


       ret = SapModel.GetMergeTol(MergeTol)

    'close Sap2000


       SapObject.ApplicationExit False
       Set SapModel = Nothing
       Set SapObject = Nothing

End Sub

4. GETMODELISLOCKED

La sintaxis

SapObject.SapModel.GetModelIsLocked

Procedimiento VB6

La función GetModelIsLocked () Como Boolean

Los parámetros

Ninguno

Los comentarios

La función devuelve a True si el modelo está cerrado y Falso si es desatado.


Con algunas excepciones, las definiciones y las asignaciones pueden no estar
cambiadas en un modelo mientras el modelo está cerrado. Si un intento es hecho
a altérese, entonces una definición o una asignación mientras el modelo está
cerrado y que ese cambio no es dejado entrar en un modelo cerrado, un error
será devuelto.

12
VBA Example

Sub GetModelLocked()

   ’Las variables de dimensión


      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim IsLocked As Boolean

   ' Cree objeto Sap2000


      Set SapObject = New SAP2000.SapObject

   ' La aplicación de principio Sap2000


      SapObject.ApplicationStart

   ' Cree objeto SapModel


      Set SapModel = SapObject.SapModel

' Inicialice modelo


      ret = SapModel.InitializeNewModel

   ' Cree modelo de plantilla


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   ' Inspeccione si el modelo está cerrado


      IsLocked = SapModel.GetModelIsLocked

   'cerrar Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

5. GETPRESENTCOORDSYSTEM

La sintaxis

SapObject.SapModel.GetPresentCoordSystem

Procedimiento VB6

La función GetPresentCoordSystem () Como Cuerda

Los parámetros

Ninguno

13
Los comentarios

Esta función devuelve el nombre del sistema de coordenadas presente

VBA Example

Sub GetPresentCSys()
   ’Las variables de dimensión
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as long
      Dim PresentCSys as String

   ' Cree objeto Sap2000


      Set SapObject = New SAP2000.SapObject

   ' La aplicación de principio Sap2000


      SapObject.ApplicationStart

   ' Cree objeto SapModel


      Set SapModel = SapObject.SapModel

   ' Inicialice modelo


      ret = SapModel.InitializeNewModel

      ' Cree modelo de plantilla


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   ' Defina sistema de coordenadas nuevo


      ret = SapModel.CoordSys.SetCoordSys("CSys1", 1000, 1000, 0, 0, 0, 0)

   ' El sistema de coordenadas presente determinado


      ret = SapModel.SetPresentCoordSystem("CSys1")

   ' Obtenga presente sistema de coordenadas


      PresentCSys = SapModel.GetPresentCoordSystem

      'cerrar Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

14
6. GETPRESENTUNITS

La sintaxis

SapObject.SapModel.GetPresentUnits

Procedimiento VB6

La función GetPresentUnits () Como eUnits

Los parámetros

Ninguno

Los comentarios

Esta función devuelve uno de los siguientes artículos de la enumeración de


eUnits indicando las unidades actualmente especificadas para el modelo

lb_in_F = 1
lb_ft_F = 2
kip_in_F = 3
kip_ft_F = 4
kN_mm_C = 5
kN_m_C = 6
kgf_mm_C = 7
kgf_m_C = 8
N_mm_C = 9
N_m_C = 10
Ton_mm_C = 11
Ton_m_C = 12
kN_cm_C = 13
kgf_cm_C = 14
N_cm_C = 15
Ton_cm_C = 16
VBA Example

Sub GetUnitsPresent()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim MyUnits As eUnits

   'create Sap2000 object


      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart

   'create SapModel object

15
      Set SapModel = SapObject.SapModel

   'initialize model
      ret = SapModel.InitializeNewModel

' Inicie un modelo nuevo de la plantilla


      ret = SapModel.File.New2DFrame(PortalFrame, 3, 124, 3, 200)

' Obtenga presente unidades


      MyUnits = SapModel.GetPresentUnits

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

7. GETPROJECTINFO

La sintaxis

SapObject.SapModel.GetProjectInfo

Procedimiento VB6

La función GetProjectInfo (ByRef NumberItems Tan el Artículo Largo, ByRef


() Como Cuerda, los Datos ByRef () Como Cuerda) Como Bastante

Los parámetros

NumberItems

El número de artículos de información de proyecto devueltos.

El artículo

Éste es un conjunto imponente que incluye el nombre del artículo de


información de proyecto.

Los datos

Éste es un conjunto imponente que incluye los datos para la información


especificada de proyecto ítem.

16
Los comentarios

Esta función recupera los datos de información de proyecto.

La función devuelve cero si los datos son exitosamente recuperados; De otra


manera devuelve un valor de poco cero.

VBA Example

Sub GetProjectInformationData()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim NumberItems As Long
      Dim Item() As String
      Dim Data() 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

‘Cree modelo de plantilla


      ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

   ' Los datos determinados de información de proyecto


      ret = SapModel.SetProjectInfo("Company Name", "Computers and Structures, Inc.")
      ret = SapModel.SetProjectInfo("Project Name", "API Testing")
      ret = SapModel.SetProjectInfo("My Item", "My Data")

   ' Obtenga datos de información de proyecto

      ret = SapModel.GetProjectInfo(NumberItems, Item, Data)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

17
8. GetUserComment

La sintaxis

SapObject.SapModel.GetUserComment

Procedimiento VB6

La función GetUserComment (ByRef Haga comentarios Como Cuerda) Tan


Largo

Los parámetros

El comentario

Los datos en los comentarios del usuario y el leño.

Los comentarios

Esta función recupera los datos en los comentarios del usuario y el leño.

La función devuelve cero si los datos son exitosamente recuperados; De otra


manera devuelve un valor de poco cero.

VBA Example

Sub GetComments()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim Comment 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

   'create model from template


      ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

   ' Añada comentarios


      ret = SapModel.SetUserComment("Testing the Sap2000 API.")
      ret = SapModel.SetUserComment("Adding a second comment.")
      ret = SapModel.SetUserComment("Adding a third comment.", 3)

18
' Obtenga comentarios
      ret = SapModel.GetUserComment(Comment)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

9. GetVersion

La sintaxis

SapObject.SapModel.GetVersion

Procedimiento VB6

La función GetVersion (la Versión ByRef Como Cuerda, ByRef


MyVersionNumber de Tan Al doble) Tan Largo

Los parámetros

La versión

El nombre de versión de programa esto es externamente desplegado para el


usuario.

MyVersionNumber

El número de versión de programa esto es usado internamente por el programa y


no exhibido para el usuario

Los comentarios

Esta función devuelve la versión de programa del SAP2000.


La función devuelve cero si la información es exitosamente recuperada; De otra
manera devuelve un valor de poco cero.

VBA Example

Sub GetProgramVersion()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim Version As String
      Dim MyVersionNumber As Double
      Dim ret As Long

19
   'create Sap2000 object
      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart

   'create SapModel object


      Set SapModel = SapObject.SapModel

   'obtenga la version del programa


      ret = SapModel.GetVersion(Version,MyVersionNumber)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

10. Hide

La sintaxis

SapObject.Hide

Procedimiento VB6

La función hide() es larga

Los parámetros

ninguno

Los comentarios

Esta función distorsiona la aplicación Sap2000. Cuando la aplicación está


escondida no es visible en la pantalla o en la barra de tarea Windows.
La función devuelve cero si la aplicación Sap2000 está exitosamente escondida
y poco cero si la función falla. Si la aplicación está ya escondida llamando,
entonces esta función devuelve un error

VBA Example

Sub HideSap()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as long

   'create Sap2000 object

20
      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart

   'create SapModel object


      Set SapModel = SapObject.SapModel

   'create model from template


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   'hide application
      ret = SapObject.Hide

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

11. InitializeNewModel

La sintaxis

SapObject.SapModel.InitializeNewModel

Procedimiento VB6

La función InitializeNewModel (los eUnits Optativos ByVal Units As = se


duermen _ en _ F) Como Long

Los parámetros

Las unidades
Ésta son las unidades de la base de datos para el modelo nuevo. Todos los datos
son internamente almacenados en el modelo en estas unidades. Las unidades son
uno de los siguientes artículos en la enumeración de eUnits:

lb_in_F = 1
lb_ft_F = 2
kip_in_F = 3
kip_ft_F = 4
kN_mm_C = 5
kN_m_C = 6
kgf_mm_C = 7
kgf_m_C = 8
N_mm_C = 9
N_m_C = 10
Ton_mm_C = 11
Ton_m_C = 12
kN_cm_C = 13

21
kgf_cm_C = 14
N_cm_C = 15
Ton_cm_C = 16

Los comentarios

Esta función aclara el modelo previo e inicializa el programa para un modelo


nuevo. Si está más tarde necesitado, usted debería ahorrar su modelo previo
antes de llamar esta función.
Después de llamar la función InitializeNewModel, no hay que también llamar al
ApplicationStart funcione porque la funcionabilidad de la función
ApplicationStart es incluida en el InitializeNewModel función.
La función devuelve cero si un modelo nuevo es exitosamente inicializado,
diferente que devuelve un valor de poco cero.

VBA Example

Sub InitializeNewModel()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as Long

   '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(kip_ft_F)

   'create model from template


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 12, 3, 30)

   'save model
      ret = SapModel.File.Save("C:\SapAPI\MyFirstSapModel.sdb")

   'initialize new model


      SapModel.InitializeNewModel(kN_m_C)

   'create model from template


      ret = SapModel.File.New3DFrame(FlatPlate, 2, 4, 2, 10, 4, 10, False, , , ,
2, 2)

   'save model

22
      ret = SapModel.File.Save("C:\SapAPI\MySecondSapModel.sdb")

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

12. SetMergeTol

La sintaxis

SapObject.SapModel.SetMergeTol

Procedimiento VB6

La función SetMergeTol (ByVal MergeTol de Tan Al doble) Tan Largo

Los parámetros

MergeTol
El automóvil de programa mancomuna tolerancia. L

Los comentarios

Esta función coloca el automóvil de programa mancomuna tolerancia.


La función devuelve cero si la tolerancia es exitosamente determinada; De otra
manera devuelve un valor de poco cero.

VBA Example

Sub SetAutoMergeTolerance()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long

   '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

23
   'tolerancia determinada

      ret = SapModel.SetMergeTol(0.05)

   'create model from template


      ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

13. SetModelIsLocked

La sintaxis

SapObject.SapModel.SetModelIsLocked

Procedimiento VB6

La función SetModelIsLocked (LockIt como Boolean) Como Long

Los parámetros

LockIt
El detalle es cierto si el modelo es estar agarrotado y Falso si debe ser desatado.

Los comentarios

La función devuelve cero si el estado cerrado del modelo es exitosamente


determinado. De otra manera devuelve un valor de poco cero.
Con algunas excepciones, las definiciones y las asignaciones pueden no estar
cambiadas en un modelo mientras el modelo está cerrado. Si un intento es hecho
a altérese, entonces una definición o una asignación mientras el modelo está
cerrado y que ese cambio no es dejado entrar en un modelo cerrado, un error
será devuelto.

24
VBA Example

Sub SetModelLocked()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as Long

   '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

   'create model from template


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   'Lock model
      ret = SapModel.SetModelIsLocked(True)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

14. SetPresentCoordSystem

La sintaxis

SapObject.SapModel.SetPresentCoordSystem

Procedimiento VB6

La función SetPresentCoordSystem (ByVal CSys As String) Como Long

Los parámetros

Los CSys
El nombre de un sistema de coordenadas definido.

25
Los comentarios

Esta función coloca el sistema de coordenadas presente.


La función devuelve cero si el sistema de coordenadas presente está
exitosamente colocado. De otra manera devuelve un valor de poco cero.

VBA Example

Sub SetPresentCSys()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as long
      Dim PresentCSys 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

   'create model from template


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   'define new coordinate system


      ret = SapModel.CoordSys.SetCoordSys("CSys1", 1000, 1000, 0, 0, 0, 0)

   'set present coordinate system


      ret = SapModel.SetPresentCoordSystem("CSys1")

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

26
15. SetPresentUnits

La sintaxis

SapObject.SapModel.SetPresentUnits

Procedimiento VB6

La función SetPresentUnits (ByVal Units As eUnits) Como Long

Los parámetros

Las unidades

Uno de los siguientes artículos en la enumeración de eUnits:

lb_in_F = 1
lb_ft_F = 2
kip_in_F = 3
kip_ft_F = 4
kN_mm_C = 5
kN_m_C = 6
kgf_mm_C = 7
kgf_m_C = 8
N_mm_C = 9
N_m_C = 10
Ton_mm_C = 11
Ton_m_C = 12
kN_cm_C = 13
kgf_cm_C = 14
N_cm_C = 15
Ton_cm_C = 16

Los comentarios

Esta función devuelve cero si las unidades están exitosamente colocadas y poco cero
si no están listas

VBA Example

Sub SetUnitsPresent()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim FileName As String
      Dim ret As Long

   'create Sap2000 object


      Set SapObject = New SAP2000.SapObject

27
   'start Sap2000 application
      SapObject.ApplicationStart

   'create SapModel object


      Set SapModel = SapObject.SapModel

   'initialize model
      ret = SapModel.InitializeNewModel

   'start a new template model


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

' Las unidades presentes determinadas para KN-M


      ret = SapModel.SetPresentUnits(KN_m_C)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

16. SetProjectInfo

La sintaxis

SapObject.SapModel.SetProjectInfo

Procedimiento VB6

La función SetProjectInfo (el Artículo ByVal Como Cuerda, los Datos ByVal Como
Cuerda) Tan Largo

Los parámetros

El artículo
El nombre del artículo de información de proyecto a ser determinado.
Los datos
Los datos para el artículo especificado de información de proyecto.

Los comentarios

Esta función incrusta los datos para un artículo en la información de proyecto.


La función devuelve cero si los datos son exitosamente determinados; De otra
manera devuelve un valor de poco cero

28
VBA Example

Sub SetProjectInfoData()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long

   '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

   'create model from template


      ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

   ' Los datos determinados de información de proyecto


      ret = SapModel.SetProjectInfo("Company Name", "Computers and
Structures, Inc.")
      ret = SapModel.SetProjectInfo("Project Name", "API Testing")
      ret = SapModel.SetProjectInfo("My Item", "My Data")

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

17. SetUserComment

La sintaxis

SapObject.SapModel.SetUserComment

Procedimiento VB6

La función SetUserComment (ByVal Comente Como Cuerda, ByVal NumLines


Optativo Tan Largo = 1, ByVal Optativo Reemplaza Como Boolean = Falso) Tan
Largo.

29
Los parámetros

El comentario

Los datos a estar añadidos para los comentarios del usuario y el leño.

NumLines

El número de retorno de carro y línea se alimenta para ser incluido antes del
comentario especificado. Este artículo está ignorado si Replace = True. Está también
ignorado si no hay existiendo comentarios.

Reemplace

Si así de ítem es cierto, todos los comentarios existentes son reemplazados con el
comentario especificado

Los comentarios

Esta función coloca los datos del usuario de comentarios y del leño.

La función devuelve cero si los datos son exitosamente determinados; De otra


manera devuelve un valor de poco cero.

VBA Example

Sub AddCommentToLog()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long

   '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

   'create model from template


      ret = SapModel.File.New2DFrame(PortalFrame, 2, 144, 2, 288)

   'add comments
      ret = SapModel.SetUserComment("Testing the Sap2000 API.")
      ret = SapModel.SetUserComment("Adding a second comment.")
      ret = SapModel.SetUserComment("Adding a third comment.", 3)

30
   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

18. Unhide

La sintaxis

SapObject.Unhide

Procedimiento VB6

La función Ponga a la vista () Como Bastante

Los parámetros

ninguno

Los comentarios

La función devuelve cero si los datos son exitosamente determinados; Esta función
pone a la vista la aplicación Sap2000, eso es, lo hace visible. Cuando la aplicación
está escondida, no es visible en la pantalla o en la barra de tarea Windows.

La función devuelve cero si la aplicación Sap2000 está exitosamente no escondida


(el set visible) y poco cero si la función falla. Si la aplicación es ya visible (no
escondido) llamando, entonces esta función devuelve un error.

VBA Example

Sub UnhideSap()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as long

   'create Sap2000 object


      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart

   'create SapModel object


      Set SapModel = SapObject.SapModel

31
   'create model from template
      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   'oculte la aplicacion
      ret = SapObject.Hide

' Ponga a la vista aplicación


     ret = SapObject.Unhide

    'close Sap2000
      SapObject.ApplicationExit False
       Set SapModel = Nothing
       Set SapObject = Nothing
End Sub

19. Visible

La sintaxis

SapObject.Visible

Procedimiento VB6

La función Visible () Como Boolean

Los parámetros

ninguno

Los comentarios

La función devuelve a True si la aplicación Sap2000 es visible en la pantalla, de


otra manera devuelve a False

VBA Example

Sub IsVisible()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret as long
      Dim Visible as Boolean

   'create Sap2000 object


      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart
32
   'create SapModel object
      Set SapModel = SapObject.SapModel

   'create model from template


      ret = SapModel.File.New2DFrame(ConcentricBraced, 3, 124, 3, 200)

   'get application visibility


      Visible = SapObject.Visible

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

ANALISIS DEL MODELO


33
ELEMENTOS AREA

1. Count

La sintaxis

Sap2000.AreaElm.Count

Procedimiento VB6

La cuenta de función () Tan Largo

Los parámetros

ninguno

Los comentarios

Esta función devuelve el número total de elementos de área en el modelo de análisis

VBA Example

Sub CountAreaElements()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim Count As Long

   '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

   'create model from template


      ret = SapModel.File.NewWall(2, 48, 2, 48)

   ' Asigne opciones de la malla del automóvil


      ret = SapModel.AreaObj.SetAutoMesh("ALL", 1, 3, 3, , , , , , , , , , , , , , ,
Group)

   ' Cree modelo de análisis


      ret = SapModel.Analyze.CreateAnalysisModel

34
   ‘Es número de vuelta de elementos de área
      Count = SapModel.AreaElm.Count

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

2. GetLoadGravity

La sintaxis

SapObject.SapModel.AreaElm.GetLoadGravity

Procedimiento VB6

La función GetLoadGravity (ByVal Name As String, ByRef NumberItems As Long,


ByRef AreaName () Como String, ByRef LoadPat () Como String, ByRef CSys ()
Como String, ByRef x () Como Double, ByRef y () Como Double, ByRef z () Como
ByVal Doble, Optativo ItemTypeElm Como eItemTypeElm = Element) As Desee

Los parámetros

El nombre

El nombre de un elemento existente de área o el grupo, a merced del valor del artículo
ItemType.

NumberItems

El número total de cargas gravitacionales recuperadas para los elementos especificados de


área.

AreaName

Éste es un conjunto imponente que incluye el nombre del área el elemento se asoció con
cada carga gravitacional.

LoadPat

Éste es un conjunto imponente que incluye el nombre del sistema de coordenadas en el


cual los multiplicadores gravitacionales de carga están especificados.

Los CSys

Éste es un conjunto imponente que incluye el nombre del sistema de coordenadas se


asoció con cada carga gravitacional.

X, y, z

35
Éstos son conjuntos imponentes de multiplicadores gravitacionales de carga en la x, y e
instrucciones z del sistema de coordenadas especificado.

ItemTypeElm

Éste es uno de los siguientes artículos en la enumeración del eItemTypeElm:

ObjectElm = 0

El elemento = 1

GroupElm = 2

SelectionElm = 3

Si así de ítem es ObjectElm, las asignaciones de carga son recuperadas para los elementos
de área siendo propias del objeto de área especificados por el Name ítem.

Si así de ítem es Element, las asignaciones de carga son recuperadas para el área elemento
especificado por el Name ítem.

Si así de ítem es GroupElm, las asignaciones de carga son recuperadas para los elementos
de área siendo propias de todo área los objetos incluidos en el grupo especificado por el
Name ítem.

Si así de ítem es SelectionElm, las asignaciones de carga son recuperadas para elementos
de área siendo propias de todo el área seleccionado objeta, y el Name ítem está ignorado.

Los comentarios

Esta función recupera las asignaciones gravitacionales de carga para elementos de área.

La función devuelve cero si las asignaciones de carga son exitosamente recuperadas; De


otra manera devuelve un valor de poco cero.

VBA Example

Sub GetAreaElementGravityLoad()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim NumberItems As Long
      Dim AreaName() As String
      Dim LoadPat() As String
      Dim CSys() As String
      Dim x() As Double
      Dim y() As Double
      Dim z() As Double

36
   '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

   'create model from template


      ret = SapModel.File.NewWall(2, 48, 2, 48)

   'Asignar opciones de malla de auto


      ret = SapModel.AreaObj.SetAutoMesh("ALL", 1, 3, 3, , , , , , , , , , , , , , ,
Group)

   'Asignar cargas área objeto de gravedad


      ret = SapModel.AreaObj.SetLoadGravity("ALL", "DEAD", 0, 0, -1, , ,
Group)

   ‘Análisis crear modelo


      ret = SapModel.Analyze.CreateAnalysisModel

   ' Obtenga carga de gravedad del elemento de área


      ret = SapModel.AreaElm.GetLoadGravity("3-1", NumberItems,
AreaName, LoadPat, CSys, x, y, z)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

3. GetLoadPorePressure

La sintaxis

SapObject.SapModel.AreaElm.GetLoadPorePressure

Procedimiento VB6

La función GetLoadPorePressure (ByVal Name As String, ByRef NumberItems As


Long, ByRef AreaName () Como String, ByRef LoadPat () Como String, ByRef

37
Value () Como Double, ByRef PatternName () Como String, ByVal Optativo
ItemTypeElm Como eItemTypeElm = Element) As Desee

Los parámetros

El nombre

El nombre de un elemento existente de área o el grupo a merced del valor del


artículo ItemType.

NumberItems

El número total de cargas de presión del poro recuperadas para los elementos
especificados de área.

AreaName

Éste es un conjunto imponente que incluye el nombre del área el elemento se asoció
con cada carga de presión del poro.

LoadPat

Éste es un conjunto imponente que incluye el nombre de la carga el patrón se asoció


con cada carga de presión del poro.

El valor

Éste es un conjunto imponente que incluye el valor de carga de presión del poro.
F/L2

PatternName

Éste es un conjunto imponente que incluye el nombre unido del patrón, si cualquier,
solió especificar la carga de presión del poro.

ItemTypeElm

Éste es uno de los siguientes artículos en la enumeración del eItemTypeElm:

ObjectElm = 0

El elemento = 1

GroupElm = 2

SelectionElm = 3

Si así de ítem es ObjectElm, las asignaciones de carga son recuperadas para los
elementos de área siendo propias del objeto de área especificados por el Name ítem.

Si así de ítem es Element, las asignaciones de carga son recuperadas para el área
elemento especificado por el Name ítem.
38
Si así de ítem es GroupElm, las asignaciones de carga son recuperadas para los
elementos de área siendo propias de todo área los objetos incluidos en el grupo
especificado por el Name ítem.

Si así de ítem es SelectionElm, las asignaciones de carga son recuperadas para


elementos de área siendo propias de todo el área seleccionado objeta, y el Name
ítem está ignorado.

Los comentarios

Esta función recupera las asignaciones de carga de presión del poro para elementos
de área.
La función devuelve cero si las asignaciones de carga son exitosamente recuperadas;
De otra manera devuelve un valor de poco ceroEl número total de cargas de presión
del poro recuperadas para los elementos especificados de área

VBA Example

Sub GetAreaElementPorePressureLoad()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim NumberItems As Long
      Dim AreaName() As String
      Dim LoadPat() As String
      Dim Value() As Double
      Dim PatternName() 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

   'create model from template


      ret = SapModel.File.NewWall(2, 48, 2, 48)

‘Asigne carga de presión del poro del objeto de área


ret = SapModel.AreaObj.SetLoadPorePressure("ALL", "DEAD", .1, , , Group)

39
  'create analysis model
       ret = SapModel.Analyze.CreateAnalysisModel

   '' Obtenga carga de presión del poro del elemento de área


      ret = SapModel.AreaElm.GetLoadPorePressure("ALL", NumberItems, AreaName,
LoadPat, Value, PatternName, GroupElm)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

4. GetLoadStrain

La sintaxis

SapObject.SapModel.AreaElm.GetLoadStrain

Procedimiento VB6

La función GetLoadStrain (ByVal Name As String, ByRef NumberItems As Long,


ByRef AreaName () Como String, ByRef LoadPat () Como String, ByRef
Component () Como Bastante, ByRef Value () Como Double, ByRef PatternName ()
Como String, ByVal Optativo ItemTypeElm Como eItemTypeElm = Element) As
Desee

Los parámetros

El nombre
El nombre de un elemento existente de área o el grupo, a merced del valor del
artículo ItemType.
NumberItems
El número total de cargas de tensión recuperadas para los elementos especificados de
área.
AreaName
Éste es un conjunto imponente que incluye el nombre del área el elemento se asoció
con cada carga de tensión.
LoadPat
Éste es un conjunto imponente que incluye el nombre de la carga el patrón se asoció
con cada carga de tensión.
El componente
Éste es un conjunto imponente que incluye 1, 2, 3, 4, 5, 6, 7 o 8, indicando el
componente asociado con cada carga de tensión.
1 = Strain11 2 = Strain22 3 = Strain12 4 = Curvature11 5 = Curvature22 6 =
Curvature12 7 = Strain13 8 = Strain23
El valor
Éste es un conjunto imponente que incluye el valor de tensión. L/L para Component
= 1, 2, 3, 7 y 8, y 1/L para Component = 4, 5 y 6

40
PatternName
Éste es un conjunto imponente que incluye el nombre unido del patrón, si cualquier,
solió especificar la carga de tensión.

ItemTypeElm
Éste es uno de los siguientes artículos en la enumeración del eItemTypeElm:
ObjectElm = 0
El elemento = 1
GroupElm = 2
SelectionElm = 3
Si así de ítem es ObjectElm, las asignaciones de carga son recuperadas para los
elementos de área siendo propias del objeto de área especificados por el Name ítem.
Si así de ítem es Element, las asignaciones de carga son recuperadas para el área
elemento especificado por el Name ítem.
Si así de ítem es GroupElm, las asignaciones de carga son recuperadas para los
elementos de área siendo propias de todo área los objetos incluidos en el grupo
especificado por el Name ítem.
Si así de ítem es SelectionElm, las asignaciones de carga son recuperadas para
elementos de área siendo propias de todo el área seleccionado objeta, y el Name ítem
está ignorado.

Los comentarios

Esta función recupera las asignaciones de carga de tensión para elementos de área.
La función devuelve cero si las asignaciones de carga de tensión son exitosamente
recuperadas; De otra manera devuelve un valor de poco cero.

VBA Example

Sub GetAreaElementStrainLoad()
   'dimension variables
      Dim SapObject As Sap2000.SapObject
      Dim SapModel As cSapModel
      Dim ret As Long
      Dim NumberItems As Long
      Dim AreaName() As String
      Dim LoadPat() As String
      Dim Component() As Long
      Dim Value() As Double
      Dim PatternName() As String

   'create Sap2000 object


      Set SapObject = New SAP2000.SapObject

   'start Sap2000 application


      SapObject.ApplicationStart

   'create SapModel object


      Set SapModel = SapObject.SapModel

41
   'initialize model
      ret = SapModel.InitializeNewModel

   'create model from template


      ret = SapModel.File.NewWall(2, 48, 2, 48)

   ' Asigne carga de tensión del objeto de área


      ret = SapModel.AreaObj.SetLoadStrain("ALL", "DEAD", 1, 0.001, , , Group)

   'create analysis model


      ret = SapModel.Analyze.CreateAnalysisModel

' Obtenga carga de tensión del elemento de área

      ret = SapModel.AreaElm.GetLoadStrain("3", NumberItems, AreaName,


LoadPat, Component, Value, PatternName)

   'close Sap2000
      SapObject.ApplicationExit False
      Set SapModel = Nothing
      Set SapObject = Nothing
End Sub

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

42
La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

43
VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

44
Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

45
Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

Los parámetros

Los comentarios

VBA Example

La sintaxis

Procedimiento VB6

46
Los parámetros

Los comentarios

VBA Example

47

You might also like