C# 클래스 CSharpGL.glm

파일 보기 프로젝트 열기: bitzhuwei/CSharpGL

공개 메소드들

메소드 설명
acos ( float x ) : float

acosh ( float x ) : float

asin ( float x ) : float

asinh ( float x ) : float

atan ( float y_over_x ) : float

atan ( float y, float x ) : float

atanh ( float x ) : float

cos ( float angle ) : float

cosh ( float angle ) : float

degrees ( float radians ) : float

frustum ( float left, float right, float bottom, float top, float nearVal, float farVal ) : CSharpGL.mat4

Creates a frustrum projection matrix.

infinitePerspective ( float fovy, float aspect, float zNear ) : CSharpGL.mat4

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite.

inverse ( CSharpGL.mat2 m ) : CSharpGL.mat2

Gets the inversed matrix.

获取逆矩阵。

inverse ( mat3 m ) : mat3

Gets the inversed matrix.

获取逆矩阵。

inverse ( CSharpGL.mat4 m ) : CSharpGL.mat4

Gets the inversed matrix.

获取逆矩阵。

lookAt ( vec2 eye, vec2 center, bool up ) : mat3

Build a look at view matrix. transform object's coordinate from world's space to camera's space.

lookAt ( vec3 eye, vec3 center, vec3 up ) : CSharpGL.mat4

Build a look at view matrix. transform object's coordinate from world's space to camera's space.

ortho ( float left, float right, float bottom, float top ) : CSharpGL.mat4

Creates a matrix for projecting two-dimensional coordinates onto the screen.

this equals ortho(left, right, bottom, top, -1, 1)

ortho ( float left, float right, float bottom, float top, float zNear, float zFar ) : CSharpGL.mat4

Creates a matrix for an orthographic parallel viewing volume.

perspective ( float fovy, float aspect, float zNear, float zFar ) : CSharpGL.mat4

Creates a perspective transformation matrix.

perspectiveFov ( float fov, float width, float height, float zNear, float zFar ) : CSharpGL.mat4

Builds a perspective projection matrix based on a field of view.

pickMatrix ( vec2 center, vec2 delta, vec4 viewport ) : CSharpGL.mat4

Define a picking region.

project ( vec3 modelPosition, CSharpGL.mat4 view, CSharpGL.mat4 proj, vec4 viewport ) : vec3

Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates.

radians ( float degrees ) : float

rotate ( float angleDegree ) : mat3

rotate ( mat3 m, float angleDegree ) : mat3
rotate ( float angleDegree, vec3 v ) : CSharpGL.mat4

rotate ( CSharpGL.mat4 m, float angleDegree, vec3 v ) : CSharpGL.mat4

Builds a rotation 4 * 4 matrix created from an axis vector and an angle.

scale ( mat3 m, vec2 v ) : mat3

Applies a scale transformation to matrix m by vector v.

scale ( CSharpGL.mat4 m, vec3 v ) : CSharpGL.mat4

Applies a scale transformation to matrix m by vector v.

sin ( float angle ) : float

sinh ( float angle ) : float

tan ( float angle ) : float

tanh ( float angle ) : float

translate ( mat3 m, vec2 v ) : mat3

Applies a translation transformation to matrix m by vector v.

translate ( CSharpGL.mat4 m, vec3 v ) : CSharpGL.mat4

Applies a translation transformation to matrix m by vector v.

transpose ( CSharpGL.mat2 m ) : CSharpGL.mat2

Gets the transposed matrix.

获取转置矩阵。

transpose ( mat3 m ) : mat3

Gets the transposed matrix.

获取转置矩阵。

transpose ( CSharpGL.mat4 m ) : CSharpGL.mat4

Gets the transposed matrix.

获取转置矩阵。

tweakedInfinitePerspective ( float fovy, float aspect, float zNear ) : CSharpGL.mat4

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.

unProject ( vec3 windowPos, CSharpGL.mat4 view, CSharpGL.mat4 proj, vec4 viewport ) : vec3

Map the specified window coordinates (win.x, win.y, win.z) into object coordinates.

메소드 상세

acos() 공개 정적인 메소드

public static acos ( float x ) : float
x float
리턴 float

acosh() 공개 정적인 메소드

public static acosh ( float x ) : float
x float
리턴 float

asin() 공개 정적인 메소드

public static asin ( float x ) : float
x float
리턴 float

