5#include "webcface/common/webcface-config.h"
31 : type(type), properties(properties) {}
33 : type(type), properties(std::move(properties)) {}
43 typename GeometryDerived,
44 std::enable_if_t<std::is_constructible_v<GeometryDerived, Geometry &>,
45 std::nullptr_t> =
nullptr>
46 GeometryDerived
as()
const {
47 return GeometryDerived{*
this};
TemporalGeometry line(const Point &begin, const Point &end)
Definition components.h:399
TemporalGeometry rect(const Point &origin, double width, double height)
Definition components.h:468
TemporalGeometry circle(const Transform &origin, double radius)
Definition components.h:524
TemporalGeometry cylinder(const Transform &origin, double radius, double length)
Definition components.h:552
TemporalGeometry plane(const Transform &origin, double width, double height)
Definition components.h:460
TemporalGeometry polygon(const std::vector< Point > &points)
Definition components.h:422
TemporalGeometry box(const Point &vertex1, const Point &vertex2)
Definition components.h:502
TemporalGeometry sphere(const Point &origin, double radius)
Definition components.h:573
GeometryType
Canvas3Dと2Dで共用、図形の種類を表す
Definition geometry.h:15
Geometry(GeometryType type, const std::vector< double > &properties)
Definition geometry.h:30
std::vector< double > properties
Definition geometry.h:28
GeometryDerived as() const
各種Geometry型に変換
Definition geometry.h:46
bool operator!=(const Geometry &other) const
Definition geometry.h:53
bool operator==(const Geometry &other) const
Definition geometry.h:50
Geometry(GeometryType type, std::vector< double > &&properties)
Definition geometry.h:32
GeometryType type
Definition geometry.h:27
Geometry()
Definition geometry.h:29
#define WEBCFACE_NS_END
Definition webcface-config.h:104
#define WEBCFACE_NS_BEGIN
Definition webcface-config.h:103