Solid Edge Assembly Type Library
GetDefinition Method
Description
Syntax
Visual Basic
Public Sub GetDefinition( _
   ByRef inputOccs() As Object, _
   ByRef outputOccs() As Object, _
   Optional ByRef actionEnums As Variant, _
   Optional ByRef planeEnums As Variant, _
   Optional ByRef userEnums As Variant _
) 
Parameters
inputOccs
outputOccs
actionEnums
planeEnums
userEnums
Example
Imports System.IO
Imports System.Runtime.InteropServices

Module Example
    <STAThread()> _
    Sub Main()

        Dim objApplication As SolidEdgeFramework.Application = Nothing
        Dim objAssemblyDocument As SolidEdgeAssembly.AssemblyDocument = Nothing
        Dim objAssemblyCopies As SolidEdgeAssembly.AssemblyCopies = Nothing
        Dim objAssemblyCopy As SolidEdgeAssembly.AssemblyCopy = Nothing
        Dim objMirrorAsmRefPlane As SolidEdgeAssembly.AsmRefPlane = objAssemblyCopy.MirrorPlane

        Try
            OleMessageFilter.Register()

            objApplication = Marshal.GetActiveObject("SolidEdge.Application")
            objAssemblyDocument = objApplication.ActiveDocument
            objAssemblyCopies = objAssemblyDocument.AssemblyCopies
            objAssemblyCopy = objAssemblyCopies.Item("Assembly Copy_1")
            objMirrorAsmRefPlane = objAssemblyCopy.MirrorPlane

            Dim inArray As Array = Array.CreateInstance(GetType(System.Object), 2)
            Dim outArray As Array = Array.CreateInstance(GetType(SolidEdgeAssembly.Occurrence), 2)
            Dim fileArray As Array = Array.CreateInstance(GetType(System.Object), 2)
            Dim ActionArray As Array = Array.CreateInstance(GetType(SolidEdgeConstants.AssemblyCopyActionConstants), 2)
            Dim AdjustArray As Array = Array.CreateInstance(GetType(SolidEdgeConstants.AssemblyCopyPlaneConstants), 2)
            Dim EnumArray As Array = Array.CreateInstance(GetType(SolidEdgeConstants.AssemblyCopyUserConstants), 2)

            objAssemblyCopy.GetDefinition(inArray, outArray, ActionArray, AdjustArray, EnumArray)

            Dim x As Integer = 1
            For x = 0 To inArray.Length - 1 Step 1
                Dim occ As SolidEdgeAssembly.Occurrence = inArray(x)
                Console.Write(occ.Name)
                Console.Write("  input: ")
                If Not (outArray(x) Is Nothing) Then
                    occ = outArray(x)
                    Console.Write(occ.Name)
                Else
                    Console.Write(" Excluded")
                End If
                If (ActionArray(x) = SolidEdgeConstants.AssemblyCopyActionConstants.seAssemblyCopyActionInclude) Then
                    Console.Write("  Included  ")
                ElseIf (ActionArray(x) = SolidEdgeConstants.AssemblyCopyActionConstants.seAssemblyCopyActionMirror) Then
                    Console.Write("  Mirrored  ")
                ElseIf (ActionArray(x) = SolidEdgeConstants.AssemblyCopyActionConstants.seAssemblyCopyActionRotate) Then
                    Console.Write("  Rotated  ")
                ElseIf (ActionArray(x) = SolidEdgeConstants.AssemblyCopyActionConstants.seAssemblyCopyActionPending) Then
                    Console.Write("  Pending  ")
                Else
                    Console.Write("  Excluded  ")
                End If
                If (EnumArray(x) = SolidEdgeConstants.AssemblyCopyUserConstants.seAssemblyCopyDefault) Then
                    Console.Write("  Default  ")

                Else
                    Console.Write("  Modified  ")
                End If
                Console.WriteLine(AdjustArray(x))
            Next


        Catch ex As Exception
            Console.WriteLine(ex.Message)
        Finally
            OleMessageFilter.Revoke()
        End Try
    End Sub
End Module
See Also

AssemblyCopy Object  | AssemblyCopy Members  | Solid Edge ST5 - What's New