Skip to main content

Class: UIImage<TEventMap>

Defined in: src/ui/components/UIImage.ts:11

URL-backed or caller-texture-backed image content.

Extends

Type Parameters

TEventMap

TEventMap extends THREE.Object3DEventMap = THREE.Object3DEventMap

Constructors

Constructor

new UIImage<TEventMap>(__namedParameters): UIImage<TEventMap>

Defined in: src/ui/components/UIImage.ts:18

Parameters

__namedParameters

UIImageOptions

Returns

UIImage<TEventMap>

Overrides

UIElement.constructor

Properties

ariaLabel?

readonly optional ariaLabel: string

Defined in: src/ui/components/UIImage.ts:15


isUI

readonly isUI: true = true

Defined in: src/ui/UIElement.ts:290

Inherited from

UIElement.isUI


isXRScript

isXRScript: boolean = true

Defined in: src/core/Script.ts:99

Inherited from

UIElement.isXRScript


name

name: string = 'UIImage'

Defined in: src/ui/components/UIImage.ts:14

Optional name of the object

Remarks

(doesn't need to be unique).

Default Value

""

Overrides

UIElement.name


xb?

optional xb: XBObjectOptions

Defined in: src/interaction/InteractionTypes.ts:32

Inherited from

UIElement.xb

Accessors

src

Get Signature

get src(): string | Texture<unknown, TextureEventMap>

Defined in: src/ui/components/UIImage.ts:27

Returns

string | Texture<unknown, TextureEventMap>

Set Signature

set src(value): void

Defined in: src/ui/components/UIImage.ts:31

Parameters
value

string | Texture<unknown, TextureEventMap>

Returns

void


style

Get Signature

get style(): UIStyle

Defined in: src/ui/UIElement.ts:340

Returns

UIStyle

Set Signature

set style(style): void

Defined in: src/ui/UIElement.ts:344

Parameters
style

UIStyle

Returns

void

Inherited from

UIElement.style

Methods

add()

add(...objects): this

Defined in: src/ui/UIElement.ts:322

Adds another Object3D as child of this Object3D.

Parameters

objects

...Object3D<Object3DEventMap>[]

Returns

this

Remarks

An arbitrary number of objects may be added Any current parent on an object passed in here will be removed, since an Object3D can have at most one parent.

See

  • attach
  • THREE.Group | Group for info on manually grouping objects.

Inherited from

UIElement.add


attach()

attach(object): this

Defined in: src/ui/UIElement.ts:328

Adds a Object3D as a child of this, while maintaining the object's world transform.

Parameters

object

Object3D

Returns

this

Remarks

Note: This method does not support scene graphs having non-uniformly-scaled nodes(s).

See

add

Inherited from

UIElement.attach


dispose()

dispose(): void

Defined in: src/core/Script.ts:263

Called when the script is removed from the scene. Opposite of init.

Returns

void

Inherited from

UIElement.dispose


getWorldPosition()

getWorldPosition(target): Vector3

Defined in: src/ui/UIElement.ts:333

Returns a vector representing the position of the object in world space.

Parameters

target

Vector3

The result will be copied into this Vector3.

Returns

Vector3

Inherited from

UIElement.getWorldPosition


init()

init(_?): void | Promise<void>

Defined in: src/core/Script.ts:108

Initializes an instance with XR controllers, grips, hands, and default options. We allow all scripts to quickly access its user (e.g., user.isSelecting(), user.hands), world (e.g., physical depth mesh, lighting estimation, and recognized objects), and scene (the root of three.js's scene graph). If this returns a promise, we will wait for it.

Parameters

_?

object

Returns

void | Promise<void>

Inherited from

UIElement.init


initPhysics()

initPhysics(_physics): void | Promise<void>

Defined in: src/core/Script.ts:118

Enables depth-aware interactions with physics. See /samples/advanced/ballpit

Parameters

_physics

Physics

Returns

void | Promise<void>

Inherited from

UIElement.initPhysics


markUIContentDirty()

protected markUIContentDirty(): void

Defined in: src/ui/UIElement.ts:360

Marks durable content for the next renderer commit.

Returns

void

Inherited from

UIElement.markUIContentDirty


markUIDirty()

protected markUIDirty(): void

Defined in: src/ui/UIElement.ts:354

Returns

void

Inherited from

UIElement.markUIDirty


markUIStructureDirty()

protected markUIStructureDirty(): void

Defined in: src/ui/UIElement.ts:364

Returns

void

Inherited from

UIElement.markUIStructureDirty


onHoverEnter()

onHoverEnter(_event): void

Defined in: src/core/Script.ts:215

Called when a source starts hovering over this object.

Parameters

_event

HoverEvent

The hover source, target, surface, and intersection. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onHoverEnter


onHoverExit()

onHoverExit(_event): void

Defined in: src/core/Script.ts:221

Called when a source stops hovering over this object.

Parameters

_event

HoverEvent

The hover source, target, surface, and intersection. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onHoverExit


onHovering()

onHovering(_event): void

Defined in: src/core/Script.ts:227

Called while a source hovers over this object.

Parameters

_event

HoverEvent

The hover source, target, surface, and intersection. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onHovering


onKeyDown()

onKeyDown(_event): void

Defined in: src/core/Script.ts:158

Called on keyboard keypress.

Parameters

_event

KeyEvent

Event containing .code to read the keyboard key.

Returns

void

Inherited from

UIElement.onKeyDown


onKeyUp()

onKeyUp(_event): void

Defined in: src/core/Script.ts:159

Parameters

_event

KeyEvent

Returns

void

Inherited from

UIElement.onKeyUp


onLongSelect()

onLongSelect(_event): void

Defined in: src/core/Script.ts:152

Called when an object selection reaches the long-select delay.

Parameters

_event

LongSelectEvent

Returns

void

Inherited from

UIElement.onLongSelect


onObjectGrabbing()

onObjectGrabbing(_event): void

Defined in: src/core/Script.ts:253

Called every frame a hand is grabbing this object.

Parameters

_event

ObjectGrabEvent

Returns

void

Inherited from

UIElement.onObjectGrabbing


onObjectGrabEnd()

onObjectGrabEnd(_event): void

Defined in: src/core/Script.ts:258

Called when a hand stops grabbing this object. This ends built-in direct-touch manipulation without ending contact.

Parameters

_event

ObjectGrabEvent

Returns

void

Inherited from

UIElement.onObjectGrabEnd


onObjectGrabStart()

onObjectGrabStart(_event): void

Defined in: src/core/Script.ts:249

Called when a hand starts grabbing this object (touching + pinching). A grab starts built-in direct-touch manipulation when enabled.

Parameters

_event

ObjectGrabEvent

Returns

void

Inherited from

UIElement.onObjectGrabStart


onObjectLongSelect()

onObjectLongSelect(_event): void

Defined in: src/core/Script.ts:203

Called once when a captured selection is held for the long-select delay. Manipulation captures do not emit this callback.

Parameters

_event

LongSelectEvent

The controller and completed hold duration. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onObjectLongSelect


onObjectManipulate()

onObjectManipulate(_event): void

Defined in: src/core/Script.ts:209

Called for each phase of an automatic object manipulation. Call event.stopPropagation() to stop bubbling. Calling preventDefault() on a start event suppresses the automatic action.

Parameters

_event

ManipulationEvent

Returns

void

Inherited from

UIElement.onObjectManipulate


onObjectSelectEnd()

onObjectSelectEnd(_event): void

Defined in: src/core/Script.ts:196

Called when a source stops selecting the object this Script represents.

Parameters

_event

SelectEndEvent

The completed state and end reason. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onObjectSelectEnd


onObjectSelectStart()

onObjectSelectStart(_event): void

Defined in: src/core/Script.ts:190

Called when a source starts selecting the object this Script represents.

Parameters

_event

SelectEvent

event.target is the logical object and event.source.controller identifies the controller. Call event.stopPropagation() to stop bubbling to ancestor Scripts.

Returns

void

Inherited from

UIElement.onObjectSelectStart


onObjectTouchEnd()

onObjectTouchEnd(_event): void

Defined in: src/core/Script.ts:244

Called when a hand's index finger stops touching this object. This ends the default selection lifecycle after the touch callback.

Parameters

_event

ObjectTouchEvent

Returns

void

Inherited from

UIElement.onObjectTouchEnd


onObjectTouching()

onObjectTouching(_event): void

Defined in: src/core/Script.ts:239

Called every frame that a hand's index finger is touching this object. The object remains selected during these frames unless touch selection was prevented when contact started.

Parameters

_event

ObjectTouchEvent

Returns

void

Inherited from

UIElement.onObjectTouching


onObjectTouchStart()

onObjectTouchStart(_event): void

Defined in: src/core/Script.ts:233

Called when a hand's index finger starts touching this object. Direct touch starts the object's selection lifecycle by default. Call event.preventDefault() to handle contact without selecting.

Parameters

_event

ObjectTouchStartEvent

Returns

void

Inherited from

UIElement.onObjectTouchStart


onSelect()

onSelect(_event): void

Defined in: src/core/Script.ts:144

Called whenever pinch / mouse click successfully completes, globally.

Parameters

_event

SelectEvent

The interaction source and completed target.

Returns

void

Inherited from

UIElement.onSelect


onSelectEnd()

onSelectEnd(_event): void

Defined in: src/core/Script.ts:138

Called whenever pinch / mouse click discontinues, globally.

Parameters

_event

SelectEndEvent

The completed state and end reason.

Returns

void

Inherited from

UIElement.onSelectEnd


onSelecting()

onSelecting(_event): void

Defined in: src/core/Script.ts:149

Called whenever pinch / mouse click is happening, globally.

Parameters

_event

SelectEvent

Returns

void

Inherited from

UIElement.onSelecting


onSelectStart()

onSelectStart(_event): void

Defined in: src/core/Script.ts:132

Called whenever pinch / mouse click starts, globally.

Parameters

_event

SelectEvent

The interaction source and optional captured target.

Returns

void

Inherited from

UIElement.onSelectStart


onSimulatorStarted()

onSimulatorStarted(): void

Defined in: src/core/Script.ts:124

Returns

void

Inherited from

UIElement.onSimulatorStarted


onSqueeze()

onSqueeze(_event): void

Defined in: src/core/Script.ts:181

Called whenever gamepad trigger successfully completes, globally.

Parameters

_event

SelectEvent

event.source.controller identifies the controller.

Returns

void

Inherited from

UIElement.onSqueeze


onSqueezeEnd()

onSqueezeEnd(_event): void

Defined in: src/core/Script.ts:170

Called whenever gamepad trigger stops, globally.

Parameters

_event

SelectEvent

event.source.controller identifies the controller.

Returns

void

Inherited from

UIElement.onSqueezeEnd


onSqueezeStart()

onSqueezeStart(_event): void

Defined in: src/core/Script.ts:165

Called whenever gamepad trigger starts, globally.

Parameters

_event

SelectEvent

event.source.controller identifies the controller.

Returns

void

Inherited from

UIElement.onSqueezeStart


onSqueezing()

onSqueezing(_event): void

Defined in: src/core/Script.ts:175

Called whenever gamepad is being triggered, globally.

Parameters

_event

SelectEvent

Returns

void

Inherited from

UIElement.onSqueezing


onXRSessionEnded()

onXRSessionEnded(): void

Defined in: src/core/Script.ts:122

Returns

void

Inherited from

UIElement.onXRSessionEnded


onXRSessionStarted()

onXRSessionStarted(_session?): void

Defined in: src/core/Script.ts:121

Parameters

_session?

XRSession

Returns

void

Inherited from

UIElement.onXRSessionStarted


physicsStep()

physicsStep(): void

Defined in: src/core/Script.ts:119

Returns

void

Inherited from

UIElement.physicsStep


update()

update(_time?, _frame?): void

Defined in: src/core/Script.ts:113

Runs per frame.

Parameters

_time?

number

_frame?

XRFrame

Returns

void

Inherited from

UIElement.update