manual de api
TRANSCRIPT
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 NamesLos cLoadCases se convirtieron en cLoadPatternsLos cAnalysisCases se convirtieron en cLoadCases
El objeto VariablesLoadCases se convirtió en LoadPatternsAnalysisCases se convirtió en LoadCases
La enumeración NamesEl eLoadCaseType se convirtió en eLoadPatternType eAnalysisCaseType cambiado para eLoadCaseType
1
Los artículos de enumeración en la enumeración del eCtypeEl ACase se convirtió en LoadCaseEl RCombo se convirtió en LoadCombo
Los nombres Variables localesLoadCase se convirtió en LoadPatEl 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 sintaxisEste capítulo provee la sintaxis de la orden como usted la llamaría de un uso externo sin incluir cualquier parámetro.
El VB6 ProcedureEl 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ámetrosLos 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 comentariosLos 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 ExampleEl ejemplo VBA usa la función considerada. Los ejemplos están escritos para el uso en Microsoft Excel VBA.
La liberación NotesLa información de liberación específica para la función considerada es provista.
Vea TambiénFunciona eso está relacionado a la función considerada, si cualquier, está listado en este área.
LOS VALORES DE REGRESO DE FUNCIÓNCasi 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 ABREVIADASEn 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 BaseBasic 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ámicoLos 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 dynamicUn 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 datosMyFixedArray(1) = El segundo artículo de datosMyFixedArray(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íaLa 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 OPTATIVOSAlgunas 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 NOTESLa 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
FileSaveSi 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 NOTESLa 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ámetrosNinguno
Los ComentariosEsta 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 = 1lb_ft_F = 2kip_in_F = 3kip_ft_F = 4kN_mm_C = 5kN_m_C = 6kgf_mm_C = 7kgf_m_C = 8N_mm_C = 9N_m_C = 10Ton_mm_C = 11Ton_m_C = 12kN_cm_C = 13kgf_cm_C = 14N_cm_C = 15Ton_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 = NothingEnd Sub
La Liberación NotesLa 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ámetrosMergeTolEl automóvil de programa mancomuna tolerancia. L
Los comentariosEsta 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 = NothingEnd 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 = NothingEnd 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 = 1lb_ft_F = 2kip_in_F = 3kip_ft_F = 4kN_mm_C = 5kN_m_C = 6kgf_mm_C = 7kgf_m_C = 8N_mm_C = 9N_m_C = 10Ton_mm_C = 11Ton_m_C = 12kN_cm_C = 13kgf_cm_C = 14N_cm_C = 15Ton_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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = 1lb_ft_F = 2kip_in_F = 3kip_ft_F = 4kN_mm_C = 5kN_m_C = 6kgf_mm_C = 7kgf_m_C = 8N_mm_C = 9N_m_C = 10Ton_mm_C = 11Ton_m_C = 12kN_cm_C = 13
21
kgf_cm_C = 14N_cm_C = 15Ton_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 = NothingEnd 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
MergeTolEl 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 = NothingEnd Sub
13. SetModelIsLocked
La sintaxis
SapObject.SapModel.SetModelIsLocked
Procedimiento VB6
La función SetModelIsLocked (LockIt como Boolean) Como Long
Los parámetros
LockItEl 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 = NothingEnd Sub
14. SetPresentCoordSystem
La sintaxis
SapObject.SapModel.SetPresentCoordSystem
Procedimiento VB6
La función SetPresentCoordSystem (ByVal CSys As String) Como Long
Los parámetros
Los CSysEl 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 = NothingEnd 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 = 1lb_ft_F = 2kip_in_F = 3kip_ft_F = 4kN_mm_C = 5kN_m_C = 6kgf_mm_C = 7kgf_m_C = 8N_mm_C = 9N_m_C = 10Ton_mm_C = 11Ton_m_C = 12kN_cm_C = 13kgf_cm_C = 14N_cm_C = 15Ton_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 = NothingEnd 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ículoEl nombre del artículo de información de proyecto a ser determinado.Los datosLos 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 = NothingEnd 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 árearet = 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 = NothingEnd 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 nombreEl nombre de un elemento existente de área o el grupo, a merced del valor del artículo ItemType.NumberItemsEl 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 = Strain23El 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 = 0El elemento = 1GroupElm = 2SelectionElm = 3Si 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 = NothingEnd 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