asinh() 공개 정적인 메소드

public static asinh ( float x ) : float
x float
리턴 float

atan() 공개 정적인 메소드

public static atan ( float y_over_x ) : float
y_over_x float
리턴 float

atan() 공개 정적인 메소드

public static atan ( float y, float x ) : float
y float
x float
리턴 float

atanh() 공개 정적인 메소드

public static atanh ( float x ) : float
x float
리턴 float

cos() 공개 정적인 메소드

public static cos ( float angle ) : float
angle float
리턴 float

cosh() 공개 정적인 메소드

public static cosh ( float angle ) : float
angle float
리턴 float

degrees() 공개 정적인 메소드

public static degrees ( float radians ) : float
radians float
리턴 float

frustum() 공개 정적인 메소드

Creates a frustrum projection matrix.
public static frustum ( float left, float right, float bottom, float top, float nearVal, float farVal ) : CSharpGL.mat4
left float The left.
right float The right.
bottom float The bottom.
top float The top.
nearVal float The near val.
farVal float The far val.
리턴 CSharpGL.mat4

infinitePerspective() 공개 정적인 메소드

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite.
public static infinitePerspective ( float fovy, float aspect, float zNear ) : CSharpGL.mat4
fovy float The fovy.
aspect float The aspect.
zNear float The z near.
리턴 CSharpGL.mat4

inverse() 공개 정적인 메소드

Gets the inversed matrix.

获取逆矩阵。

public static inverse ( CSharpGL.mat2 m ) : CSharpGL.mat2
m CSharpGL.mat2
리턴 CSharpGL.mat2

inverse() 공개 정적인 메소드

Gets the inversed matrix.

获取逆矩阵。

public static inverse ( mat3 m ) : mat3
m mat3
리턴 mat3

inverse() 공개 정적인 메소드

Gets the inversed matrix.

获取逆矩阵。

public static inverse ( CSharpGL.mat4 m ) : CSharpGL.mat4
m CSharpGL.mat4
리턴 CSharpGL.mat4

lookAt() 공개 정적인 메소드

Build a look at view matrix. transform object's coordinate from world's space to camera's space.
public static lookAt ( vec2 eye, vec2 center, bool up ) : mat3
eye vec2 The eye.
center vec2 The center.
up bool Up.
리턴 mat3

lookAt() 공개 정적인 메소드

Build a look at view matrix. transform object's coordinate from world's space to camera's space.
public static lookAt ( vec3 eye, vec3 center, vec3 up ) : CSharpGL.mat4
eye vec3 The eye.
center vec3 The center.
up vec3 Up.
리턴 CSharpGL.mat4

ortho() 공개 정적인 메소드

Creates a matrix for projecting two-dimensional coordinates onto the screen.

this equals ortho(left, right, bottom, top, -1, 1)

public static ortho ( float left, float right, float bottom, float top ) : CSharpGL.mat4
left float The left.
right float The right.
bottom float The bottom.
top float The top.
리턴 CSharpGL.mat4

ortho() 공개 정적인 메소드

Creates a matrix for an orthographic parallel viewing volume.
public static ortho ( float left, float right, float bottom, float top, float zNear, float zFar ) : CSharpGL.mat4
left float The left.
right float The right.
bottom float The bottom.
top float The top.
zNear float The z near.
zFar float The z far.
리턴 CSharpGL.mat4

perspective() 공개 정적인 메소드

Creates a perspective transformation matrix.
public static perspective ( float fovy, float aspect, float zNear, float zFar ) : CSharpGL.mat4
fovy float The field of view angle, in radians.
aspect float The aspect ratio.
zNear float The near depth clipping plane.
zFar float The far depth clipping plane.
리턴 CSharpGL.mat4

perspectiveFov() 공개 정적인 메소드

Builds a perspective projection matrix based on a field of view.
public static perspectiveFov ( float fov, float width, float height, float zNear, float zFar ) : CSharpGL.mat4
fov float The fov (in radians).
width float The width.
height float The height.
zNear float The z near.
zFar float The z far.
리턴 CSharpGL.mat4

pickMatrix() 공개 정적인 메소드

Define a picking region.
public static pickMatrix ( vec2 center, vec2 delta, vec4 viewport ) : CSharpGL.mat4
center vec2 The center.
delta vec2 The delta.
viewport vec4 The viewport.
리턴 CSharpGL.mat4

