841x
004326
2020-01-31

Вопрос

Как создать с помощью интерфейса COM комментарий?


Ответ:
В интерфейсе COM (RF-COM или RS-COM) можно создать комментарий с помощью интерфейса для вспомогательных объектов IGuideObjects. Ниже приведен пример программы, которая создает комментарий:

Sub test_comment()

' get interface from the opened model and lock the licence/program
Dim iModel As RFEM5.IModel3
Set iModel = GetObject(, "RFEM5.Model")
iModel.GetApplication.LockLicense

On Error GoTo e
    
Dim iModelData As RFEM5.IModelData2
Set iModelData = iModel.GetModelData
    
Dim iGuiObj As RFEM5.IGuideObjects
Set iGuiObj = iModel.GetGuideObjects
    
Dim comm As RFEM5.Comment
    
' set frame type
comm.Frame = CircularFrameType
    
' set reference object type
comm.ObjectType = GeneralObjectType
comm.ObjectNo = 1
    
' set point if GeneralObjectType is choosen
comm.Point.X = 2
comm.Point.Y = 4
comm.Point.Z = 6
    
' set offset from reference object
comm.Offset.X = 0,5
comm.Offset.Y = 1
comm.Offset.Z = 1,5
comm.Rotation = 1
    
' set text of comment
comm.Text = "testcomment"
    
' transfer object to program
iGuiObj.PrepareModification
iGuiObj.SetComment comm
iGuiObj.FinishModification
    
e: If Err.Number <> 0 Then MsgBox Err.description, , Err.Source
    
Set iModelData = Nothing
iModel.GetApplication.UnlockLicense
Set iModel = Nothing

End Sub

Выбор ссылки или элемента, к которому относится комментарий, определяется в первую очередь типом ( ObjectType ). Для этого рекомендуем выбрать, например, стержень, узел или любую точку в пространстве. Далее через ObjectNo указывается номер референтного объекта (например, Стержень 1). Если вы выбрали свободную точку, она задается с помощью Point.
Наконец можно указать и смещение от референтного объекта.