22#ifndef SCRIPT_INTERFACE_SHAPES_SHAPE_UNION_HPP
23#define SCRIPT_INTERFACE_SHAPES_SHAPE_UNION_HPP
28#include <shapes/Union.hpp>
43 return m_core_shape->contains(
obj_ptr->shape());
46 m_core_shape->add(
obj_ptr->shape());
49 m_core_shape->remove(
obj_ptr->shape());
53 std::shared_ptr<::Shapes::Shape>
shape()
const override {
58 std::shared_ptr<::Shapes::Union> m_core_shape;
59 std::vector<std::shared_ptr<Shapes::Shape>> m_shapes;
Owning list of ObjectHandles.
void remove_in_core(const std::shared_ptr< Shape > &obj_ptr) override
bool has_in_core(const std::shared_ptr< Shape > &obj_ptr) const override
std::shared_ptr<::Shapes::Shape > shape() const override
void add_in_core(const std::shared_ptr< Shape > &obj_ptr) override
T get_value(Variant const &v)
Extract value of specific type T from a Variant.