Geometrize 1.0
C++ library for geometrizing images into geometric primitives
quadraticbezier.h
Go to the documentation of this file.
1#pragma once
2
3#include <cstdint>
4#include <memory>
5
6#include "shape.h"
7
8namespace geometrize
9{
10
15class QuadraticBezier : public Shape
16{
17public:
18 QuadraticBezier() = default;
19 QuadraticBezier(float cx, float cy, float x1, float y1, float x2, float y2);
20
21 virtual std::shared_ptr<geometrize::Shape> clone() const override;
22 virtual geometrize::ShapeTypes getType() const override;
23
24 float m_cx;
25 float m_cy;
26 float m_x1;
27 float m_y1;
28 float m_x2;
29 float m_y2;
30};
31
32}
The QuadraticBezier class represents a quadratic bezier curve.
Definition: quadraticbezier.h:16
float m_x1
First x-coordinate.
Definition: quadraticbezier.h:26
virtual geometrize::ShapeTypes getType() const override
getType Gets the ShapeType of the shape.
Definition: quadraticbezier.cpp:35
float m_y2
Second y-coordinate.
Definition: quadraticbezier.h:29
float m_cy
Control point y-coordinate.
Definition: quadraticbezier.h:25
float m_cx
Control point x-coordinate.
Definition: quadraticbezier.h:24
float m_x2
Second x-coordinate.
Definition: quadraticbezier.h:28
virtual std::shared_ptr< geometrize::Shape > clone() const override
clone Clones the shape, a virtual copy constructor.
Definition: quadraticbezier.cpp:20
float m_y1
First y-coordinate.
Definition: quadraticbezier.h:27
Definition: shape.h:18
Definition: bitmap.cpp:8
ShapeTypes
The ShapeTypes enum specifies the types of shapes that can be used. These can be combined to produce ...
Definition: shapetypes.h:17