UNPKG

@threlte/extras

Version:

Utilities, abstractions and plugins for your Threlte apps

40 lines (39 loc) 1.48 kB
import type { TrackballControlsProps } from './types.js'; /** * `<TrackballControls>` allow the camera to orbit freely around a target * without causing gimbal lock. This type of camera controller is commonly used * when the concepts of up and down are less important than the ability to * carefully inspect a model from every angle. * * For an alternative camera controller, see * [`<OrbitControls>`](https://threlte.xyz/docs/reference/extras/orbit-controls). * * If placed as a child of a camera component, `<TrackballControls>` will * attach to that camera. Otherwise, it attaches to the scene's default * camera. A camera can also be passed explicitly via the `camera` prop. * By default, damping is enabled. You can disable this by setting * `staticMoving` to true. * * ## Usage * * ```svelte * <script> * import { TrackballControls } from '@threlte/extras' * import { T } from '@threlte/core' * </script> * * <T.PerspectiveCamera * makeDefault * fov={50} * > * <TrackballControls /> * </T.PerspectiveCamera> * ``` * * `<TrackballControls>` is a light wrapper that will use its parent as the target camera and * the DOM element the renderer is rendering to as the DOM element to listen to. It will also * by demand invalidate the frame loop. */ declare const TrackballControls: import("svelte").Component<TrackballControlsProps, {}, "ref">; type TrackballControls = ReturnType<typeof TrackballControls>; export default TrackballControls;