virtual bool accept(CBsimplex* s) const { if (!is_edge(s)) // reject if non-edge return false; Bedge* e = (Bedge*)s; if (e->sil_stamp() == _stamp) // reject if previously checked return 0; e->set_sil_stamp(_stamp); // mark as checked this frame if (_skip_secondary && e->is_secondary()) // reject secondary edges as needed return false; return e->is_sil(); // accept if silhouette }