跳到主要内容

脏矩形 (dirty-rectangle)

跟踪需要更新的区域,优化增量渲染。

结构体

struct dirtylist_item_t {
struct region_t region;
int area;
};

struct dirtylist_t {
struct dirtylist_item_t * items;
unsigned int size;
unsigned int count;
};

API

函数说明
dirtylist_alloc(size)分配脏矩形列表
dirtylist_free(l)释放
dirtylist_clone(l, o)克隆
dirtylist_merge(l, o)合并
dirtylist_clear(l)清空
dirtylist_add(l, r)添加脏区域

说明

脏矩形列表按区域面积降序排列,用于跟踪需要重绘的区域。合并操作会合并两个列表,清空前先排序以便快速去重。