Für das Selektieren von Objekten gibt es im Interface IModelData (bzw. auch IModeldata2 u. ä.) die Funktion "SelectObjects". Die Funktion erwartet den Objekttyp und die Objektnummer(n) als Zeichenkette. Hier ein kurzes Beispiel:
Sub select_objects()
Dim model As RFEM5.modelSet 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.UnlockLicenseSet iModdata = NothingSet model = Nothing
End Sub
Im oberen Teil werden die Selektionen aktiviert und dann die Knoten 2 bis 3 sowie die Linien 1 und 3 selektiert. Danach werden die Linien und Knoten durch eine leere Zeichenkette wieder deselektiert.
Wenn Sie selektierte Objekte auslesen oder modifizieren wollen, benötigen Sie die Funktion "IModelData.EnableSelections" (oben ebenfalls im Code zu finden). Wenn die Funktion mit "True" aufgerufen wird, werden danach beispielsweise mit der Funktion "IModelData.GetNodes()" nur die selektierten Knoten ausgelesen.