C# Class CSharpGL.PickableRenderer

支持"拾取"的渲染器
Inheritance: Renderer, IColorCodedPicking
Exibir arquivo Open project: bitzhuwei/CSharpGL Class Usage Examples

Private Properties

Property Type Description

Public Methods

Method Description
GetPickedGeometry ( RenderEventArgs arg, uint stageVertexId, int x, int y ) : PickedGeometry

GetVertexCount ( ) : uint

MovePositions ( System.Point differenceOnScreen, CSharpGL.mat4 viewMatrix, CSharpGL.mat4 projectionMatrix, vec4 viewport ) : void

Move vertexes' position accroding to difference on screen.

根据differenceOnScreen来修改指定索引处的顶点位置。

MovePositions ( System.Point differenceOnScreen, CSharpGL.mat4 viewMatrix, CSharpGL.mat4 projectionMatrix, vec4 viewport, IEnumerable positionIndexes ) : void

Move vertexes' position accroding to difference on screen.

根据differenceOnScreen来修改指定索引处的顶点位置。

PickableRenderer ( IBufferable model, ShaderCode shaderCodes, AttributeMap attributeMap, string positionNameInIBufferable ) : System.ComponentModel

支持"拾取"的渲染器

Render4Picking ( RenderEventArgs arg ) : void

Protected Methods

Method Description
DoInitialize ( ) : void

DoRender ( RenderEventArgs arg ) : void

Method Details

DoInitialize() protected method

protected DoInitialize ( ) : void
return void

DoRender() protected method

protected DoRender ( RenderEventArgs arg ) : void
arg RenderEventArgs
return void

GetPickedGeometry() public method

public GetPickedGeometry ( RenderEventArgs arg, uint stageVertexId, int x, int y ) : PickedGeometry
arg RenderEventArgs
stageVertexId uint
x int mouse position(Left Down is (0, 0)).
y int mouse position(Left Down is (0, 0)).
return PickedGeometry

GetVertexCount() public method

public GetVertexCount ( ) : uint
return uint

MovePositions() public method

Move vertexes' position accroding to difference on screen.

根据differenceOnScreen来修改指定索引处的顶点位置。

public MovePositions ( System.Point differenceOnScreen, CSharpGL.mat4 viewMatrix, CSharpGL.mat4 projectionMatrix, vec4 viewport ) : void
differenceOnScreen System.Point
viewMatrix CSharpGL.mat4
projectionMatrix CSharpGL.mat4
viewport vec4
return void

MovePositions() public method

Move vertexes' position accroding to difference on screen.

根据differenceOnScreen来修改指定索引处的顶点位置。

public MovePositions ( System.Point differenceOnScreen, CSharpGL.mat4 viewMatrix, CSharpGL.mat4 projectionMatrix, vec4 viewport, IEnumerable positionIndexes ) : void
differenceOnScreen System.Point
viewMatrix CSharpGL.mat4
projectionMatrix CSharpGL.mat4
viewport vec4
positionIndexes IEnumerable
return void

PickableRenderer() public method

支持"拾取"的渲染器
public PickableRenderer ( IBufferable model, ShaderCode shaderCodes, AttributeMap attributeMap, string positionNameInIBufferable ) : System.ComponentModel
model IBufferable 一种渲染方式
shaderCodes ShaderCode 各种类型的shader代码
attributeMap AttributeMap 关联中的属性
positionNameInIBufferable string 描述顶点位置信息的buffer的名字
return System.ComponentModel

Render4Picking() public method

public Render4Picking ( RenderEventArgs arg ) : void
arg RenderEventArgs
return void