Sí, es posible crear visibilidades a través de la interfaz COM (RF-COM3/RS-COM6). En el siguiente código, primero se seleccionan los elementos para una visibilidad. Esto se hace a través de las selecciones. Primero, actívelos con "rfEnableSelections", luego puede usar "rfSelectObjects" para seleccionar los objetos:
Subconjunto_visibilidad () ' get interface from the opened model and lock the licence/programAtenuar iModel como RFEM3.IrfStructure3Establecer iModel = GetObject (, "RFEM3.Structure")iModel.rfGetApplication.rfLockLicence On Error GoTo e ' obtener interfaz para modeldataDim iModData como RFEM3.IrfStructuralData4Establecer iModData = iModel.rfGetStructuralData
' obtener interfaz para verAtenuar iView como RFEM3.IrfView2Establecer iView = iModel.rfGetActiveView' quitar vistas antiguasiView.rfDeletePartialView "prueba | ver"iView.rfDeletePartialView "prueba | view2"iView.rfDeletePartialView "prueba | view_add"iView.rfDeletePartialView "prueba | view_rev"iView.rfDeletePartialView "prueba | view_diff"
' crear primera vistaiModData.rfSelectObjects STR_MEMBER, "3-4"iView.rfSetPartialView "prueba | ver"' iView.rfSelectPartialView "test | view", PVM_SHOW, True, True
' crear segunda vistaiModData.rfSelectObjects STR_SURFACE, "1"iModData.rfSelectObjects STR_MEMBER, "3"iView.rfSetPartialView "prueba | view2"' iView.rfSelectPartialView "test | view2", PVM_SHOW, True, True
' crear suma desde la vista 1 y 2iView.rfSelectPartialView "test | view", PVM_SELECT, True, TrueiView.rfSelectPartialView "test | view2", PVM_SELECT, False, TrueiView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, Verdadero, VerdaderoiView.rfSetPartialView "prueba | view_add"
' crear vista diferencial 2 menos 1' primera vista invertida creadaiView.rfSelectPartialView "test | view", PVM_SHOW, True, TrueiView.rfSelectPartialView "test | view2", PVM_SHOW, False, TrueiView.rfSelectPartialView "", PVM_SHOW_REVERSE, Verdadero, VerdaderoiView.rfSelectPartialView "", PVM_SELECT, Verdadero, VerdaderoiView.rfSetPartialView "prueba | view_rev"iView.rfSelectPartialView "", PVM_SHOW_REVERSE, Verdadero, Verdadero
' seleccione la vista para restar y revertir la vistaiView.rfSelectPartialView "test | view_rev", PVM_SELECT, True, TrueiView.rfSelectPartialView "test | view", PVM_SELECT, False, TrueiView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, Verdadero, VerdaderoiView.rfSelectPartialView "", PVM_SHOW_REVERSE, Verdadero, VerdaderoiView.rfSelectPartialView "", PVM_SELECT, Verdadero, VerdaderoiView.rfSetPartialView "prueba | view_diff"iView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, Verdadero, Verdadero
iView.rfSelectPartialView "", PVM_SHOW_REVERSE, Verdadero, VerdaderoiView.rfCancelPartialView
e: If Err.Number <> 0 Then MsgBox Err.description`` Err.Source iModel.rfGetApplication.rfUnlockLicenceEstablecer iModel = Nada
End Sub
Puede usar la interfaz "iView" y el comando "rfSetPartialView" para crear una visibilidad. La descripción es especialmente importante aquí. El separador "|" asegura que la visibilidad con el nombre de la "vista" se cree en el grupo de "prueba".
El comando rfSelectPartialView se usa para mostrar una visibilidad. El primer argumento es el nombre de la visibilidad. Para el segundo argumento, puede seleccionar varios comandos. Dependiendo del comando, se requiere o no un nombre de la visibilidad.
El tercer argumento pregunta si todo lo mostrado hasta ahora debería desactivarse o no. Entonces, si también desea mostrar dos visibilidades, debe confirmar "Falso" al menos al seleccionar la segunda visibilidad.
El cuarto argumento controla si todo lo que está oculto se debe mostrar en segundo plano o no.
Aquí hay una lista de comandos importantes del segundo argumento:
PVM_SELECT - selecciona los elementos en la visibilidad especificada
PVM_SHOW - muestra la visibilidad especificada
PVM_SHOW_SELECTION_ONLY - Después de seleccionar elementos de las visibilidades, ahora se pueden mostrar solos.
PVM_SHOW_REVERSE - Todos los elementos mostrados hasta ahora van al fondo y se muestran todos los elementos del fondo (la visualización está invertida).