void CurvMap::get_mid_edge_points(Element* e, double2* pt, int n) { Nurbs** nurbs = this->nurbs; Transformable tran; tran.set_active_element(e); if (toplevel == false) { tran.set_transform(part); e = e->cm->parent; nurbs = e->cm->nurbs; } ctm = *(tran.get_ctm()); double xi_1, xi_2; for (int i = 0; i < n; i++) { xi_1 = ctm.m[0] * pt[i][0] + ctm.t[0]; xi_2 = ctm.m[1] * pt[i][1] + ctm.t[1]; calc_ref_map(e, nurbs, xi_1, xi_2, pt[i]); } }