Module javafx.graphics
Package javafx.scene.input

# Class PickResult

java.lang.Object
javafx.scene.input.PickResult

public class PickResult extends Object
A container object that contains the result of a pick event

Since:
  JavaFX 8.0

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`FACE_UNDEFINED`
An undefined face.

## Constructor Summary

Constructors
Constructor
Description
`PickResult(EventTarget target, double sceneX, double sceneY)`
Creates a pick result for a 2D case where no additional information is needed.
`PickResult(Node node, Point3D point, double distance)`
Creates a new instance of PickResult for a non-3d-shape target.
`PickResult(Node node, Point3D point, double distance, int face, Point2D texCoord)`
Creates a new instance of PickResult.
`PickResult(Node node, Point3D point, double distance, int face, Point3D normal, Point2D texCoord)`
Creates a new instance of PickResult.

## Method Summary

Modifier and Type
Method
Description
`final double`
`getIntersectedDistance()`
Returns the intersected distance between camera position and the intersected point.
`final int`
`getIntersectedFace()`
Returns the intersected face of the picked Node, FACE_UNDEFINED if the node doesn't have user-specified faces or was picked on bounds.
`final Node`
`getIntersectedNode()`
Returns the intersected node.
`final Point3D`
`getIntersectedNormal()`
Return the intersected normal of the picked 3d shape.
`final Point3D`
`getIntersectedPoint()`
Returns the intersected point in local coordinate of the picked Node.
`final Point2D`
`getIntersectedTexCoord()`
Return the intersected texture coordinates of the picked 3d shape.
`String`
`toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Field Details

### FACE_UNDEFINED

public static final int FACE_UNDEFINED
An undefined face. This value is used for the intersected face if the picked node has no user-specified faces.

See Also:
  - Constant Field Values

## Constructor Details

### PickResult

public PickResult(Node node, Point3D point, double distance, int face, Point2D texCoord)
Creates a new instance of PickResult.

Parameters:
  `node` - The intersected node
  `point` - The intersected point in local coordinate of the picked Node
  `distance` - The intersected distance between camera position and the picked Node
  `face` - The intersected face of the picked Node
  `texCoord` - The intersected texture coordinates of the picked Node

### PickResult

public PickResult(Node node, Point3D point, double distance, int face, Point3D normal, Point2D texCoord)
Creates a new instance of PickResult.

Parameters:
  `node` - The intersected node
  `point` - The intersected point in local coordinate of the picked Node
  `distance` - The intersected distance between camera position and the picked Node
  `face` - The intersected face of the picked Node
  `normal` - The intersected normal of the picked Node
  `texCoord` - The intersected texture coordinates of the picked Node
Since:
  JavaFX 8u40

### PickResult

public PickResult(Node node, Point3D point, double distance)
Creates a new instance of PickResult for a non-3d-shape target. Sets face to FACE_UNDEFINED and texCoord to null.

Parameters:
  `node` - The intersected node
  `point` - The intersected point in local coordinate of the picked Node
  `distance` - The intersected distance between camera position and the picked Node

### PickResult

public PickResult(EventTarget target, double sceneX, double sceneY)
Creates a pick result for a 2D case where no additional information is needed. Converts the given scene coordinates to the target's local coordinate space and stores the value as the intersected point. Sets intersected node to the given target, distance to 1.0, face to FACE_UNDEFINED and texCoord to null.

Parameters:
  `target` - The picked target (null in case of a Scene)
  `sceneX` - The scene X coordinate
  `sceneY` - The scene Y coordinate

## Method Details

### getIntersectedNode

public final Node getIntersectedNode()
Returns the intersected node. Returns null if there was no intersection with any node and the scene was picked.

Returns:
  the picked node or null if no node was picked

### getIntersectedPoint

public final Point3D getIntersectedPoint()
Returns the intersected point in local coordinate of the picked Node. If no node was picked, it returns the intersected point with the projection plane.

Returns:
  new Point3D presenting the intersected point

### getIntersectedDistance

public final double getIntersectedDistance()
Returns the intersected distance between camera position and the intersected point.

Returns:
  the distance from camera to the intersection

### getIntersectedFace

public final int getIntersectedFace()
Returns the intersected face of the picked Node, FACE_UNDEFINED if the node doesn't have user-specified faces or was picked on bounds.

Returns:
  the picked face

### getIntersectedNormal

public final Point3D getIntersectedNormal()
Return the intersected normal of the picked 3d shape. If the picked target is not Shape3D or has pickOnBounds==true, it returns null.

Returns:
  a new Point3D presenting the intersected normal
Since:
  JavaFX 8u40

### getIntersectedTexCoord

public final Point2D getIntersectedTexCoord()
Return the intersected texture coordinates of the picked 3d shape. If the picked target is not Shape3D or has pickOnBounds==true, it returns null.

Returns:
  a new Point2D presenting the intersected TexCoord

### toString

public String toString()

Overrides:
  `toString` in class `Object`