Chrysalis - Renderer
Toggle main menu visibility
Loading...
Searching...
No Matches
PatternShapeRendererData.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_PATTERNSHAPERENDERERDATA_H
2
#define CHRYSALIS_PATTERNSHAPERENDERERDATA_H
3
4
#include <unordered_map>
5
#include <CGAL/Constrained_Delaunay_triangulation_2.h>
6
7
#include "CGAL.h"
8
#include "
Layout.h
"
9
#include "
BaseRendererData.h
"
10
#include "
BaseObservableRendererData.h
"
11
#include "PatternSpace.h"
12
#include "observers/PatternShapeObserver.h"
13
14
namespace
Chrysalis
{
15
class
PatternShapeRendererData
:
public
BaseObservableRendererData
<Vertex2f>,
public
PatternShapeObserver {
16
public
:
17
explicit
PatternShapeRendererData
(BaseObservable<PatternShapeObserver>* observable,
18
const
std::vector<BaseRendererObserver*>& observers);
19
~PatternShapeRendererData
()
override
;
20
21
void
pointAdded
(
const
Outline* outline,
const
Point* point)
override
;
22
23
[[nodiscard]] std::vector<Layout>
layout
()
const
;
24
std::vector<Vertex2f>
vbo
()
override
;
25
size_t
size
()
override
;
26
private
:
27
BaseObservable<PatternShapeObserver>* observable_;
28
std::unordered_map<const Outline*, std::vector<Vertex2f>> data_;
29
std::unordered_map<const Outline*, CGAL::Constrained_Delaunay_triangulation_2<CG::LinearKernel>> triangulation_;
30
};
31
}
32
33
#endif
//CHRYSALIS_PATTERNSHAPERENDERERDATA_H
BaseObservableRendererData.h
BaseRendererData.h
Layout.h
Chrysalis::BaseObservableRendererData< Vertex2f >::BaseObservableRendererData
BaseObservableRendererData(const std::vector< BaseRendererObserver * > &observers)
Definition
BaseObservableRendererData.h:11
Chrysalis::PatternShapeRendererData::vbo
std::vector< Vertex2f > vbo() override
Definition
PatternShapeRendererData.cpp:41
Chrysalis::PatternShapeRendererData::layout
std::vector< Layout > layout() const
Definition
PatternShapeRendererData.cpp:33
Chrysalis::PatternShapeRendererData::PatternShapeRendererData
PatternShapeRendererData(BaseObservable< PatternShapeObserver > *observable, const std::vector< BaseRendererObserver * > &observers)
Definition
PatternShapeRendererData.cpp:7
Chrysalis::PatternShapeRendererData::~PatternShapeRendererData
~PatternShapeRendererData() override
Definition
PatternShapeRendererData.cpp:13
Chrysalis::PatternShapeRendererData::size
size_t size() override
Definition
PatternShapeRendererData.cpp:49
Chrysalis::PatternShapeRendererData::pointAdded
void pointAdded(const Outline *outline, const Point *point) override
Definition
PatternShapeRendererData.cpp:17
Chrysalis
Definition
Area.h:4
renderer
include
PatternShapeRendererData.h
Generated by
1.17.0