51#include "MR_rect_tree.hpp"
52#include "MR_cell_cplx.hpp"
53#include "MR_rt_to_cc.hpp"
56typedef mjr::tree15b2d3rT tt_t;
57typedef mjr::MRccT5 cc_t;
58typedef mjr::MR_rt_to_cc<tt_t, cc_t> tc_t;
61tt_t::rrpt_t par_sphere(tt_t::drpt_t xvec) {
62 double u = std::numbers::pi/4 * xvec[0] + std::numbers::pi/4;
63 double v = std::numbers::pi * xvec[1] + std::numbers::pi;
64 return { std::sin(u)*std::cos(v),
65 std::sin(u)*std::sin(v),
76 tree.refine_grid(6, par_sphere);
80 tc_t::construct_geometry_fans(ccplx,
83 {{tc_t::val_src_spc_t::FRANGE, 0},
84 {tc_t::val_src_spc_t::FRANGE, 1},
85 {tc_t::val_src_spc_t::FRANGE, 2}});
86 ccplx.create_named_datasets({
"u",
"v",
"x(u,v)",
"y(u,v)",
"z(u,v)"});
88 ccplx.write_xml_vtk(
"parametric_surface_with_defects-tri.vtu",
"parametric_surface_with_defects-tri");
92 tc_t::construct_geometry_rects(ccplx,
95 {{tc_t::val_src_spc_t::FRANGE, 0},
96 {tc_t::val_src_spc_t::FRANGE, 1},
97 {tc_t::val_src_spc_t::FRANGE, 2}});
98 ccplx.create_named_datasets({
"u",
"v",
"x(u,v)",
"y(u,v)",
"z(u,v)"});
100 ccplx.write_xml_vtk(
"parametric_surface_with_defects-rect.vtu",
"parametric_surface_with_defects-rect");