在 Teigha PRC 中,OdPrcHighlyCompressed3dTess 可以解压缩为 OdPrc3dTess。
操作步骤:
- 选择“解压缩曲面细分”。
- 指定曲面细分选项。
- 点击“确定”。
文件中所有的 OdPrcHighlyCompressed3dTess 曲面细分都将被 OdPrc3dTess 曲面细分替换。
曲面细分解压缩也可以通过以下函数完成:
static void OdPrcFile::decompressCompressed3dTess(OdPrcFilePtr& pFile, const Decompress3dTessParams & params);
解压缩选项
- 存储法线 — 确定是否应将法线存储在生成的 OdPrc3dTess 中。如果设置为 false,则将折痕角值写入文件,法线将根据折痕角值稍后计算。最好将此值设置为 false,因为它会使生成的文件大小更小。如果曲面细分已经计算了法线,它们无论如何都会被存储。
- 覆盖折痕角 — 覆盖文件中所有 OdPrcHighlyCompressed3dTess 曲面细分的折痕角,并分配指定的折痕角值。
- 折痕角值 — 范围为 [0. 到 90.] 度的双精度值,仅当“覆盖折痕角”设置为 true 时使用。
关于折痕角
折痕角是两个面之间的阈值角:
- 如果面角 >= 折痕角,则使用平面着色。
- 如果面角 < 折痕角,则使用平滑着色。
在重新计算点处的法线时,会计算两个相邻三角形之间的角度并与折痕角进行比较。如果它低于折痕角,则法线将在此点由两个三角形共享;否则,将存在两个不同的法线。
例如,0.5 弧度的折痕角意味着如果两个相邻多边形面的几何法线形成的角度小于 0.5 弧度,则它们之间的边将进行平滑着色。否则,这些面将显示为多面体。折痕角必须大于或等于 0.0。