CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
GridShape.hpp
Go to the documentation of this file.
1//
2// CeresEngine - A game development framework
3//
4// Created by Rogiel Sulzbach.
5// Copyright (c) 2018-2022 Rogiel Sulzbach. All rights reserved.
6//
7
8#pragma once
9
10
11#include "Edge.hpp"
12#include "LineShape.hpp"
13#include "MergeShape.hpp"
14#include "RepeatShape.hpp"
15#include "ShapeVertex.hpp"
16
18
20 class GridShape {
21 private:
23
25
26 public:
27 using Edges = Impl::Edges;
28
29 using Vertices = Impl::Vertices;
30
36 explicit GridShape(const Vector2& size = {1.0, 1.0}, const Vector2i& segments = {4, 4}, const Vector2i& subSegments = {2, 2}) noexcept;
37
40 };
41
42} // namespace CeresEngine::MeshGenerator
A 2d regular grid.
Definition GridShape.hpp:20
Impl mImpl
Definition GridShape.hpp:24
GridShape(const Vector2 &size={1.0, 1.0}, const Vector2i &segments={4, 4}, const Vector2i &subSegments={2, 2}) noexcept
Vertices vertices() const noexcept
Impl::Vertices Vertices
Definition GridShape.hpp:29
Impl::Edges Edges
Definition GridShape.hpp:27
Repeats the same shape a given number of time at given intervals.
Definition RepeatShape.hpp:18
Definition AnyGenerator.hpp:12
constexpr size_t hash(const T &v)
Generates a hash for the provided type.
Definition Hash.hpp:25