开源图形库Thor Vector Graphics:Scene类

本文详细介绍了Scene类,它是Paint类的子类,主要功能包括添加绘制元素、获取元素列表、清空元素(可选择释放内存)以及创建和识别实例。
摘要由CSDN通过智能技术生成

0. 简介

Scene类是Paint类的子类,命名于tvg命名空间。该类提供了一组用于管理场景中绘制元素的方法。

1. 成员函数

  • Result push(std::unique_ptr<Paint> paint) noexcept:向场景中添加绘制元素。
    • 使用方法:传入一个 Paint 对象的智能指针。
    • 注意事项:添加的绘制元素会被场景保留,直到调用 Scene::clear() 函数。
  • std::list<Paint*>& paints() noexcept:返回当前场景中所持有的绘制元素列表。
    • 使用方法:调用该函数以获取场景中的绘制元素列表。
    • 注意事项:在更新或绘制场景期间,请避免访问绘制元素,可以在调用 Canvas::sync() 后访问。
  • Result clear(bool free = true) noexcept:清空场景中的绘制元素。
    • 使用方法:调用该函数来清空场景中的绘制元素。
    • 注意事项:如果free参数设置为true,则释放所持有的绘制元素内存;否则,绘制元素内存不会被释放,需要调用者负责管理。
  • static std::unique_ptr<Scene> gen() noexcept:创建一个新的 Scene 对象。
    • 使用方法:调用该静态函数以创建一个新的Scene对象。
    • 注意事项:返回的对象需要由调用者持有和管理。
  • static uint32_t identifier() noexcept:返回Scene类的唯一标识符。
    • 使用方法:调用该静态函数以获取Scene类的标识符。
    • 注意事项:可用于识别 Scene类的具体类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值