Unravel Engine C++ Reference
Loading...
Searching...
No Matches
grid_shape.cpp
Go to the documentation of this file.
1#include "grid_shape.hpp"
2#include <algorithm>
3using namespace generator;
4
5grid_shape_t::grid_shape_t(const gml::dvec2& size, const gml::ivec2& segments, const gml::ivec2& subSegments) noexcept
6 : mImpl{
7 // Horizontal lines
9 line_shape_t{gml::dvec2{-size[0], -size[1]}, gml::dvec2{size[0], -size[1]}, segments[0] * subSegments[0]},
10 segments[1] < 1 ? 0 : segments[1] + 1,
11 gml::dvec2{0.0, 2.0 * size[1] / std::max(segments[1], 1)}},
12 // Vertical lines
14 line_shape_t{gml::dvec2{-size[0], -size[1]}, gml::dvec2{-size[0], size[1]}, segments[1] * subSegments[1]},
15 segments[0] < 1 ? 0 : segments[0] + 1,
16 gml::dvec2{2.0 * size[0] / std::max(segments[0], 1), 0.0}},
17 }
18{
19 //
20}
21
23{
24 return mImpl.edges();
25}
26
28{
29 return mImpl.vertices();
30}
grid_shape_t(const gml::dvec2 &size={1.0, 1.0}, const gml::ivec2 &segments={4, 4}, const gml::ivec2 &subSegments={2, 2}) noexcept
Definition grid_shape.cpp:5
vertices_t vertices() const noexcept
impl_t::edges_t edges_t
edges_t edges() const noexcept
impl_t::vertices_t vertices_t
const segment_list * segments