CCanvas3D
CCanvas3D
CCanvas3D是一个用于在图表上简化3D对象创建和可视化的类。
描述
CCanvas3D以动态3D图形的形式大幅简化了大量数据的创建和可视化。CCanvas3D类包含管理相机和光线的方法,以及提供了用于创建图形资源的资源管理器 纹理、着色器、顶点缓冲区、索引和着色器参数。
此外,程序库还包括场景基对象的类,比如盒子,用户数据上的三维表面或任意网格。
显卡应支持DX 11和Shader Model 5.0,以便使函数正常工作。
声明
class CCanvas标题
#include <Canvas\Canvas.mqh>继承架构
CCanvas3D
按组划分类函数
| 创建/删除 | 描述 |
|---|---|
| 创建 | 创建用于渲染3D场景而无需绑定到图表对象的图形资源。 |
| Attach | 从OBJ_BITMAP_LABEL对象获得图形资源并将其附加到CCanvas类的实例。 |
| ObjectAdd | 将对象添加到3D场景以进行后续渲染。 |
| Destroy | 破坏图形资源并发布图形3D环境。 |
| 光线 | |
| AmbientColorSet | 设置环境全方位光线的颜色和强度。 |
| AmbientColorGet | 获取环境全方位光线的颜色和强度。 |
| LightDirectionSet | 设置定向光源的方向。 |
| LightDirectionGet | 获取定向光源的方向。 |
| LightColorSet | 设置定向光源的颜色和强度。 |
| LightColorGet | 获取定向光源的颜色和强度。 |
| 相机 | |
| ProjectionMatrixSet | 计算并设置3D坐标投影矩阵到2D帧。 |
| ProjectionMatrixGet | 获取3D坐标投影矩阵到2D帧。 |
| ViewMatrixSet | 设置3D场景视图矩阵。 |
| ViewMatrixGet | 返回3D场景视图矩阵。 |
| ViewPositionSet | 设置3D场景的视点。 |
| ViewRotationSet | 设置在3D场景中注视的方向。 |
| ViewTargetSet | 设置注视点的坐标。 |
| ViewUpDirectionSet | 在3D空间中设置上边框的方向。 |
| 渲染 | |
| Render | 渲染画帧内部缓冲区中的所有场景对象,以供后续显示。 |
| RenderBegin | 准备用于渲染新画帧的图形环境。 |
| RenderEnd | 将已渲染的画帧复制到内部缓冲区,并在必要时更新图表图像。 |
| 获取资源 | |
| DXContext | 获取图形环境句柄。 |
| DXDispatcher | 获取资源分配器句柄。 |
| InputScene | 获取指向场景参数缓冲区的指针。 |