Class PrimitivePickSensor

All Implemented Interfaces:
X3DChildNode, X3DNode, X3DSensorNode, PrimitivePickSensor, X3DPickSensorNode

public class PrimitivePickSensor extends X3DConcreteNode implements PrimitivePickSensor
If a non-uniform scale is applied to the pick sensor, correct results may require level 3 support.

Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the org.web3d.x3d.jsail classes. PrimitivePickSensor node tooltip: (X3D version 3.2 or later) [X3DPickSensorNode] PrimitivePickSensor tests picking intersections using one of the basic primitive shapes specified in the pickingGeometry field [Cone|Cylinder|Sphere|Box] against the pickTarget geometry.
  • Warning: boolean fields used to control visibility of primitive pickingGeometry subsections are ignored when evaluating picking intersections. Example: a Cylinder without end caps is still treated as an enclosed Cylinder.
  • Hint: Sorting is defined based on the primitive type as follows. For Cone, the closest picked primitive is defined to be that closest to the vertex point. For Cylinder, Box, and Sphere, the closest picked primitive is defined to be that closest to the center.
  • Hint: picking is performed between rendered frames of the event model. An author sets up the picking request in one frame by placing a LinePickSensor in the desired location. At the start of the next frame, any picking intersections are reported by the pick sensor.
  • Hint: picking notification is performed at the start of the frame for all enabled pick sensors once all other sensors are processed.
  • Hint: event timing details are explained in X3D Specification Execution model order of contained nodes is significant, single pickingGeometry node must precede pickTarget node array.
  • Hint: Box, Cone, Cylinder or Sphere can be used for pickingGeometry node.

Package hint: This org.web3d.x3d.jsail concrete class is used for implementing a standalone X3D object as a Plain Old Java Object (POJO). If you are writing Java code for use inside an X3D Script node, compile separate code using only the org.web3d.x3d.sai package instead.
See Also: