Lines Matching refs:srcBounds

102         const SkIRect& srcBounds,
134 auto conv = GrMatrixConvolutionEffect::Make(rContext, std::move(srcView), srcBounds,
155 SkIRect srcBounds,
165 // Logically we're creating an infinite blur of 'srcBounds' of 'srcView' with 'mode' tiling
186 srcBounds.contains(srcBackingBounds) &&
191 convolve_gaussian_1d(dstSDC.get(), std::move(srcView), srcBounds,
196 // 'left' and 'right' are the sub rects of 'srcBounds' where 'mode' must be enforced.
198 // edge of 'srcBounds'.
200 // 'top' and 'bottom' are areas of 'dstBounds' that are entirely above/below 'srcBounds'.
201 // These are areas that we can simply clear in the dst in kDecal mode. If 'srcBounds'
208 top = {dstBounds.left(), dstBounds.top() , dstBounds.right(), srcBounds.top() };
209 bottom = {dstBounds.left(), srcBounds.bottom(), dstBounds.right(), dstBounds.bottom()};
211 // Inset for sub-rect of 'srcBounds' where the x-dir kernel doesn't reach the edges, clipped
213 int midA = std::max(srcBounds.top() , dstBounds.top() );
214 int midB = std::min(srcBounds.bottom(), dstBounds.bottom());
215 mid = {srcBounds.left() + radius, midA, srcBounds.right() - radius, midB};
227 top = {dstBounds.left(), dstBounds.top(), srcBounds.left() , dstBounds.bottom()};
228 bottom = {srcBounds.right(), dstBounds.top(), dstBounds.right(), dstBounds.bottom()};
230 int midA = std::max(srcBounds.left() , dstBounds.left() );
231 int midB = std::min(srcBounds.right(), dstBounds.right());
232 mid = {midA, srcBounds.top() + radius, midB, srcBounds.bottom() - radius};
245 convolve_gaussian_1d(dstSDC.get(), srcView, srcBounds, rtcToSrcOffset, rect,
306 const SkRect& srcBounds,
331 GrSamplerState::Filter::kLinear, srcBounds, srcBounds,
337 SkRect::Make(dstSize), srcBounds);
348 SkIRect srcBounds,
368 int srcH = srcBounds.height();
369 int srcTop = srcBounds.top();
382 (xPassDstBounds.bottom() - srcBounds.bottom())/floatH);
383 int bottomClip = srcBounds.bottom() + n*srcH;
388 if (xPassDstBounds.fBottom <= srcBounds.top()) {
392 xPassDstBounds.fTop = srcBounds.top();
394 } else if (xPassDstBounds.fTop >= srcBounds.bottom()) {
398 xPassDstBounds.fBottom = srcBounds.bottom();
401 xPassDstBounds.fTop = std::max(xPassDstBounds.fTop, srcBounds.top());
402 xPassDstBounds.fBottom = std::min(xPassDstBounds.fBottom, srcBounds.bottom());
404 int leftSrcEdge = srcBounds.fLeft - radiusX ;
405 int rightSrcEdge = srcBounds.fRight + radiusX;
431 rContext, std::move(srcView), srcColorType, srcAlphaType, srcBounds, xPassDstBounds,
439 srcBounds = SkIRect::MakeSize(xPassDstBounds.size());
446 return convolve_gaussian(rContext, std::move(srcView), srcColorType, srcAlphaType, srcBounds,
460 SkIRect srcBounds,
479 // Attempt to reduce the srcBounds in order to detect that we can set the sigmas to zero or
485 if (!intersection.intersect(reach, srcBounds)) {
489 if (reach.fLeft >= srcBounds.fRight) {
490 srcBounds.fLeft = srcBounds.fRight - 1;
491 } else if (reach.fRight <= srcBounds.fLeft) {
492 srcBounds.fRight = srcBounds.fLeft + 1;
494 if (reach.fTop >= srcBounds.fBottom) {
495 srcBounds.fTop = srcBounds.fBottom - 1;
496 } else if (reach.fBottom <= srcBounds.fTop) {
497 srcBounds.fBottom = srcBounds.fTop + 1;
501 srcBounds = intersection;
509 if (srcBounds.width() == 1) {
513 if (srcBounds.height() == 1) {
542 SkRect::Make(srcBounds),
559 return convolve_gaussian_2d(rContext, std::move(srcView), srcColorType, srcBounds,
566 std::move(colorSpace), srcBounds, dstBounds, sigmaX, sigmaY,
578 SkISize rescaledSize = {std::max(sk_float_floor2int(srcBounds.width() *scaleX), 1),
579 std::max(sk_float_floor2int(srcBounds.height()*scaleY), 1)};
582 scaleX = static_cast<float>(rescaledSize.width()) /srcBounds.width();
583 scaleY = static_cast<float>(rescaledSize.height())/srcBounds.height();
629 srcBounds,
657 float sLCol = srcBounds.left();
658 float sTRow = srcBounds.top();
659 float sRCol = srcBounds.right() - 1;
660 float sBRow = srcBounds.bottom() - 1;
662 int sx = srcBounds.left();
663 int sy = srcBounds.top();
664 int sw = srcBounds.width();
665 int sh = srcBounds.height();
698 SkRect scaledDstBounds = SkRect::Make(dstBounds.makeOffset(-srcBounds.topLeft()));