1081x
004715
10.9.2020

Výběr objektů pomocí rozhraní COM

Jak mohu vybrat objekty pomocí rozhraní COM?


Odpověď:

Pro výběr objektů je k dispozici v rozhraní IModelData (resp. také v IModeldata2 apod.) funkce "SelectObjects". Funkce očekává typ objektu a čísla objektů jako řetězec. Zde je krátký příklad:

Sub select_objects()

Dim model As RFEM5.model
Set model = GetObject(, "RFEM5.Model")
model.GetApplication.LockLicense

On Error GoTo e
    
    Dim iModdata As IModelData2
    Set iModdata = model.GetModelData
    
    '   enable Selections
    iModdata.EnableSelections True
    
    '   select nodes 2-3 and lines 1 and 3
    iModdata.SelectObjects ModelObjectType.NodeObject, "2-3"
    iModdata.SelectObjects ModelObjectType.LineObject, "1,3"
    
    '   deselect nodes and lines
    iModdata.SelectObjects ModelObjectType.NodeObject, ""
    iModdata.SelectObjects ModelObjectType.LineObject, ""
    
    
e:  If Err.Number <> 0 Then MsgBox Err.Description, , Err.Source

model.GetApplication.UnlockLicense
Set iModdata = Nothing
Set model = Nothing

End Sub

V horní části se aktivují výběry a poté se vyberou uzly 2 až 3 a linie 1 a 3. Poté se linie a uzly odznačí pomocí prázdného řetězce.

Pokud chcete číst nebo upravovat vybrané objekty, potřebujete funkci "IModelData.EnableSelections" (nachází se také v kódu výše). Pokud je funkce označena jako "True", načtou se pouze vybrané uzly například pomocí funkce "IModelData.GetNodes()".


Autor

Ing. Günthel zajišťuje technickou podporu zákazníkům.

Stahování


;