Imports System.IO
Imports System.Runtime.InteropServices
Module Example
    <STAThread()> _
    Sub Main()
        Dim objApplication As SolidEdgeFramework.Application = Nothing
        Dim objPartDocument As SolidEdgePart.PartDocument = Nothing
        Dim objStudyOwner As SolidEdgePart.StudyOwner = Nothing
        Dim objStudy As SolidEdgePart.Study = Nothing
        Dim objPlotsOwner As SolidEdgePart.PlotsOwner = Nothing
        Dim objPlot As SolidEdgePart.Plot = Nothing
        Dim dValAtX As Double = 0.0
        Dim dValAtY As Double = 0.0
        Dim dValAtZ As Double = 0.0
        Try
            OleMessageFilter.Register()
            ' Connect to Solid Edge
            objApplication = Marshal.GetActiveObject("SolidEdge.Application")
            objPartDocument = objApplication.ActiveDocument
            objStudyOwner = objPartDocument.StudyOwner
            objStudy = objStudyOwner.Item(1)
            ' This will give us active plotsowner.
            objStudy.GetPlotsOwner(objPlotsOwner)
            ' Get active plot object
            objPlotsOwner.GetActivePlot(objPlot)
            objPlot.GetXYZLocationsOfMaxValue(dValAtX, dValAtY, dValAtZ)
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        Finally
            OleMessageFilter.Revoke()
        End Try
    End Sub
End Module