Class: Picker
Experimental
Routes picks to the CPU (2D) or GPU (3D) implementation per viewport. One per render root; see createPicker.
Constructors
Constructor
new Picker(host, options?): Picker;Experimental
Parameters
| Parameter | Type |
|---|---|
host | PickerHost |
options | PickerOptions |
Returns
Picker
Properties
| Property | Modifier | Type | Description |
|---|---|---|---|
host | readonly | PickerHost | Experimental |
Accessors
size
Get Signature
get size(): number;Experimental
Number of registrations across all viewports.
Returns
number
Methods
add()
add(
viewport,
target,
options?
): number;Experimental
Make target pickable in viewport and return a handle id for remove. The route is chosen by viewport kind (pickRouteFor).
Parameters
| Parameter | Type |
|---|---|
viewport | Viewport |
target | PickTarget |
options | GpuPickableOptions |
Returns
number
Throws
TypeError when the target does not fit the route (e.g. a plain Object3D in 2D).
clearViewport()
clearViewport(viewport): void;Experimental
Drop every registration and pick resource of one viewport (e.g. before removing it).
Parameters
| Parameter | Type |
|---|---|
viewport | Viewport |
Returns
void
dispose()
dispose(): void;Experimental
Returns
void
gpuPickerFor()
gpuPickerFor(viewport): GpuPickerLike | null;Experimental
The GPU picker serving a 3D viewport, if any pickable was added there.
Parameters
| Parameter | Type |
|---|---|
viewport | Viewport |
Returns
GpuPickerLike | null
pick()
pick(
x,
y,
options?
): Promise<PickResult[]>;Experimental
Pick at a container-space CSS position (e.g. event.offsetX/Y on the canvas), routed to the topmost viewport there. Results are nearest first and carry viewport.
Parameters
| Parameter | Type |
|---|---|
x | number |
y | number |
options | PickOptions |
Returns
Promise<PickResult[]>
pickIn()
pickIn(
viewport,
x,
y,
options?
): Promise<PickResult[]>;Experimental
Pick in a specific viewport (container-space CSS position).
Parameters
| Parameter | Type |
|---|---|
viewport | Viewport |
x | number |
y | number |
options | PickOptions |
Returns
Promise<PickResult[]>
pickInSync()
pickInSync(
viewport,
x,
y,
options?
): PickResult[] | null;Experimental
pickSync for a specific viewport.
Parameters
| Parameter | Type |
|---|---|
viewport | Viewport |
x | number |
y | number |
options | PickOptions |
Returns
PickResult[] | null
pickSync()
pickSync(
x,
y,
options?
): PickResult[] | null;Experimental
Synchronous pick for CPU-routed (2D) viewports; returns null when the position routes to a 3D viewport (use pick). Handy for hover handlers that must answer in the same event.
Parameters
| Parameter | Type |
|---|---|
x | number |
y | number |
options | PickOptions |
Returns
PickResult[] | null
remove()
remove(id): boolean;Experimental
Remove a registration by handle id. Returns whether it existed.
Parameters
| Parameter | Type |
|---|---|
id | number |
Returns
boolean