---
title: OrbitControls
description: Comment utiliser OrbitControls pour intéragir avec votre scène.
author: alvarosabu
thumbnail: /recipes/orbit-controls.png
difficulty: 1
---
# OrbitControls
[OrbitControls](https://threejs.org/docs/index.html?q=orbit#examples/en/controls/OrbitControls) est un contrôleur de caméra qui vous permet d'orbiter autour d'une cible. C'est une excellente façon d'explorer votre scène.
Cependant, cela ne fait pas partie du cœur de ThreeJS. Par conséquent, pour l'utiliser, vous devrez l'importer depuis le module `three/addons/controls/OrbitControls`.
Cela crée un problème car **TresJS** crée automatiquement un catalogue du cœur de ThreeJS afin que vous puissiez les utiliser comme composants.
Heureusement, **TresJS** offre un moyen d'étendre le catalogue de composants. Vous pouvez le faire en utilisant la méthode `extend` de la bibliothèque principale.
Pour plus d'informations sur la façon d'étendre votre catalogue TresJS, consultez la section [extension](/advanced/extending.md).
## Usage de OrbitControls
Pour utiliser `OrbitControls`, vous devez d'abord importer le module `three/addons/controls/OrbitControls`.
```js
import { OrbitControls } from 'three/addons/controls/OrbitControls'
```
Ensuite, vous devez étendre le catalogue de composants à l'aide de la méthode `extend`.
```js
import { extend } from '@tresjs/core'
import { OrbitControls } from 'three/addons/controls/OrbitControls'
extend({ OrbitControls })
```
Vous pouvez maintenant utiliser le composant `TresOrbitControls` dans votre scène.
```vue
```
Étant donné que [OrbitControls](https://threejs.org/docs/index.html?q=orbit#examples/en/controls/OrbitControls) a besoin d'une référence à la caméra et au moteur de rendu, vous devez les transmettre comme arguments.
Vous pouvez utiliser le composable [useTres](/api/composables#usetres) pour obtenir la caméra et le moteur de rendu.
```ts
import { useTres } from '@tresjs/core'
const { camera, renderer } = useTres()
```
Le code final ressemblerait donc à ceci :
```vue
```
## OrbitControls de `cientos`
C’est là que commence la partie intéressante. ✨
Le package `cientos` fournit un composant appelé `` qui est un wrapper pour `OrbitControls` du module [`three-stdlib`](https://github.com/pmndrs/three-stdlib).
Le meilleur? Vous n'avez pas besoin de développer le catalogue ni de transmettre d'arguments.
Cela fonctionne tout simplement. 💯
```vue
```