a3js API Documentation - v0.0.34
    Preparing search index...

    Interface View

    Canvasなどの3D表示を担当するクラスをまとめるための インターフェース。基本、表示がメインのクラスだが、 初心者用であることを考えてコンストラクタ内で必ず 空のSceneとCameraも生成して持っておき、すぐに 表示可能な状態で生成されるようにする。このSceneは、 必要な時に交換することができ、シーンの切り替えができる。 将来的にはTHREE.StereoCameraとかWebXRとか実装したい ところ。

    細かいこととして、これを実装するクラスでは、Cameraは Sceneに配置した上で、座標(0,0,3)の場所に配置し、 (0,0,-1)の方向を向かせて、上は(0,1,0)にするように統一する。 ViewBaseクラスも参照。

    interface View {
        camera: Camera;
        controller: Controller;
        scene: Scene;
        cameraToScreen(loc: Vec3): { x: number; y: number };
        replaceScene(newScene: Scene): Scene;
        screenToCamera(x: number, y: number, depth: number): Vec3;
        screenToWorld(x: number, y: number, depth: number): Vec3;
        setController(controller: Controller): void;
        waitForRender(): Promise<number>;
        worldToScreen(loc: Vec3): { x: number; y: number };
    }

    Implemented by

    Index

    Properties

    camera: Camera
    controller: Controller
    scene: Scene

    Methods

    • Parameters

      • x: number
      • y: number
      • depth: number

      Returns Vec3

    • Parameters

      • x: number
      • y: number
      • depth: number

      Returns Vec3