Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | 39x 39x 39x 39x 39x 39x 2x 2x 2x 2x 2x | import { Injectable } from "@angular/core" import { PerspectiveCamera, Vector3 } from "three" @Injectable({ providedIn: "root" }) export class ThreeCameraService { static VIEW_ANGLE = 45 static NEAR = 50 static FAR = 200_000 //TODO optimize renderer for far objects camera: PerspectiveCamera init(containerWidth: number, containerHeight: number) { const aspect = containerWidth / containerHeight this.camera = new PerspectiveCamera(ThreeCameraService.VIEW_ANGLE, aspect, ThreeCameraService.NEAR, ThreeCameraService.FAR) this.setPosition(new Vector3(0, 300, 1000)) } setPosition(position: Vector3) { this.camera.position.set(position.x, position.y, position.z) this.camera.lookAt(0, 0, 0) } } |