Three.js – Largeur de vue

Existe-t-il un moyen de découvrir la largeur d'une partie rendue de la scène?

Par exemple, si nous avons un maillage de largeur 100, mais rendu avec un certain niveau de zoom … Comment calculer la largeur de la partie du maillage qui est en cours d'exécution?

Vous devez être précis ici.

Vous pouvez calculer la région rectangulaire visible étant donné le champ de vision de la caméra, camera.fov et une distance donnée dist de la caméra.

Étant donné que l'objet a vraisemblablement la profondeur, il faut choisir un plan à travers le maillage et faire le calcul à cette distance.

Voici comment calculer la height et la width visibles pour une distance donnée dist de la caméra.

 var vFOV = camera.fov * Math.PI / 180; // convert vertical fov to radians var height = 2 * Math.tan( vFOV / 2 ) * dist; // visible height var aspect = window.width / window.height; var width = height * aspect; // visible width