xcal
基于 C++23 的现代图形渲染引擎
载入中...
搜索中...
未找到
xcal
mobject
objects
polygone.hpp
浏览该文件的文档.
1
#pragma once
2
#include <
xcal/mobject/core/composedmobject.hpp
>
3
#include <
xcal/mobject/core/mobject.hpp
>
4
#include <
xcal/property/position_list.hpp
>
5
6
namespace
xcal::mobject
{
7
8
class
XCAL_API
Polygone
9
:
public
ComposedMObject
<Polygone, BaseTransformableMobject,
10
StrokeableMObject> {
11
XCAL_MOBJECT_TYPE
(
Polygone
)
12
private
:
13
property::PositionList
points_;
14
15
public
:
16
Polygone
() : points_() { register_properties(points_); }
17
template
<
typename
... Args>
18
requires
std::constructible_from<
property::PositionList
, Args...>
19
Polygone
(Args&&... args)
20
: points_(std::make_unique<property::PositionList>(
21
std::forward<Args>(args)...)) {
22
register_properties(points_);
23
points_.
closed
() =
true
;
24
}
25
const
property::PositionList::data_t
&
points
()
const
{
26
return
points_.
positions
();
27
}
28
void
set_points
(
const
property::PositionList::data_t
& points) {
29
points_ = points;
30
}
31
~Polygone
()
override
=
default
;
32
};
33
34
}
// namespace xcal::mobject
xcal::mobject::ComposedMObject
Definition
composedmobject.hpp:122
xcal::mobject::Polygone
Definition
polygone.hpp:10
xcal::mobject::Polygone::Polygone
Polygone(Args &&... args)
Definition
polygone.hpp:19
xcal::mobject::Polygone::~Polygone
~Polygone() override=default
xcal::mobject::Polygone::set_points
void set_points(const property::PositionList::data_t &points)
Definition
polygone.hpp:28
xcal::mobject::Polygone::points
const property::PositionList::data_t & points() const
Definition
polygone.hpp:25
xcal::mobject::Polygone::Polygone
Polygone()
Definition
polygone.hpp:16
xcal::property::_PositionList
Definition
position_list.hpp:11
xcal::property::_PositionList::data_t
std::vector< __ItemType > data_t
Definition
position_list.hpp:15
xcal::property::_PositionList::positions
const std::vector< __ItemType > & positions() const
Definition
position_list.hpp:29
xcal::property::_PositionList::closed
const Proxy< bool_t > & closed() const
Definition
position_list.hpp:27
composedmobject.hpp
mobject.hpp
基础图形对象类
XCAL_MOBJECT_TYPE
#define XCAL_MOBJECT_TYPE(type)
Definition
mobject_types.hpp:25
xcal::mobject
Definition
abs_mgroup.hpp:14
position_list.hpp
XCAL_API
#define XCAL_API
Definition
public.h:69
生成于 2025年 九月 19日 星期五 21:12:12 , 为 xcal使用
1.9.8