You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I want to compute Power Diagram in my project, and I follow the tutorial in your repos,but when i run this code
"delaunay_->copy_Laguerre_cell_from_Delaunay(i, C, W_);"
i got the Error:
“Abnormal program termination: received signal 11 (SIGSEGV)”
And i notice that when i comment out the code :
"delaunay_->set_weights(weights_vec.data());"
then everything is ok .So i want to know is there anything to pay attention to when set the weight vector?
and i found in function copy_Laguerre_cell_from_Delaunay line 3667
called funtion get_incident_tets(i,W);
in this function and in line 3568
code : t = index_t(v_to_cell_[v]);
running assert geo_debug_assert(i < size());
and then report error
by the way ,my partner found that v_to_cell_ in delaunay_->compute() didn't update for the all time ,because the multiple thread0 is always return ,but when i comment out the return ,it didnt report error, but the result is also wrong. TAT
I want to compute Power Diagram in my project, and I follow the tutorial in your repos,but when i run this code
"delaunay_->copy_Laguerre_cell_from_Delaunay(i, C, W_);"
i got the Error:
“Abnormal program termination: received signal 11 (SIGSEGV)”
And i notice that when i comment out the code :
"delaunay_->set_weights(weights_vec.data());"
then everything is ok .So i want to know is there anything to pay attention to when set the weight vector?
——————————————————————————————————————————————————————————
Here is the code
function(){
using namespace GEO;
GEO::initialize();
Stopwatch Wtot("Total time");
if (InitPara) {
CmdLine::import_arg_group("standard");
CmdLine::import_arg_group("algo");
GEO::CmdLine::import_arg_group("co3ne");
GEO::CmdLine::import_arg_group("pre");
GEO::CmdLine::import_arg_group("post");
GEO::CmdLine::import_arg_group("remesh");
GEO::CmdLine::import_arg_group("opt");
GEO::CmdLine::import_arg_group("tet");
}
GEO::Mesh gm_pts;
mesh_load("sample-10000.xyz", gm_pts); // read 1w points
gm_pts.facets.clear();
PeriodicDelaunay3d::IncidentTetrahedra W_;
SmartPointer delaunay_ = new PeriodicDelaunay3d(false, 1.0);
delaunay_->set_vertices(gm_pts.vertices.nb(), gm_pts.vertices.point_ptr(0));
delaunay_->set_keeps_infinite(true);
GEO::vector weights_vec;
for (auto i = 0; i < gm_pts.vertices.nb(); i++) {
double* p = gm_pts.vertices.point_ptr(i);
weights_vec.push_back(std::abs(p[2]));
}
delaunay_->set_weights(weights_vec.data());
delaunay_->compute();
ConvexCell C;
//delaunay_->copy_Laguerre_cell_from_Delaunay(0, C);
delaunay_->copy_Laguerre_cell_from_Delaunay(0, C, W_);
return;
}
The text was updated successfully, but these errors were encountered: