Viditelnosti je možné vytvořit pomocí rozhraní COM (RF‑COM3/RS‑COM6). V následujícím kódu se nejdříve pro viditelnost vyberou prvky. To se provádí pomocí Selections. Nejdříve se aktivují pomocí "rfEnableSelections", poté je možné pomocí "rfSelectObjects" vybrat objekty:
Sub set_visibility() ' get interface from the opened model and lock the licence/programDim iModel As RFEM3.IrfStructure3Set iModel = GetObject(, "RFEM3.Structure")iModel.rfGetApplication.rfLockLicence On Error GoTo e ' get interface for modeldataDim iModData As RFEM3.IrfStructuralData4Set iModData = iModel.rfGetStructuralData
' get interface for viewDim iView As RFEM3.IrfView2Set iView = iModel.rfGetActiveView' remove old viewsiView.rfDeletePartialView "test|view"iView.rfDeletePartialView "test|view2"iView.rfDeletePartialView "test|view_add"iView.rfDeletePartialView "test|view_rev"iView.rfDeletePartialView "test|view_diff"
' create first viewiModData.rfSelectObjects STR_MEMBER, "3-4"iView.rfSetPartialView "test|view"' iView.rfSelectPartialView "test|view", PVM_SHOW, True, True
' create second viewiModData.rfSelectObjects STR_SURFACE, "1"iModData.rfSelectObjects STR_MEMBER, "3"iView.rfSetPartialView "test|view2"' iView.rfSelectPartialView "test|view2", PVM_SHOW, True, True
' create sum from view from 1 and 2iView.rfSelectPartialView "test|view", PVM_SELECT, True, TrueiView.rfSelectPartialView "test|view2", PVM_SELECT, False, TrueiView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, True, TrueiView.rfSetPartialView "test|view_add"
' create differential view 2 minus 1' first created reversed viewiView.rfSelectPartialView "test|view", PVM_SHOW, True, TrueiView.rfSelectPartialView "test|view2", PVM_SHOW, False, TrueiView.rfSelectPartialView "", PVM_SHOW_REVERSE, True, TrueiView.rfSelectPartialView "", PVM_SELECT, True, TrueiView.rfSetPartialView "test|view_rev"iView.rfSelectPartialView "", PVM_SHOW_REVERSE, True, True
' select view to substract and reverse viewiView.rfSelectPartialView "test|view_rev", PVM_SELECT, True, TrueiView.rfSelectPartialView "test|view", PVM_SELECT, False, TrueiView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, True, TrueiView.rfSelectPartialView "", PVM_SHOW_REVERSE, True, TrueiView.rfSelectPartialView "", PVM_SELECT, True, TrueiView.rfSetPartialView "test|view_diff"iView.rfSelectPartialView "", PVM_SHOW_SELECTION_ONLY, True, True
iView.rfSelectPartialView "", PVM_SHOW_REVERSE, True, TrueiView.rfCancelPartialView
e: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source iModel.rfGetApplication.rfUnlockLicenceSet iModel = Nothing
End Sub
Pomocí rozhraní "iView" a pomocí příkazu "rfSetPartialView" je možné vytvořit viditelnost. Zde je zvláště důležitý popis. Oddělovač "|" zajistí, aby viditelnost s názvem "view" byla vytvořena ve skupině "test".
Příkaz rfSelectPartialView slouží k zobrazení viditelnosti. Prvním argumentem je název viditelnosti. Pro druhý argument lze vybrat různé příkazy. V závislosti na příkazu je název viditelnosti vyžadován či nikoliv.
Třetí argument se ptá, zda se má vše, co bylo dosud zobrazeno, deaktivovat, nebo ne. Pokud je tedy vyžadováno přídavné zobrazení dvou viditelností, je třeba minimálně při výběru druhé viditelnosti potvrdit "False".
Čtvrtý argument určuje, zda se vše skryté má zobrazit ještě v pozadí, či nikoliv.
Zde je seznam důležitých příkazů druhého argumentu:
PVM_SELECT - vybere prvky v zadané viditelnosti
PVM_SHOW - zobrazí zadanou viditelnost
PVM_SHOW_SELECTION_ONLY - po výběru prvků z viditelností je nyní můžete zobrazit samostatně
PVM_SHOW_REVERSE - všechny dosud zobrazené prvky jdou do pozadí a všechny prvky z pozadí se zobrazí (zobrazení je obrácené).