Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Recommended Posts

Ken,

This should do the trick.

Public Overrides Function Run(param As Integer) As MCamReturn

        '' Make sure there is a line availble for selection
        Dim mask As New GeometryMask(False, True, False, False, False, False, False)

        '' Sanity check
        If Not SearchManager.GetGeometry(mask).Any() Then
            '' Not like this....
            DialogManager.OK("There are no lines in current drawing for selection", "Select a Line")
            Return MCamReturn.FunctionExit
        End If

        '' Keep selecting
        While True

            '' Ok to go, Prompt user for a line
            Dim geometry = SelectionManager.AskForGeometry("Select a line", mask)

            '' Sanity check
            If geometry Is Nothing Then
                '' Likely user cancelled so bail
                Exit While
            End If

            '' Cast geometry type to a line
            Dim line = DirectCast(geometry, LineGeometry)

            '' Get the rise
            Dim dx As Double = line.Data.Point2.x - line.Data.Point1.x
            Dim dy As Double = line.Data.Point2.y - line.Data.Point1.y

            '' Define a new point
            Dim point = new Point2D(dx, dy)

            '' Get the angle
            Dim degrees = VectorManager.AngleDegrees(point)

            '' Display, formatted to 4 decimal places
            DialogManager.OK("Angle of selected line is " + degrees.ToString("###.####"), "Result")

            '' Unselect geometry
            SelectionManager.UnselectAllGeometry()

            '' Refresh
            GraphicsManager.Repaint()

        End While

        Return MCamReturn.NoErrors

    End Function

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...