Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void triangle_iterate(
- ct::plot::cairo::plot_2d& plot,
- unsigned long ri,
- unsigned long rn,
- glm::vec2 p0,
- glm::vec2 p1,
- glm::vec2 p2
- ) {
- if (ri >= rn) return;
- plot.line(p0, p1, CT_RGBF(1, 1, 1), 4.f);
- plot.line(p1, p2, CT_RGBF(1, 1, 1), 4.f);
- plot.line(p2, p0, CT_RGBF(1, 1, 1), 4.f);
- glm::vec2 dif_p0 = p1 - p0;
- glm::vec2 dif_p1 = p2 - p1;
- glm::vec2 dif_p2 = p2 - p0;
- float scale = .5f;
- glm::vec2 mid_p0 = p0 + dif_p0 * scale;
- glm::vec2 mid_p1 = p1 + dif_p1 * scale;
- glm::vec2 mid_p2 = p2 - dif_p2 * scale;
- triangle_iterate(plot, ri + 1, rn, p0, mid_p0, mid_p2);
- triangle_iterate(plot, ri + 1, rn, mid_p0, p1, mid_p1);
- }
Advertisement
Add Comment
Please, Sign In to add comment