# ThreeLayerInterface
Interface pour les couches three.js personnalisées. Il s'agit d'une spécification à modéliser par les implémenteurs : il ne s'agit pas d'une méthode ou d'une classe exportée.
Une couche three.js personnalisée contient une scène three.js (opens new window). Il permet à un développeur de restituer les objets three.js directement dans le contexte GL de la carte à l'aide de la caméra de la carte. Ces couches peuvent être ajoutées à la carte en utilisant Map#addLayer.
Les couches three.js personnalisées doivent avoir un id unique et doivent avoir le type de 'three'. Elles peuvent implémenter onAdd et onRemove.
# Propriétés
# id (string (opens new window))
Un identifiant de couche unique.
# lightColor (number (opens new window) | Color (opens new window) | string (opens new window))
Une couleur de lumières. Il peut s'agir d'une couleur hexadécimale, d'une instance three.js Color (opens new window) ou d'une chaîne de style CSS. Si elle n’est pas spécifiée, la couleur de lumière dynamique basée sur la date et l’heure actuelles sera utilisée.
# maxzoom (number (opens new window))
Le niveau de zoom maximum pour la couche. À des niveaux de zoom égaux ou supérieurs au zoom maximum, la couche sera masqué. La valeur peut être n’importe quel nombre compris entre 0 et 24 (inclus). Si aucun zoom maximum n'est fourni, la couche sera visible à tous les niveaux de zoom.
# minzoom (number (opens new window))
Le niveau de zoom minimum pour la couche. À des niveaux de zoom inférieurs au minzoom, la couche sera masqué. La valeur peut être n’importe quel nombre compris entre 0 et 24 (inclus). Si aucun minzoom n'est fourni, la couche sera visible à tous les niveaux de zoom.
# type (string (opens new window))
Le type de la couche. Doit être 'three'.
# Membres de l'instance
# onAdd(map, context)
Méthode facultative appelée lorsque la couche a été ajoutée à la carte avec Map#addLayer. Cela donne à la couche la possibilité d'initialiser les ressources three.js et d'enregistrer les écouteurs d'événements.
# Paramètres
map (Map) La carte 3D Mini Tokyo à laquelle cette couche vient d'être ajoutée.
context (Object (opens new window)) L'objet contenant le moteur de rendu three.js, la scène et la caméra.
| Nom | Description |
|---|---|
context.cameraPerspectiveCamera (opens new window) | Objet caméra. |
context.rendererWebGLRenderer (opens new window) | Objet de rendu. |
context.sceneScene (opens new window) | Objet de scène. |
# onRemove(map, context)
Méthode facultative appelée lorsque la couche a été supprimée de la carte avec Map#removeLayer. Cela donne à la couche la possibilité de nettoyer les ressources three.js et les écouteurs d'événements.
# Paramètres
map (Map) La carte 3D Mini Tokyo de laquelle cette couche vient d'être supprimée.
context (Object (opens new window)) L'objet contenant le moteur de rendu three.js, la scène et la caméra.
| Nom | Description |
|---|---|
context.cameraPerspectiveCamera (opens new window) | Objet caméra. |
context.rendererWebGLRenderer (opens new window) | Objet de rendu. |
context.sceneScene (opens new window) | Objet de scène. |