sead
Loading...
Searching...
No Matches
sead::OrthoProjection Class Reference

#include <seadProjection.h>

Inherits sead::Projection.

Public Member Functions

 OrthoProjection ()
 OrthoProjection (f32 _near, f32 _far, f32 top, f32 bottom, f32 left, f32 right)
 OrthoProjection (f32 _near, f32 _far, const BoundBox2f &box)
 OrthoProjection (f32 _near, f32 _far, const Viewport &vp)
 ~OrthoProjection () override
void setNear (f32 near)
void setFar (f32 far)
void setTop (f32 top)
void setBottom (f32 bottom)
void setLeft (f32 left)
void setRight (f32 right)
void setTBLR (f32 top, f32 bottom, f32 left, f32 right)
void setByViewport (const Viewport &vp)
void setBoundBox (const BoundBox2f &box)
void createDividedProjection (OrthoProjection *dst, s32 partno_x, s32 partno_y, s32 divnum_x, s32 divnum_y) const
f32 getNear () const
f32 getFar () const
f32 getTop () const
f32 getBottom () const
f32 getLeft () const
f32 getRight () const
Type getProjectionType () const override
void doUpdateMatrix (Matrix44f *dst) const override
void doScreenPosToCameraPosTo (Vector3f *dst, const Vector3f &screen_pos) const override
Public Member Functions inherited from sead::Projection
 Projection ()
virtual ~Projection ()
void setDirty ()
void setDeviceDirty ()
void setDevicePosture (Graphics::DevicePosture pose)
const Matrix44fgetProjectionMatrix () const
Matrix44fgetProjectionMatrixMutable ()
const Matrix44fgetDeviceProjectionMatrix () const
void cameraPosToScreenPos (Vector3f *dst, const Vector3f &camera_pos) const
void screenPosToCameraPos (Vector3f *dst, const Vector3f &screen_pos) const
void screenPosToCameraPos (Vector3f *dst, const Vector2f &screen_pos) const
void project (Vector2f *dst, const Vector3f &camera_pos, const Viewport &viewport) const
void unproject (Vector3f *dst, const Vector3f &screen_pos, const Camera &camera) const
void unprojectRay (Ray< Vector3f > *dst, const Vector3f &screen_pos, const Camera &camera) const
virtual void doUpdateDeviceMatrix (Matrix44f *dst, const Matrix44f &src, Graphics::DevicePosture pose) const

Private Attributes

f32 mNear
f32 mFar
f32 mTop
f32 mBottom
f32 mLeft
f32 mRight

Additional Inherited Members

Public Types inherited from sead::Projection
enum  Type { cType_Perspective = 0 , cType_Ortho = 1 , cType_Undefined = 2 }

Constructor & Destructor Documentation

◆ OrthoProjection() [1/4]

sead::OrthoProjection::OrthoProjection ( )

◆ OrthoProjection() [2/4]

sead::OrthoProjection::OrthoProjection ( f32 _near,
f32 _far,
f32 top,
f32 bottom,
f32 left,
f32 right )

◆ OrthoProjection() [3/4]

sead::OrthoProjection::OrthoProjection ( f32 _near,
f32 _far,
const BoundBox2f & box )

◆ OrthoProjection() [4/4]

sead::OrthoProjection::OrthoProjection ( f32 _near,
f32 _far,
const Viewport & vp )

◆ ~OrthoProjection()

sead::OrthoProjection::~OrthoProjection ( )
override

Member Function Documentation

◆ setNear()

void sead::OrthoProjection::setNear ( f32 near)
inline

◆ setFar()

void sead::OrthoProjection::setFar ( f32 far)
inline

◆ setTop()

void sead::OrthoProjection::setTop ( f32 top)
inline

◆ setBottom()

void sead::OrthoProjection::setBottom ( f32 bottom)
inline

◆ setLeft()

void sead::OrthoProjection::setLeft ( f32 left)
inline

◆ setRight()

void sead::OrthoProjection::setRight ( f32 right)
inline

◆ setTBLR()

void sead::OrthoProjection::setTBLR ( f32 top,
f32 bottom,
f32 left,
f32 right )

◆ setByViewport()

void sead::OrthoProjection::setByViewport ( const Viewport & vp)

◆ setBoundBox()

void sead::OrthoProjection::setBoundBox ( const BoundBox2f & box)

◆ createDividedProjection()

void sead::OrthoProjection::createDividedProjection ( OrthoProjection * dst,
s32 partno_x,
s32 partno_y,
s32 divnum_x,
s32 divnum_y ) const

◆ getNear()

f32 sead::OrthoProjection::getNear ( ) const
inline

◆ getFar()

f32 sead::OrthoProjection::getFar ( ) const
inline

◆ getTop()

f32 sead::OrthoProjection::getTop ( ) const
inline

◆ getBottom()

f32 sead::OrthoProjection::getBottom ( ) const
inline

◆ getLeft()

f32 sead::OrthoProjection::getLeft ( ) const
inline

◆ getRight()

f32 sead::OrthoProjection::getRight ( ) const
inline

◆ getProjectionType()

Type sead::OrthoProjection::getProjectionType ( ) const
inlineoverridevirtual

Implements sead::Projection.

◆ doUpdateMatrix()

void sead::OrthoProjection::doUpdateMatrix ( Matrix44f * dst) const
overridevirtual

Implements sead::Projection.

◆ doScreenPosToCameraPosTo()

void sead::OrthoProjection::doScreenPosToCameraPosTo ( Vector3f * dst,
const Vector3f & screen_pos ) const
overridevirtual

Implements sead::Projection.

Member Data Documentation

◆ mNear

f32 sead::OrthoProjection::mNear
private

◆ mFar

f32 sead::OrthoProjection::mFar
private

◆ mTop

f32 sead::OrthoProjection::mTop
private

◆ mBottom

f32 sead::OrthoProjection::mBottom
private

◆ mLeft

f32 sead::OrthoProjection::mLeft
private

◆ mRight

f32 sead::OrthoProjection::mRight
private