20#ifndef LIBREPCB_CORE_POLYGON_H
21#define LIBREPCB_CORE_POLYGON_H
26#include "../serialization/serializableobjectlist.h"
27#include "../types/layer.h"
28#include "../types/length.h"
96 bool operator==(const
Polygon& rhs) const noexcept;
97 bool operator!=(const
Polygon& rhs) const noexcept {
return !(*
this == rhs); }
114 static constexpr const char*
tagname =
"polygon";
The Layer class provides all supported geometry layers.
Definition: layer.h:40
The Path class represents a list of vertices connected by straight lines or circular arc segments.
Definition: path.h:58
The Polygon class.
Definition: polygon.h:45
bool setLineWidth(const UnsignedLength &width) noexcept
Definition: polygon.cpp:104
bool isFilled() const noexcept
Definition: polygon.h:74
Signal< Polygon, Event > onEdited
Definition: polygon.h:58
~Polygon() noexcept
Definition: polygon.cpp:75
const Path & getPath() const noexcept
Definition: polygon.h:76
UnsignedLength mLineWidth
Definition: polygon.h:103
Uuid mUuid
Definition: polygon.h:101
Event
Definition: polygon.h:50
bool mIsGrabArea
Definition: polygon.h:105
const Layer & getLayer() const noexcept
Definition: polygon.h:72
bool mIsFilled
Definition: polygon.h:104
bool setPath(const Path &path) noexcept
Definition: polygon.cpp:134
bool setIsGrabArea(bool isGrabArea) noexcept
Definition: polygon.cpp:124
Slot< Polygon, Event > OnEditedSlot
Definition: polygon.h:59
bool setLayer(const Layer &layer) noexcept
Definition: polygon.cpp:94
const UnsignedLength & getLineWidth() const noexcept
Definition: polygon.h:73
Polygon & operator=(const Polygon &rhs) noexcept
Definition: polygon.cpp:174
void serialize(SExpression &root) const
Serialize into librepcb::SExpression node.
Definition: polygon.cpp:148
const Uuid & getUuid() const noexcept
Definition: polygon.h:71
const Layer * mLayer
Definition: polygon.h:102
Path getPathForRendering() const noexcept
Definition: polygon.cpp:82
Path mPath
Definition: polygon.h:106
bool setIsFilled(bool isFilled) noexcept
Definition: polygon.cpp:114
bool isGrabArea() const noexcept
Definition: polygon.h:75
The SExpression class.
Definition: sexpression.h:69
The Signal class is used to emit signals on non-QObject derived classes.
Definition: signalslot.h:65
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition: uuid.h:58
Definition: occmodel.cpp:77
type_safe::constrained_type< Length, UnsignedLengthConstraint, UnsignedLengthVerifier > UnsignedLength
Definition: length.h:696
Definition: polygon.h:113
static constexpr const char * tagname
Definition: polygon.h:114