PickPoint Method (ObjectSnapTypes, String)


Prompts the user to pick a point on the active work plane using specified snap settings while showing a custom status prompt string.

Namespace: Autodesk.Revit.UI.Selection
Assembly: RevitAPIUI (in RevitAPIUI.dll) Version: 21.0.0.0 (21.1.1.109)

Syntax

C#
public XYZ PickPoint(
	ObjectSnapTypes snapSettings,
	string statusPrompt
)
Visual Basic
Public Function PickPoint ( _
	snapSettings As ObjectSnapTypes, _
	statusPrompt As String _
) As XYZ
Visual C++
public:
XYZ^ PickPoint(
	ObjectSnapTypes snapSettings, 
	String^ statusPrompt
)

Parameters

snapSettings
Type: Autodesk.Revit.UI.Selection ObjectSnapTypes
Specifies the object snap types for this pick. Multiple object snap types can be combined with "|"
statusPrompt
Type: System String
Specifies the message shown on the status bar.

Return Value

The point picked by user.

Note: if the user cancels the operation (for example, through ESC), the method will throw an OperationCanceledException instance.

Remarks

Revit users will be permitted to manipulate the Revit view (zooming, panning, and rotating the view), but will not be permitted to click other items in the Revit user interface. Users are not permitted to switch the active view, close the active document or Revit application in the pick session, otherwise an exception will be thrown.

Note: this method must not be called during dynamic update, otherwise ForbiddenForDynamicUpdateException will be thrown.

Examples

Copy C#
public void PickPoint(UIDocument uidoc)
{
    ObjectSnapTypes snapTypes = ObjectSnapTypes.Endpoints | ObjectSnapTypes.Intersections;
    XYZ point = uidoc.Selection.PickPoint(snapTypes, "Select an end point or intersection");

    string strCoords = "Selected point is " + point.ToString();

    TaskDialog.Show("Revit", strCoords);
}
Copy VB.NET
Public Sub PickPoint(uidoc As UIDocument)
    Dim snapTypes As ObjectSnapTypes = ObjectSnapTypes.Endpoints Or ObjectSnapTypes.Intersections
    Dim point As XYZ = uidoc.Selection.PickPoint(snapTypes, "Select an end point or intersection")

    Dim strCoords As String = "Selected point is " & point.ToString()

    TaskDialog.Show("Revit", strCoords)
End Sub

Exceptions

Exception Condition
Autodesk.Revit.Exceptions ArgumentNullException Thrown when the argument statusPrompt is a null reference ( Nothing in Visual Basic) .
Autodesk.Revit.Exceptions InvalidOperationException Thrown when no work plane set in current view.
Autodesk.Revit.Exceptions OperationCanceledException Thrown when the Revit user cancelled this operation. Thrown when the Revit user tried to switch the active view, close the active document or Revit application when responding to this mode.
Autodesk.Revit.Exceptions ForbiddenForDynamicUpdateException Thrown if this method is called during dynamic update.

See Also