Geometrize 1.0
C++ library for geometrizing images into geometric primitives
shapetypes.h
Go to the documentation of this file.
1#pragma once
2
3#include <array>
4#include <cstdint>
5#include <string>
6#include <utility>
7#include <vector>
8
9namespace geometrize
10{
11
16enum ShapeTypes : std::uint32_t
17{
21 ELLIPSE = 8U,
23 CIRCLE = 32U,
24 LINE = 64U,
26 POLYLINE = 256U,
27 SHAPE_COUNT = 9U
28};
29
33extern const std::array<ShapeTypes, static_cast<std::size_t>(ShapeTypes::SHAPE_COUNT)> allShapes;
34
38extern const std::vector<std::pair<ShapeTypes, std::string>> shapeTypeNames;
39
40}
Definition: bitmap.cpp:8
const std::vector< std::pair< ShapeTypes, std::string > > shapeTypeNames
shapeTypeNames provides a convenient mapping to names of types of shape (all lower case,...
Definition: shapetypes.cpp:19
ShapeTypes
The ShapeTypes enum specifies the types of shapes that can be used. These can be combined to produce ...
Definition: shapetypes.h:17
@ POLYLINE
Definition: shapetypes.h:26
@ ROTATED_RECTANGLE
Definition: shapetypes.h:19
@ CIRCLE
Definition: shapetypes.h:23
@ TRIANGLE
Definition: shapetypes.h:20
@ ELLIPSE
Definition: shapetypes.h:21
@ RECTANGLE
Definition: shapetypes.h:18
@ QUADRATIC_BEZIER
Definition: shapetypes.h:25
@ SHAPE_COUNT
Definition: shapetypes.h:27
@ LINE
Definition: shapetypes.h:24
@ ROTATED_ELLIPSE
Definition: shapetypes.h:22
const std::array< ShapeTypes, static_cast< std::size_t >(ShapeTypes::SHAPE_COUNT)> allShapes
allShapes is a convenient array of all of the members of ShapeTypes.
Definition: shapetypes.cpp:6