Table of Contents

Namespace Hi.Disp

Classes

Bind

Runtime rendering data for each iteration in rendering loop. It manipulates geometry transformation, such as moving, rotatingand scaling. It also deal with color and picking. A bind_t object is generated by rendering in the every beginning of each rendering iteration.

Box3dDispUtil

Utility and Extension of box3d_t.

DelegateFuncDisplayee

A displayee implementation that delegates display functionality to a function.

DispEngine

HiAPI display engine.

DispEngineConfig

Configuration class for display engine.

DispFrameUtil

Utility class for display frame management.

DispList

A combination of IDisplayee and SynList<T>.

DispUtil

Display Utility

Drawing

The most efficient elemental 3D rendering unit.

FramePins

The pin table of one rendered frame, handed to FrameReady together with the pixels. Records are sorted by name and every displayed pin is listed, visible or not; filter with Visible.

FuncDisplayee

A displayee implementation that delegates display functionality to function delegates.

GL

Native opengl functions wrapper.

MatStack

Stack-based Matrix.

MatStack.ItemDisposable

A disposable class that manages push and pop operations on a matrix stack.

Pickable

Picking event handler for rendering. Note that it has to be disposed manually or the object occurs memory leak.

PinDrawing

A named, scale-less anchor. Displaying it draws nothing; the engine reports where the anchor landed in each frame, its depth and whether scene geometry hides it, through FrameReady as a PinRecord of the same name. Use it to place external UI (an HTML element, say) over a 3D point of the canvas.

PopModelMat

Call Pop() for Hi.Disp.Bind.modelMatStack in Display(Bind). This function is only for test purpose. Since the ExpandToBox3d(ref box3d_t) just expand the translation part of the mat to the target box. This function should be use with PushModelMat.

PushModelMat

Call Push() for Hi.Disp.Bind.modelMatStack in Display(Bind). This function is only for test purpose. Since the ExpandToBox3d(ref box3d_t) just expand the translation part of the mat to the target box. This function should be use with PopModelMat.

Segment3dDispUtil

Utilities for converting geometry segments to renderable drawings.

ShowEventPickable

Show pick events in console.

StringDrawing

An IDisplayee to draw string. Multi-line text is supported: ‘\n’ starts a new line.

Tri3dDispUtil

Utility and Extension of tri3d_t.

Vec3dDispUtil

Utility and Extension of vec3d_t.

WrappedDisplayee

A wrapper class for IDisplayee that allows customizing display and bounding box behavior.

Structs

PinRecord

One named anchor of a rendered frame: where it landed on the canvas, how deep, and whether it is visible. Positions are canvas pixels with a top-left origin, y down; they may lie outside the canvas.

Interfaces

IDisplayee

An object which can be displayed in DispEngine.

IGetDispEngine

Interface fo getting DispEngine.

IGetPickable

Get Pickable interface.

IGlContextDirver

Bridge of Native OpenGL Context.

Enums

MvpBoxRelation

Relation between mvpBox and an AABB

PinFlags

Flag bits of a PinRecord.

Stamp

Data scope of the double array for Drawing.

Delegates

Box3dDispUtil.BoxableExpandToBox3dDel

Delegate for expanding a native boxable object to a box3d_t.

DispEngine.FrameReadyDelegate

For FrameReady.

ExpandToBox3dDel

The bound-accumulation hook of a FuncDisplayee: expands dst (a value-typed box3d_t, so by reference).

WrappedExpandToBox3dDel

The bound-accumulation hook of a WrappedDisplayee: expands dst (a value-typed box3d_t, so by reference) for the wrapped displayee.