如题
离线
剪切域是为了控件更新时知道哪些区域需要重绘,而不需要屏幕全部重绘。比如一个button没有被挡住,那么它的剪切域就是自己的rectangle。如果被其它控件挡住,那么就会是几个rectangle的合并区域,通常用链表方式表示。
现在流行用immediate draw方式,像游戏一样刷屏,这样就不需要剪切域了,不过绘图任务重。
个人趋向于第二种,因为剪切域的处理比较复杂,对异形窗口和控件以及高级透明效果比较难实现。
不太确定现代UI比如安卓和iOS怎么实现的
离线
同意楼上的朋友。
反正就是找出窗口看见的部分.
离线
剪切域就是窗口被挡住剩下的区域(即剪切域,也就是可见区域)
离线
上面是 剪切域计算完整代码
形象的说法就是好像被剪掉了一样,剪掉之后的区域
通常以矩形链表示
离线