Autodesk.Revit.DB.DirectContext3D.VertexBuffer
概述
Autodesk.Revit.DB.DirectContext3D.VertexBuffer
是用于直接绘制三维图形的 Revit API 类。这个类代表一个顶点缓存,包含用于绘制单个几何体的顶点数据。在使用 DirectContext3D 绘图接口时,必须使用 VertexBuffer
类来存储顶点数据。
构造函数
构造函数 |
描述 |
VertexBuffer(Context3D context, int vertexCount, VertexFormat format) |
创建一个具有给定顶点数和格式的新顶点缓存。 |
参数
context
:要与顶点缓存关联的 Context3D
对象。
vertexCount
:顶点缓存中的顶点数。
format
:顶点数据的格式。
属性
属性 |
描述 |
Context3D |
与当前顶点缓存关联的 Context3D 对象。 |
Count |
顶点缓存中的顶点数。 |
Format |
顶点数据的格式。 |
方法
方法 |
描述 |
GetVertexBufferBinding() |
返回 VertexBufferBinding 对象,表示使用当前 VertexBuffer 的绑定状态。 |
SetData(Array data) |
将 Array 中的数据写入当前的 VertexBuffer 。 |
SetData<T>(IList<T> data) |
将 IList<T> 中的数据写入当前的 VertexBuffer 。 |
SetData(IntPtr data, int byteCount) |
将指向缓存数据的指针写入当前的 VertexBuffer 。 |
Dispose() |
释放当前的 VertexBuffer 。 |
示例
VertexBuffer vertexBuffer = new VertexBuffer(context, 6, VertexFormat.XYZ);
float[] vertices = new float[] { 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1 };
vertexBuffer.SetData(vertices);
VertexBufferBinding binding = vertexBuffer.GetVertexBufferBinding();
引用
- Autodesk.Revit.DB.DirectContext3D
- Autodesk.Revit.DB.DirectContext3D.Context3D
- Autodesk.Revit.DB.DirectContext3D.VertexFormat
- Autodesk.Revit.DB.DirectContext3D.VertexBufferBinding