inline bool is_border(Bsimplex* s) { if (is_face(s)) return false; if (is_edge(s)) return ((Bedge*)s)->is_border(); if (is_vert(s)) return ((Bvert*)s)->is_border(); return false; }
inline Wvec bc2norm(Bsimplex* s, CWvec& bc) { Wvec ret; if (is_face(s)) { ((Bface*)s)->bc2norm_blend(bc, ret); } else if (is_edge(s)) { ret = ((Bedge*)s)->norm(); } else if (is_vert(s)) { ret = ((Bvert*)s)->norm(); } return ret; }
virtual bool accept(CBsimplex* s) const { return is_face(s) && UVdata::has_uv((Bface*)s); }
//******** SOLE JOB ******** virtual bool accept(CBsimplex* s) const { return is_face(s); }