Aviatrix3D
2.1.0

org.j3d.aviatrix3d.picking
Interface PickTarget

All Known Subinterfaces:
CustomPickTarget, GroupPickTarget, LeafPickTarget, SinglePickTarget, TransformPickTarget
All Known Implementing Classes:
Axis, Billboard, BitmapRaster, Box, BufferGeometry, ByteRaster, Cone, Cylinder, Geometry, Group, Group2D, ImageRaster, IndexedBufferGeometry, IndexedLineArray, IndexedLineArray, IndexedLineStripArray, IndexedLineStripArray, IndexedQuadArray, IndexedQuadArray, IndexedQuadStripArray, IndexedQuadStripArray, IndexedTriangleArray, IndexedTriangleArray, IndexedTriangleFanArray, IndexedTriangleFanArray, IndexedTriangleStripArray, IndexedTriangleStripArray, IndexedVertexGeometry, LineArray, LineArray, LineStripArray, LineStripArray, LODGroup, MaskedSwitch, PixelTransform, Pixmap, PointArray, PointArray, QuadArray, QuadArray, QuadStripArray, QuadStripArray, Raster, Shape3D, SharedGroup, SharedGroup2D, SharedNode, SharedNode2D, SortedPointArray, Sphere, Spring, SwitchGroup, Teapot, Text2D, Torus, TransformGroup, TriangleArray, TriangleArray, TriangleFanArray, TriangleFanArray, TriangleStripArray, TriangleStripArray, VertexGeometry

public interface PickTarget

An internal marker interface that indicates an object that can support pick processing requests.

This is an inward-facing interface used to by the implementation of the PickingManager to walk a scene graph of objects traversing them for picking processing requests. This is a base interface, from which derived interface types describe particular pickable structures that can be used to fetch descendent objects.

End users should never call the methods on this or derived interfaces.

Implementor Guidelines

There is no requirement to implement a separate set of logic for the picking bounds versus the geometry bounds. The implementation is free to use the object instance for both, yet can also provide a more optimised form if it desires.

Version:
$Revision: 1.3 $
Author:
Justin Couch

Field Summary
static int CUSTOM_PICK_TYPE
          Standard type for a custom picking type
static int GROUP_PICK_TYPE
          Standard type for a group picking type
static int LEAF_PICK_TYPE
          Standard type for a leaf picking type
static int SINGLE_PICK_TYPE
          Standard type for a single picking type
 
Method Summary
 boolean checkPickMask(int mask)
          Check the given pick mask against the node's internal pick mask representation.
 BoundingVolume getPickableBounds()
          Get the bounds of this picking target so that testing can be performed on the object.
 int getPickTargetType()
          Return the type constant that represents the type of pick target this is.
 

Field Detail

GROUP_PICK_TYPE

static final int GROUP_PICK_TYPE
Standard type for a group picking type

See Also:
Constant Field Values

SINGLE_PICK_TYPE

static final int SINGLE_PICK_TYPE
Standard type for a single picking type

See Also:
Constant Field Values

LEAF_PICK_TYPE

static final int LEAF_PICK_TYPE
Standard type for a leaf picking type

See Also:
Constant Field Values

CUSTOM_PICK_TYPE

static final int CUSTOM_PICK_TYPE
Standard type for a custom picking type

See Also:
Constant Field Values
Method Detail

getPickTargetType

int getPickTargetType()
Return the type constant that represents the type of pick target this is. Used to provided optimised picking implementations.

Returns:
One of the _PICK_TYPE constants

checkPickMask

boolean checkPickMask(int mask)
Check the given pick mask against the node's internal pick mask representation. If there is a match in one or more bitfields then this will return true, allowing picking to continue to process for this target.

Parameters:
mask - The bit mask to check against
Returns:
true if the mask has an overlapping set of bitfields

getPickableBounds

BoundingVolume getPickableBounds()
Get the bounds of this picking target so that testing can be performed on the object.

Returns:
A representation of the volume representing the pickable objects

Aviatrix3D
2.1.0

Latest Info from http://aviatrix3d.j3d.org/
Copyright © 2003 - 2009 j3d.org