OpenSubdiv.OPENSUBDIV_VERSION.Bfr
OpenSubdiv.OPENSUBDIV_VERSION.Far
OpenSubdiv.OPENSUBDIV_VERSION.Osd
OpenSubdiv.OPENSUBDIV_VERSION.Sdc
OpenSubdiv.OPENSUBDIV_VERSION.Vtr

OpenSubdiv.OPENSUBDIV_VERSION.Bfr.SurfaceFactory

概述

OpenSubdiv.OPENSUBDIV_VERSION.Bfr.SurfaceFactory是OpenSubdiv库中的一个类,用于创建带有Bézier曲面附加属性的网格。

接口

OpenSubdiv.OPENSUBDIV_VERSION.Bfr.SurfaceFactory提供以下接口:

create(mesh, options)

创建一个新的网格,该网格包含了Bézier曲面的附加属性。

  • 参数

    • mesh:要创建的网格。
    • options:一个可选的参数对象,包含以下属性:
      • levels:要创建的网格的细分级别。默认为1。
      • creaseVertices:是否包含crease顶点。默认为false。
  • 返回值:生成的网格对象。

getHierarchy()

返回网格的细分层次结构。

  • 返回值:细分层次结构对象。

示例

var mesh = new Bfr.Mesh();

// 添加顶点和边
mesh.addVertex(/* ... */);
mesh.addVertex(/* ... */);
mesh.addEdge(/* ... */);
mesh.addEdge(/* ... */);

// 添加面
var face1 = mesh.addFace(/* ... */);
var face2 = mesh.addFace(/* ... */);

// 创建SurfaceFactory并使用
var surfaceFactory = new OpenSubdiv.OPENSUBDIV_VERSION.Bfr.SurfaceFactory();
var subdividedMesh = surfaceFactory.create(mesh, { levels: 3 });