Skip to content
On this page

TrackballControls

This component manages THREE.TrackballControls.

<TrackballControls> must be passed to <PerspectiveCamera> or <OrthographicCamera>

Example

Click me to view the example code
vue
<template>
  <div style="width: 100vh; height: 100vh;">
    <Renderer :antialias="true">
      <PerspectiveCamera :position="[5, 5, 5]" :up="[0, 0, 1]">
        <TrackballControls :rotate-speed="0.01" :pan-speed="0.003" />
      </PerspectiveCamera>
      <Scene background="#f9f9f9">
        <OBJLoader
          :position="[0, 0, -0.6]"
          :rotation="[Math.PI / 2, Math.PI, 0]"
          :scale="[20, 20, 20]"
          url="https://raw.githubusercontent.com/alecjacobson/common-3d-test-models/master/data/stanford-bunny.obj"
        >
          <MeshNormalMaterial />
        </OBJLoader>
        <AxesHelper :size="3" />
      </Scene>
    </Renderer>
  </div>
</template>

<script setup lang="ts">
import { Renderer, Scene } from "@janvorisek/drie";
import { PerspectiveCamera, TrackballControls } from "@janvorisek/drie";
import { OBJLoader, MeshNormalMaterial } from "@janvorisek/drie";
import { AxesHelper } from "@janvorisek/drie";
</script>

Props

Prop nameDescriptionTypeDefault
minDistanceHow far you can dolly in.
PerspectiveCamera only.
number0
maxDistanceHow far you can dolly out.
PerspectiveCamera only.
numberInfinity
panSpeed The pan speednumber0.3
rotateSpeedThe rotation speed.number1
zoomSpeed The zoom speed.number1.2

Expose

three


Released under the MIT License.