0

我这样称呼IGLtrim_with_solid

#include <igl/copyleft/cgal/trim_with_solid.h>

// Input
Eigen::MatrixX3f m_VA;
Eigen::MatrixX3i m_FA;
Eigen::MatrixX3f m_VB;
Eigen::MatrixX3i m_FB;

// Output
Eigen::MatrixX3f m_V;
Eigen::MatrixX3i m_F;
Eigen::Matrix<bool, Eigen::Dynamic, 1> m_D;
Eigen::VectorXi m_J;

// Fill out input matrices ...

igl::copyleft::cgal::trim_with_solid(m_VA, m_FA, m_VB, m_FB, m_V, m_F, m_D, m_J);

错误

但我收到这样的例外:

输入面组件包含退化三角形

前置条件异常表达式:!k.is_degenerate_3_object()

问题

  • 我打电话trim_with_solid正确吗?

  • 据我记得,我的输入网格没有退化的面。但是,如果他们这样做了,IGL 是否有任何工具来检测和删除退化的方面?谢谢!

截图

截屏

截图另一个

4

1 回答 1

0

实际上,输B入网格 ie VB/FB被弄乱了并且包含退化的三角形多边形。修复B网格后,错误得到解决。

于 2020-11-16T05:29:01.043 回答