Skip to main content

Class: PickingManager

Defined in: modules/engine/src/modules/picking/picking-manager.ts:105

Helper class for using object picking with backend-specific readback.

Todo​

Support multiple models

Todo​

Switching picking module

Constructors​

Constructor​

new PickingManager(device, props): PickingManager

Defined in: modules/engine/src/modules/picking/picking-manager.ts:126

Parameters​

device​

Device

props​

PickingManagerProps

Returns​

PickingManager

Properties​

device​

device: Device

Defined in: modules/engine/src/modules/picking/picking-manager.ts:106


framebuffer​

framebuffer: Framebuffer | null = null

Defined in: modules/engine/src/modules/picking/picking-manager.ts:112

Framebuffer used for picking


mode​

mode: ResolvedPickingMode

Defined in: modules/engine/src/modules/picking/picking-manager.ts:108


pickInfo​

pickInfo: PickInfo

Defined in: modules/engine/src/modules/picking/picking-manager.ts:110

Info from latest pick operation


props​

props: Required<PickingManagerProps>

Defined in: modules/engine/src/modules/picking/picking-manager.ts:107


defaultProps​

static defaultProps: Required<PickingManagerProps>

Defined in: modules/engine/src/modules/picking/picking-manager.ts:118

Methods​

beginRenderPass()​

beginRenderPass(): RenderPass

Defined in: modules/engine/src/modules/picking/picking-manager.ts:188

Prepare for rendering picking colors

Returns​

RenderPass


clearPickState()​

clearPickState(): void

Defined in: modules/engine/src/modules/picking/picking-manager.ts:155

Clear highlighted / picked object

Returns​

void


destroy()​

destroy(): void

Defined in: modules/engine/src/modules/picking/picking-manager.ts:139

Returns​

void


getFramebuffer()​

getFramebuffer(): Framebuffer

Defined in: modules/engine/src/modules/picking/picking-manager.ts:146

Returns​

Framebuffer


getPickPosition()​

getPickPosition(mousePosition): [number, number]

Defined in: modules/engine/src/modules/picking/picking-manager.ts:234

Get pick position in device pixel range use the center pixel location in device pixel range

Parameters​

mousePosition​

[number, number]

Returns​

[number, number]


shouldPick()​

shouldPick(mousePosition, options?): mousePosition is [number, number]

Defined in: modules/engine/src/modules/picking/picking-manager.ts:162

Return whether callers need to render a fresh picking pass for this cursor position.

Parameters​

mousePosition​

[number, number] | null | undefined

options?​

PickingShouldPickOptions = {}

Returns​

mousePosition is [number, number]


updatePickInfo()​

updatePickInfo(mousePosition): Promise<PickInfo | null>

Defined in: modules/engine/src/modules/picking/picking-manager.ts:207

Parameters​

mousePosition​

[number, number]

Returns​

Promise<PickInfo | null>