Для выбора объектов имеется в интерфейсе IModelData (или IModeldata2 и т.п.) функция «SelectObjects». Функция ожидает, что тип и номер объекта будет задан в качестве строки. Ниже представляем краткий пример:
Sub select_objects()
Dim model As RFEM5.modelSet model = GetObject(, "RFEM5.Model")model.GetApplication.LockLicense
On Error GoTo e Dim iModdata As IModelData2Set iModdata = model.GetModelData ' enable SelectionsiModdata.EnableSelections True ' select nodes 2-3 and lines 1 and 3iModdata.SelectObjects ModelObjectType.NodeObject, "2-3"iModdata.SelectObjects ModelObjectType.LineObject, "1,3" ' deselect nodes and linesiModdata.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
В верхней части активируются элементы для выбора, а затем выберутся узлы 2–3 и линии 1 и 3. Затем, с помощью пустой строки отменяется выбор узлов и линий.
Если вам нужно прочитать или изменить выбранные объекты, тогда требуется применение функции «IModelData.EnableSelections» (она тоже находится в вышеприведенном коде). Если функция обозначена как «True», тогда будут при использовании функции «IModelData.GetNodes ()» загружены, например, только выбранные узлы.