#pragma once #include #include namespace internal { struct sphere_t final : primitive { void initialize(primitive_data_center_t &) override; void destroy() override; primitive_type get_type() const override { return PRIMITIVE_TYPE_SPHERE; }; marked_subface_ptr_t sphere_face{}; protected: void initialize(primitive_data_center_t &, const std::vector> &) override; marked_subface_ptr_t *get_subface() const override { return (marked_subface_ptr_t *)(&sphere_face); } size_t get_subface_count() const override { return 1; } }; } // namespace internal