Threejs Fit plane to screen
var cameraZ = camera.position.z; | |
var planeZ = 5; | |
var distance = cameraZ - planeZ; | |
var aspect = viewWidth / viewHeight; | |
var vFov = camera.fov * Math.PI / 180; | |
var planeHeightAtDistance = 2 * Math.tan(vFov / 2) * distance; | |
var planeWidthAtDistance = planeHeightAtDistance * aspect; | |
// or | |
let dist = camera.position.z - mesh.position.z; | |
let height = ... // desired height to fit | |
camera.fov = 2 * Math.atan(height / (2 * dist)) * (180 / Math.PI); | |
camera.updateProjectionMatrix(); | |
// Basically solving an AAS triangle https://www.mathsisfun.com/algebra/trig-solving-aas-triangles.html | |
https://i.stack.imgur.com/PgSn3.jpg |
This comment has been minimized.
This comment has been minimized.
thank you! |
This comment has been minimized.
This comment has been minimized.
thanks poussin ! |
This comment has been minimized.
This comment has been minimized.
Thank you! |
This comment has been minimized.
This comment has been minimized.
Merci copain ! <3 |
This comment has been minimized.
This comment has been minimized.
Thanks! |
This comment has been minimized.
This comment has been minimized.
Great, thank you! |
This comment has been minimized.
This comment has been minimized.
Excellent, merci! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This comment has been minimized.
Very handy, I was looking for this👍