838x
004326
2020-01-31

Pytanie

Jak mogę utworzyć komentarz za pomocą interfejsu COM?


Odpowiedź:
W przypadku korzystania z interfejsu COM (RF-COM lub RS-COM) komentarz można utworzyć za pomocą interfejsu obiektów pomocniczych IGuideObjects. Poniżej znajduje się przykładowy program tworzący komentarz:

Sub test_comment ()

' pobierz interfejs z otwartego modelu i zablokuj licencję/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
Ustaw iGuiObj = iModel.GetGuideObjects
    
Dim comm As RFEM5.Comment
    
' ustaw typ ramy
comm.Frame = CircularFrameType
    
' ustaw typ obiektu referencyjnego
com.ObjectType = GeneralObjectType
comm.ObjectNo = 1
    
' wartość zadana w przypadku wybrania GeneralObjectType
comm.Point.X = 2
comm.Point.Y = 4
comm.Point.Z = 6
    
' ustawiono przesunięcie od obiektu referencyjnego
comm.Offset.X = 0.5
comm.Offset.Y = 1
comm.Offset.Z = 1.5
comm.Obrót = 1
    
' ustaw tekst komentarza
comm.Text = "komentarz testowy"
    
' przenosi obiekt do programu
iGuiObj.PrepareModification
iGuiObj.SetComment comm
iGuiObj.FinishModification
    
e: Jeżeli Err.Number <> 0 to MsgBox Err.description, , Err.Source
    
Ustaw iModelData = Nic
iModel.GetApplication.UnlockLicense
Ustaw iModel = Nic

Zakończ sub

Wybór odniesienia lub elementu, do którego odnosi się komentarz, jest najpierw definiowany przez typ ( ObjectType ). Można tu na przykład wybrać pręt, węzeł lub dowolny punkt w przestrzeni. Następnie za pomocą Obiektu nr (na przykład Pręt 1) określany jest numer obiektu odniesienia. W przypadku wyboru wolnego punktu jest on wyznaczany według Punktu.
Na koniec można określić offset, który wynika z obiektu odniesienia.