Lines Matching defs:clip

239 void BakedOpRenderer::setupStencilRectList(const ClipBase* clip) {
240 LOG_ALWAYS_FATAL_IF(clip->mode != ClipMode::RectangleList, "can't rectlist clip without rectlist");
241 auto&& rectList = reinterpret_cast<const ClipRectList*>(clip)->rectList;
252 bounds.doIntersect(clip->rect);
273 void BakedOpRenderer::setupStencilRegion(const ClipBase* clip) {
274 LOG_ALWAYS_FATAL_IF(clip->mode != ClipMode::Region, "can't region clip without region");
275 auto&& region = reinterpret_cast<const ClipRegion*>(clip)->region;
278 SkRegion::Cliperator it(region, clip->rect.toSkIRect());
290 void BakedOpRenderer::prepareRender(const Rect* dirtyBounds, const ClipBase* clip) {
292 mRenderState.scissor().setEnabled(clip != nullptr);
293 if (clip) {
294 mRenderState.scissor().set(mRenderTarget.viewportHeight, clip->rect);
300 if (CC_UNLIKELY(clip && clip->mode != ClipMode::Rectangle)) {
303 if (mRenderTarget.lastStencilClip != clip) {
305 mRenderTarget.lastStencilClip = clip;
317 if (clip->mode == ClipMode::RectangleList) {
318 setupStencilRectList(clip);
320 setupStencilRegion(clip);
326 if (CC_LIKELY(clip->mode == ClipMode::RectangleList)) {
327 auto&& rectList = reinterpret_cast<const ClipRectList*>(clip)->rectList;
333 // either scissor or no clip, so disable stencil test
344 void BakedOpRenderer::renderGlopImpl(const Rect* dirtyBounds, const ClipBase* clip,
346 prepareRender(dirtyBounds, clip);
355 auto&& clip = state.computedState.clipRect();
356 info.clipLeft = clip.left;
357 info.clipTop = clip.top;
358 info.clipRight = clip.right;
359 info.clipBottom = clip.bottom;