클래스선언.html

CameraRenderer 로 그릴 객체들을 바라보는 카메라 객체(camera object)를 정의합니다.

Constructor

<aside>

Camera()

Camera 를 생성합니다.

</aside>

Instance methods

<aside>

Camera.setViewport()

Viewport 는 canvas 에서 카메라가 사용할 사각형 영역을 의미합니다.

</aside>

<aside>

Camera.getViewport()

Viewport 를 나타내는 Vector4 를 얻습니다.

</aside>

<aside>

Camera.toString()

Camera 를 나타내는 string 을 얻습니다.

</aside>

<aside>

Camera.worldToScreen()

월드 좌표(world coordinate)를 스크린 좌표(screen coordinate)로 변환합니다.

</aside>

<aside>

Camera.screenToWorld()

스크린 좌표(screen coordinate)를 월드 좌표(world coordinate)로 변환합니다.

</aside>

<aside>

Camera.view()

뷰 행렬(view matrix)를 나타내는 Matrix4x4 를 out 에 담아 돌려줍니다.

</aside>

<aside>

Camera.perspective()

원근투영 행렬(Perspective matrix)를 나타내는 Matrix4x4 를 out 에 담아 돌려줍니다.

</aside>

<aside>

Camera.clipToNDC()

클립 좌표(clip coordinate)를 NDC 좌표로 변환한 결과를 out 에 담아 돌려줍니다.

</aside>

<aside>

Camera.ndcToViewport()

NDC 좌표에 카메라의 해상도(width, height)를 곱해준 결과를 out 에 담아 돌려줍니다.

</aside>

<aside>

Camera.clipToViewport()

클립 좌표(clip coordinate)를 NDC 좌표로 변환 후, 카메라의 해상도(width, height)를 곱해준 결과를 out 에 담아 돌려줍니다.

</aside>

<aside>

Camera.clipLine()

인자로 받은 선분 $\overrightarrow{from\;to}$ 를 카메라의 영역에 맞도록 잘라줍니다. 결과는 $\vec{from}, \vec{to}$ 에 저장되며 복사본을 생성하지 않습니다.

</aside>

Instance properties

<aside>

Camera.fov, Camera.zNear, Camera.zFar

화각(Field Of View), 근평면의 $z$ 값, 원평면의 $z$ 값을 나타내는 number 를 얻습니다.

</aside>

<aside>

Camera.sx, Camera.sy, Camera.width, Camera.height

뷰포트(viewport)의 영역을 지정하는 number 를 얻습니다.

</aside>