405x
004691
01.09.2020

Question

Comment créer des visibilités via l'interface COM ?


Réponse:

Les visibilités peuvent être créées à l'aide des interfaces RF-COM 3/RS-COM 6, en utilisant l'interface IrfView. Les éléments qui doivent appartenir à la visibilité peuvent être sélectionnés avec la fonction rfSelectObjects :

Sub set_visibility()
'   get interface from the opened model and lock the licence/program
Dim iModel As RFEM3.IrfStructure3
Set iModel = GetObject(, "RFEM3.Structure")
iModel.rfGetApplication.rfLockLicence

On Error GoTo e

'   get interface for modeldata
Dim iModdata As RFEM3.IrfStructuralData4
Set iModdata = iModel.rfGetStructuralData

iModdata.rfSelectObjects STR_MEMBER, "1-2"
iModdata.rfSelectObjects STR_SURFACE, "6,14,17"

'   get interface for view
Dim iView As RFEM3.IrfView2
Set iView = iModel.rfGetActiveView
   
iView.rfSetPartialView "test|view"

'   select partial view
iView.rfSelectPartialView "test|view", PVM_SHOW, True, True


e:  If Err.Number <> 0 Then MsgBox Err.description, , Err.Source

iModel.rfGetApplication.rfUnlockLicence
Set iModel = Nothing

End Sub

Dans cet exemple, la surface 6, la surface 14 et la surface 17 sont sélectionnées avec la barre 1 et la barre 2. La visibilité de ces éléments est ensuite créée et nommée « Vue ». La visibilité « vue » se trouve dans le groupe « Test ». Il est créé avec le délimiteur « | ». Une fois la visibilité créée, elle est toujours sélectionnée ou affichée ; dans ce cas, PVM_SHOW est de type « RF_PARTIAL_VIEW_MODE », ce qui permet également de supprimer la visibilité. La fonction peut également préciser si les éléments sont affichés en arrière-plan.