如何改善图像的边缘显示效果,例如在CAD软件中

时间:2018-10-21 12:12:38

标签: javascript three.js edges

我正在尝试在ThreeJS中实现CAD外观- 注意功能概述:

我正在使用.OBJ加载程序将对象加载到我的ThreeJS场景中:

我希望具有相同类型的边缘显示,或者至少总体上类似于我的CAD软件。不幸的是,由于它是一个非常复杂的模型并且可以高精度导出,因此使用EdgesHelpers或Wireframe显示会返回:

由于CAD知道每个单独的特征,并且能够准确地绘制这些线,因此结果是可以预期的。 OBJ只知道网格的构造方式,并且只能这样做,因为它只能像线框一样显示边缘-这是其中一个特征的特写:

使用两个单独缩放的EdgesHelpers并使用我的材质的PolygonOffsets可以产生令人满意的结果,但是放大时线条确实会出现毛刺,这非常浪费资源并且缺少某些功能-看我我想出了

我欢迎所有有关如何解决此问题的建议。我的想法之一是分别计算每个面的法线之间的角度,然后仅在角度大于例如20°的情况下显示两个面之间的边缘。

0 个答案:

没有答案