File tree Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Expand file tree Collapse file tree 1 file changed +9
-0
lines changed Original file line number Diff line number Diff line change 33#include < memory>
44#include < QThread>
55
6+ #include " ManifoldGeometry.h"
67#include " core/Tree.h"
78#include " geometry/GeometryEvaluator.h"
89#include " core/progress.h"
@@ -36,6 +37,14 @@ void CGALWorker::work()
3637 try {
3738 GeometryEvaluator evaluator (*this ->tree );
3839 root_geom = evaluator.evaluateGeometry (*this ->tree ->root (), true );
40+
41+ if (auto manifold = std::dynamic_pointer_cast<const ManifoldGeometry>(root_geom)) {
42+ // calling status forces evaluation
43+ // we should complete evaluation within the worker thread, so computation
44+ // will not block the GUI.
45+ if (manifold->getManifold ().Status () != manifold::Manifold::Error::NoError)
46+ LOG (message_group::Error, " Rendering cancelled due to unknown manifold error." );
47+ }
3948 } catch (const ProgressCancelException& e) {
4049 LOG (" Rendering cancelled." );
4150 } catch (const HardWarningException& e) {
You can’t perform that action at this time.
0 commit comments