Lines Matching refs:subset
182 sk_sp<SkImage> SkImage::makeSubset(const SkIRect& subset, GrDirectContext* direct) const {
183 if (subset.isEmpty()) {
188 if (!bounds.contains(subset)) {
200 // optimization : return self if the subset == our bounds
201 if (bounds == subset) {
205 return as_IB(this)->onMakeSubset(subset, direct);
317 const SkRect* subset,
329 return this->onAsFragmentProcessor(rContext, sampling, tileModes, m, subset, domain);
339 const SkRect* subset,
348 if (subset) {
355 *subset,
366 *subset,
384 if (subset) {
390 *subset,
398 *subset,
511 const SkIRect& subset, const SkIRect& clipBounds,
514 if (!filter || !outSubset || !offset || !this->bounds().contains(subset)) {
523 srcSpecialImage = SkSpecialImage::MakeFromImage(rContext, subset,
527 srcSpecialImage = SkSpecialImage::MakeFromImage(nullptr, subset,
539 // subset's top left corner. But the clip bounds and any crop rects on the filters are in the
542 SkImageFilter_Base::Context context(SkMatrix::Translate(-subset.x(), -subset.y()),
543 clipBounds.makeOffset(-subset.topLeft()),
552 // The output image and offset are relative to the subset rectangle, so the offset needs to
554 offset->fX += subset.x();
555 offset->fY += subset.y();
560 // result->subset() ensures that the result's image pixel origin does not affect results.
561 SkIRect dstRect = result->subset();
563 if (!clippedDstRect.intersect(clipBounds.makeOffset(result->subset().topLeft() - *offset))) {