【发布时间】:2019-01-10 11:26:32
【问题描述】:
我正在使用 qt creator 创建一个应用程序,它将 .off 文件读取为 CGAL::Linear_cell_complex_for_combinatorial_map 并预览它我想对读取的网格进行操作,例如删除边缘并恢复它。
它显示以下错误: 在抛出 'CGAL::Assertion_exception' 的实例后调用终止 什么():CGAL 错误:断言违规! 表达式:is_insertable_cell_1_in_cell_2(adart1, adart2)
我搜索了它,但我找不到有用的解决方案
QWidget* viewer ;
std::string filename;
Dart_handle dh3;
LCC_3 lcc;
QMainWindow qWin;
CGAL::DefaultColorFunctorLCC fcolor;
void MainWindow ::insertCell()
{
dh3=lcc.insert_cell_1_in_cell_2(lcc.darts().begin(), lcc.darts().end());
CGAL_assertion( lcc.is_valid() );
lcc.display_characteristics(std::cout) << ", valid=" <<
lcc.is_valid() << std::endl;
setCentralWidget( new CGAL::SimpleLCCViewerQt<LCC_3, CGAL::DefaultColorFunctorLCC>(&qWin ,
lcc,
"Basic LCC Viewer",
false,
fcolor ) );
show();
}
void MainWindow ::removeCell()
{
CGAL_assertion( (lcc.is_removable<2>(dh3)) );
lcc.remove_cell<1>(dh3);
CGAL_assertion( lcc.is_valid() );
lcc.display_characteristics(std::cout) << ", valid="
<< lcc.is_valid() << std::endl;
}
有什么帮助吗?或用于简化网格或删除顶点、边或面的有用链接? 感谢您的帮助
【问题讨论】:
标签: c++ qt-creator combinatorics cgal