Home Manual Reference Source
import CameraController from 's3js/src/tools/CameraController.js'
public class | source

CameraController

カメラ操作用コントローラー タッチ操作やマウス操作を用いて3DCGシーンのカメラの移動・回転・ズームイン/アウトなどを制御するクラスです。 InputDetect の入力情報をもとに、カメラの移動・回転・距離変更(ズーム)を自動で計算します。

Constructor Summary

Public Constructor
public

CameraControllerのインスタンスを生成します。 マウス/タッチ用の入力管理や、各種移動パラメータも初期化します。

Member Summary

Public Members
public

コントローラが管理・操作するカメラインスタンス

public

mouse: InputDetect

タッチ・マウス入力管理オブジェクト

public

ズーム時の移動量の係数

public

カメラ回転時の角度変更係数(度/ピクセル)

public

カメラ移動時の移動量の係数(ピクセル単位から変換)

Method Summary

Public Methods
public

現在のカメラを取得し、入力に基づく移動・回転・ズームなどを反映して返します。

public

setCamera(camera: S3Camera)

操作対象となるカメラをセットします(cloneで複製して保持)。

public

setCanvas(element: HTMLElement)

カメラコントローラで操作するcanvas要素を登録し、入力イベントを設定します。

Public Constructors

public constructor() source

CameraControllerのインスタンスを生成します。 マウス/タッチ用の入力管理や、各種移動パラメータも初期化します。

Public Members

public camera: S3Camera source

コントローラが管理・操作するカメラインスタンス

public mouse: InputDetect source

タッチ・マウス入力管理オブジェクト

public moveDistance: number source

ズーム時の移動量の係数

public moveRotate: number source

カメラ回転時の角度変更係数(度/ピクセル)

public moveTranslateRelative: number source

カメラ移動時の移動量の係数(ピクセル単位から変換)

Public Methods

public getCamera(): S3Camera source

現在のカメラを取得し、入力に基づく移動・回転・ズームなどを反映して返します。

毎フレーム呼び出すことで、ユーザー操作を自動で反映したカメラインスタンスが得られます。

Return:

S3Camera

現在のカメラ状態

public setCamera(camera: S3Camera) source

操作対象となるカメラをセットします(cloneで複製して保持)。

Params:

NameTypeAttributeDescription
camera S3Camera

操作対象のカメラ

public setCanvas(element: HTMLElement) source

カメラコントローラで操作するcanvas要素を登録し、入力イベントを設定します。

Params:

NameTypeAttributeDescription
element HTMLElement

対象となるcanvas要素など