Imports System.IO
Imports System.Runtime.InteropServices
Module Example
    <STAThread()> _
    Sub Main()
        Dim objApplication As SolidEdgeFramework.Application
        Dim objAssemblyDocument As SolidEdgeAssembly.AssemblyDocument
        Dim objOccurrence1 As SolidEdgeAssembly.Occurrence
        Dim objOccurrence2 As SolidEdgeAssembly.Occurrence
        Dim objOccurrences As SolidEdgeAssembly.Occurrences
        Dim objRelations3d As SolidEdgeAssembly.Relations3d
        Dim arrayOccurrences() As Object
        Try
            OleMessageFilter.Register()
            objApplication = Marshal.GetActiveObject("SolidEdge.Application")
            objAssemblyDocument = objApplication.ActiveDocument
            objOccurrences = objAssemblyDocument.Occurrences
            objRelations3d = objAssemblyDocument.Relations3d
            objOccurrence1 = objOccurrences.Item(2)
            objOccurrence2 = objOccurrences.Item(3)
            ReDim arrayOccurrences(2)
            arrayOccurrences(0) = objOccurrence1
            arrayOccurrences(1) = objOccurrence2
            objRelations3d.AddRigidSet(2, arrayOccurrences)
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        Finally
            OleMessageFilter.Revoke()
        End Try
    End Sub
End Module