project() 공개 정적인 메소드

Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates.
public static project ( vec3 modelPosition, CSharpGL.mat4 view, CSharpGL.mat4 proj, vec4 viewport ) : vec3
modelPosition vec3 The object.
view CSharpGL.mat4 The view.
proj CSharpGL.mat4 The proj.
viewport vec4 The viewport.
리턴 vec3

radians() 공개 정적인 메소드

public static radians ( float degrees ) : float
degrees float
리턴 float

rotate() 공개 정적인 메소드

public static rotate ( float angleDegree ) : mat3
angleDegree float ANgle in Degree.
리턴 mat3

rotate() 공개 정적인 메소드

public static rotate ( mat3 m, float angleDegree ) : mat3
m mat3 The m.
angleDegree float ANgle in Degree.
리턴 mat3

rotate() 공개 정적인 메소드

public static rotate ( float angleDegree, vec3 v ) : CSharpGL.mat4
angleDegree float ANgle in Degree.
v vec3
리턴 CSharpGL.mat4

rotate() 공개 정적인 메소드

Builds a rotation 4 * 4 matrix created from an axis vector and an angle.
public static rotate ( CSharpGL.mat4 m, float angleDegree, vec3 v ) : CSharpGL.mat4
m CSharpGL.mat4 The m.
angleDegree float ANgle in Degree.
v vec3 The v.
리턴 CSharpGL.mat4

scale() 공개 정적인 메소드

Applies a scale transformation to matrix m by vector v.
public static scale ( mat3 m, vec2 v ) : mat3
m mat3 The matrix to transform.
v vec2 The vector to scale by.
리턴 mat3

scale() 공개 정적인 메소드

Applies a scale transformation to matrix m by vector v.
public static scale ( CSharpGL.mat4 m, vec3 v ) : CSharpGL.mat4
m CSharpGL.mat4 The matrix to transform.
v vec3 The vector to scale by.
리턴 CSharpGL.mat4

sin() 공개 정적인 메소드

public static sin ( float angle ) : float
angle float
리턴 float

sinh() 공개 정적인 메소드

public static sinh ( float angle ) : float
angle float
리턴 float

tan() 공개 정적인 메소드

public static tan ( float angle ) : float
angle float
리턴 float

tanh() 공개 정적인 메소드

public static tanh ( float angle ) : float
angle float
리턴 float

translate() 공개 정적인 메소드

Applies a translation transformation to matrix m by vector v.
public static translate ( mat3 m, vec2 v ) : mat3
m mat3 The matrix to transform.
v vec2 The vector to translate by.
리턴 mat3

translate() 공개 정적인 메소드

Applies a translation transformation to matrix m by vector v.
public static translate ( CSharpGL.mat4 m, vec3 v ) : CSharpGL.mat4
m CSharpGL.mat4 The matrix to transform.
v vec3 The vector to translate by.
리턴 CSharpGL.mat4

transpose() 공개 정적인 메소드

Gets the transposed matrix.

获取转置矩阵。

public static transpose ( CSharpGL.mat2 m ) : CSharpGL.mat2
m CSharpGL.mat2
리턴 CSharpGL.mat2

transpose() 공개 정적인 메소드

Gets the transposed matrix.

获取转置矩阵。

public static transpose ( mat3 m ) : mat3
m mat3
리턴 mat3

transpose() 공개 정적인 메소드

Gets the transposed matrix.

获取转置矩阵。

public static transpose ( CSharpGL.mat4 m ) : CSharpGL.mat4
m CSharpGL.mat4
리턴 CSharpGL.mat4

tweakedInfinitePerspective() 공개 정적인 메소드

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.
public static tweakedInfinitePerspective ( float fovy, float aspect, float zNear ) : CSharpGL.mat4
fovy float The fovy.
aspect float The aspect.
zNear float The z near.
리턴 CSharpGL.mat4

unProject() 공개 정적인 메소드

Map the specified window coordinates (win.x, win.y, win.z) into object coordinates.
public static unProject ( vec3 windowPos, CSharpGL.mat4 view, CSharpGL.mat4 proj, vec4 viewport ) : vec3
windowPos vec3 The win.
view CSharpGL.mat4 The view.
proj CSharpGL.mat4 The proj.
viewport vec4 The viewport.
리턴 vec3